.elementor-63 .elementor-element.elementor-element-06e3565{--display:flex;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-63 .elementor-element.elementor-element-82c06b2{--display:flex;}.elementor-63 .elementor-element.elementor-element-2363ae0 iframe{height:800px;}@media(min-width:768px){.elementor-63 .elementor-element.elementor-element-06e3565{--content-width:1920px;}.elementor-63 .elementor-element.elementor-element-82c06b2{--content-width:1920px;}}/* Start custom CSS for text-editor, class: .elementor-element-e323d90 *//* =========================================================
   JUPI RENT
   STRONA KONTAKTOWA
   ELEMENTOR / MOBILE FIRST / FULL HD 1920
   ========================================================= */

.jupi-contact {
    --jc-yellow: #f5b800;
    --jc-gold: #b88b22;
    --jc-black: #111111;
    --jc-dark: #171717;
    --jc-dark-2: #202020;
    --jc-white: #ffffff;
    --jc-bg: #f5f5f2;
    --jc-card: #ffffff;
    --jc-text: #242424;
    --jc-muted: #696969;
    --jc-border: #e6e6e1;

    width: 100%;

    padding: 16px;

    font-family:
        Inter,
        system-ui,
        -apple-system,
        BlinkMacSystemFont,
        "Segoe UI",
        sans-serif;

    color: var(--jc-text);

    background: var(--jc-bg);
}

.jupi-contact *,
.jupi-contact *::before,
.jupi-contact *::after {
    box-sizing: border-box;
}


/* =========================================================
   GŁÓWNY WRAPPER
   ========================================================= */

.jupi-contact-shell {
    width: 100%;
    max-width: 1760px;

    margin: 0 auto;
}


/* =========================================================
   HERO
   ========================================================= */

.jupi-contact-hero {
    position: relative;

    display: grid;
    grid-template-columns: 1fr;

    gap: 24px;

    padding: 32px 24px;

    overflow: hidden;

    border-radius: 26px;

    background:
        radial-gradient(
            circle at 90% 10%,
            rgba(245, 184, 0, .16),
            transparent 30%
        ),
        linear-gradient(
            135deg,
            #101010 0%,
            #1a1a1a 55%,
            #242424 100%
        );

    color: #ffffff;

    box-shadow:
        0 24px 70px rgba(0, 0, 0, .13);
}

.jupi-contact-hero::before {
    content: "";

    position: absolute;

    width: 320px;
    height: 320px;

    right: -150px;
    top: -150px;

    border: 55px solid rgba(245, 184, 0, .045);
    border-radius: 50%;
}

.jupi-contact-hero-copy,
.jupi-contact-hero-badge {
    position: relative;
    z-index: 2;
}


/* =========================================================
   KICKER
   ========================================================= */

.jupi-contact-kicker {
    display: inline-flex;

    align-items: center;

    gap: 8px;

    margin-bottom: 16px;

    padding: 7px 12px;

    border-radius: 999px;

    background: rgba(245, 184, 0, .12);

    color: #d2a323;

    font-size: 11px;
    font-weight: 800;

    line-height: 1;

    letter-spacing: .11em;

    text-transform: uppercase;
}

.jupi-contact-kicker::before {
    content: "";

    width: 6px;
    height: 6px;

    border-radius: 50%;

    background: currentColor;
}


/* =========================================================
   TYPOGRAFIA
   ========================================================= */

.jupi-contact h1,
.jupi-contact h2,
.jupi-contact h3 {
    margin-top: 0;

    font-weight: 800;

    line-height: 1.08;

    letter-spacing: -.035em;
}

.jupi-contact h1 {
    max-width: 900px;

    margin-bottom: 20px;

    color: #ffffff;

    font-size: clamp(36px, 10vw, 52px);
}

.jupi-contact h2 {
    margin-bottom: 16px;

    color: var(--jc-black);

    font-size: clamp(30px, 8vw, 42px);
}

.jupi-contact p {
    margin-top: 0;

    font-size: 15px;
    line-height: 1.7;
}

.jupi-contact-hero-copy > p {
    max-width: 900px;

    color: rgba(255, 255, 255, .72);
}


/* =========================================================
   BUTTONY
   ========================================================= */

.jupi-contact-actions {
    display: flex;

    flex-direction: column;

    gap: 10px;

    margin-top: 26px;
}

.jupi-contact-btn {
    display: inline-flex;

    align-items: center;
    justify-content: center;

    gap: 9px;

    min-height: 52px;

    padding: 14px 20px;

    border-radius: 12px;

    font-size: 14px;
    font-weight: 800;

    line-height: 1.2;

    text-decoration: none;

    transition:
        transform .2s ease,
        box-shadow .2s ease,
        background-color .2s ease;
}

.jupi-contact-btn svg {
    width: 18px;
    height: 18px;

    fill: currentColor;
}

.jupi-contact-btn-primary {
    background: #f5b800;

    color: #111111;

    box-shadow:
        0 10px 28px rgba(245, 184, 0, .22);
}

.jupi-contact-btn-primary:hover {
    background: #ffd445;

    color: #111111;

    transform: translateY(-2px);
}

.jupi-contact-btn-secondary {
    border: 1px solid rgba(255, 255, 255, .12);

    background: rgba(255, 255, 255, .06);

    color: #ffffff;
}

.jupi-contact-btn-secondary:hover {
    background: rgba(255, 255, 255, .10);

    color: #ffffff;
}


/* =========================================================
   HERO BADGE
   ========================================================= */

.jupi-contact-hero-badge {
    display: flex;

    flex-direction: column;

    justify-content: center;

    padding: 24px;

    border: 1px solid rgba(255, 255, 255, .08);
    border-radius: 20px;

    background: rgba(255, 255, 255, .045);

    backdrop-filter: blur(10px);
}

.jupi-contact-badge-icon {
    display: flex;

    align-items: center;
    justify-content: center;

    width: 46px;
    height: 46px;

    margin-bottom: 18px;

    border-radius: 13px;

    background: rgba(245, 184, 0, .12);

    color: #f5b800;
}

.jupi-contact-badge-icon svg {
    width: 23px;
    height: 23px;

    fill: currentColor;
}

.jupi-contact-hero-badge > span {
    margin-bottom: 4px;

    color: rgba(255, 255, 255, .52);

    font-size: 12px;
    font-weight: 700;

    text-transform: uppercase;

    letter-spacing: .08em;
}

.jupi-contact-hero-badge strong {
    color: #ffffff;

    font-size: 20px;

    line-height: 1.35;
}

.jupi-contact-hero-badge p {
    margin:
        10px
        0
        0;

    color: rgba(255, 255, 255, .62);
}


/* =========================================================
   KARTY KONTAKTU
   ========================================================= */

.jupi-contact-grid {
    display: grid;

    grid-template-columns: 1fr;

    gap: 14px;

    margin-top: 18px;
}

.jupi-contact-card {
    min-width: 0;

    padding: 24px;

    border: 1px solid var(--jc-border);
    border-radius: 20px;

    background: var(--jc-card);

    box-shadow:
        0 12px 35px rgba(0, 0, 0, .055);

    transition:
        transform .2s ease,
        border-color .2s ease,
        box-shadow .2s ease;
}

.jupi-contact-card:hover {
    border-color: rgba(184, 139, 34, .35);

    transform: translateY(-3px);

    box-shadow:
        0 18px 42px rgba(0, 0, 0, .08);
}

.jupi-contact-card-icon {
    display: flex;

    align-items: center;
    justify-content: center;

    width: 46px;
    height: 46px;

    margin-bottom: 18px;

    border-radius: 13px;

    background: #f5f1e5;

    color: #9a761f;
}

.jupi-contact-card-icon svg {
    width: 22px;
    height: 22px;

    fill: currentColor;
}

.jupi-contact-card-label {
    display: block;

    margin-bottom: 5px;

    color: #8a8a8a;

    font-size: 12px;
    font-weight: 700;

    text-transform: uppercase;

    letter-spacing: .07em;
}

.jupi-contact-card-value {
    display: block;

    margin-bottom: 10px;

    color: var(--jc-black);

    font-size: 19px;
    font-weight: 800;

    line-height: 1.35;

    text-decoration: none;

    overflow-wrap: anywhere;
}

a.jupi-contact-card-value:hover {
    color: #9b761d;
}

.jupi-contact-card p {
    margin-bottom: 0;

    color: var(--jc-muted);
}


/* =========================================================
   DANE FIRMY
   ========================================================= */

.jupi-contact-company {
    margin-top: 18px;

    padding: 30px 24px;

    border: 1px solid var(--jc-border);
    border-radius: 24px;

    background: #ffffff;
}

.jupi-contact-company-head {
    max-width: 900px;

    margin-bottom: 28px;
}

.jupi-contact-company-head p {
    margin-bottom: 0;

    color: var(--jc-muted);
}

.jupi-contact-company-grid {
    display: grid;

    grid-template-columns: 1fr;

    gap: 10px;
}

.jupi-contact-data {
    padding: 18px;

    border: 1px solid #ecece8;
    border-radius: 15px;

    background: #f8f8f6;
}

.jupi-contact-data span {
    display: block;

    margin-bottom: 5px;

    color: #888888;

    font-size: 11px;
    font-weight: 700;

    letter-spacing: .05em;

    text-transform: uppercase;
}

.jupi-contact-data strong {
    display: block;

    color: #1b1b1b;

    font-size: 15px;
    font-weight: 750;

    line-height: 1.5;
}

.jupi-contact-data strong a {
    color: inherit;

    text-decoration: none;
}

.jupi-contact-data strong a:hover {
    color: #9a751b;
}

.jupi-contact-data strong .jupi-contact-separator {
    display: inline;

    margin:
        0
        6px;

    color: #b88b22;
}


/* =========================================================
   USŁUGI
   ========================================================= */

.jupi-contact-services {
    display: grid;

    grid-template-columns: 1fr;

    gap: 28px;

    margin-top: 18px;

    padding: 30px 24px;

    border-radius: 24px;

    background:
        linear-gradient(
            135deg,
            #f3f3ef,
            #ffffff
        );
}

.jupi-contact-services-copy {
    max-width: 750px;
}

.jupi-contact-services-copy p {
    margin-bottom: 0;

    color: var(--jc-muted);
}

.jupi-contact-service-list {
    display: grid;

    grid-template-columns: 1fr;

    gap: 9px;
}

.jupi-contact-service {
    display: flex;

    align-items: center;

    gap: 11px;

    min-height: 50px;

    padding: 12px 15px;

    border: 1px solid #e7e7e2;
    border-radius: 12px;

    background: rgba(255, 255, 255, .72);

    color: #323232;

    font-size: 14px;
    font-weight: 650;
}

.jupi-contact-service-dot {
    flex: 0 0 auto;

    width: 8px;
    height: 8px;

    border-radius: 50%;

    background: #b88b22;
}


/* =========================================================
   FINAL CTA
   ========================================================= */

.jupi-contact-final {
    display: grid;

    grid-template-columns: 1fr;

    gap: 26px;

    margin-top: 18px;

    padding: 30px 24px;

    border-radius: 24px;

    background:
        linear-gradient(
            135deg,
            #f5b800 0%,
            #ffd74a 100%
        );

    color: #111111;
}

.jupi-contact-final .jupi-contact-kicker {
    background: rgba(17, 17, 17, .08);

    color: #111111;
}

.jupi-contact-final h2 {
    color: #111111;
}

.jupi-contact-final p {
    max-width: 800px;

    margin-bottom: 0;

    color: rgba(17, 17, 17, .68);
}

.jupi-contact-final-actions {
    display: flex;

    flex-direction: column;

    justify-content: center;

    gap: 12px;
}

.jupi-contact-btn-dark {
    background: #111111;

    color: #ffffff;

    box-shadow:
        0 12px 28px rgba(0, 0, 0, .16);
}

.jupi-contact-btn-dark:hover {
    background: #242424;

    color: #ffffff;

    transform: translateY(-2px);
}

.jupi-contact-mail {
    color: #111111;

    font-size: 14px;
    font-weight: 750;

    text-align: center;

    text-decoration: none;
}

.jupi-contact-mail:hover {
    text-decoration: underline;
}


/* =========================================================
   TABLET
   ========================================================= */

@media (min-width: 640px) {

    .jupi-contact {
        padding: 24px;
    }

    .jupi-contact-hero {
        padding: 42px 36px;
    }

    .jupi-contact-actions {
        flex-direction: row;
        flex-wrap: wrap;
    }

    .jupi-contact-grid {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));
    }

    .jupi-contact-card:last-child {
        grid-column: 1 / -1;
    }

    .jupi-contact-company {
        padding: 38px 34px;
    }

    .jupi-contact-company-grid {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));
    }

    .jupi-contact-data-wide {
        grid-column: 1 / -1;
    }

    .jupi-contact-service-list {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));
    }

    .jupi-contact-services,
    .jupi-contact-final {
        padding: 38px 34px;
    }

}


/* =========================================================
   TABLET POZIOMO
   ========================================================= */

@media (min-width: 900px) {

    .jupi-contact-hero {
        grid-template-columns:
            minmax(0, 1.5fr)
            minmax(300px, .5fr);

        align-items: stretch;

        gap: 40px;
    }

    .jupi-contact-grid {
        grid-template-columns:
            repeat(3, minmax(0, 1fr));

        gap: 18px;
    }

    .jupi-contact-card:last-child {
        grid-column: auto;
    }

    .jupi-contact-services {
        grid-template-columns:
            minmax(0, .85fr)
            minmax(0, 1.15fr);

        align-items: center;
    }

    .jupi-contact-final {
        grid-template-columns:
            minmax(0, 1.4fr)
            minmax(280px, .6fr);

        align-items: center;
    }

}


/* =========================================================
   DESKTOP
   ========================================================= */

@media (min-width: 1200px) {

    .jupi-contact {
        padding:
            32px
            48px
            50px;
    }

    .jupi-contact-hero {
        padding: 58px 52px;

        border-radius: 30px;
    }

    .jupi-contact h1 {
        font-size: 62px;
    }

    .jupi-contact h2 {
        font-size: 46px;
    }

    .jupi-contact p {
        font-size: 16px;
    }

    .jupi-contact-grid,
    .jupi-contact-company,
    .jupi-contact-services,
    .jupi-contact-final {
        margin-top: 22px;
    }

    .jupi-contact-card {
        padding: 30px;
    }

    .jupi-contact-company {
        padding: 48px;
    }

    .jupi-contact-company-grid {
        grid-template-columns:
            repeat(4, minmax(0, 1fr));

        gap: 12px;
    }

    .jupi-contact-data-wide {
        grid-column: span 2;
    }

    .jupi-contact-services {
        padding: 48px;
    }

    .jupi-contact-final {
        padding: 48px;
    }

}


/* =========================================================
   LARGE DESKTOP / 1440+
   ========================================================= */

@media (min-width: 1440px) {

    .jupi-contact {
        padding:
            40px
            64px
            60px;
    }

    .jupi-contact-hero {
        padding: 64px 60px;
    }

    .jupi-contact h1 {
        font-size: 68px;
    }

    .jupi-contact h2 {
        font-size: 50px;
    }

    .jupi-contact-grid {
        gap: 22px;
    }

    .jupi-contact-card {
        padding: 34px;
    }

}


/* =========================================================
   FULL HD
   ========================================================= */

@media (min-width: 1680px) {

    .jupi-contact {
        padding:
            48px
            80px
            70px;
    }

    .jupi-contact-hero {
        padding: 72px 68px;
    }

    .jupi-contact h1 {
        font-size: 74px;
    }

    .jupi-contact h2 {
        font-size: 54px;
    }

    .jupi-contact-hero-copy > p {
        font-size: 18px;
    }

    .jupi-contact-card {
        min-height: 250px;

        padding: 38px;
    }

    .jupi-contact-card-value {
        font-size: 22px;
    }

    .jupi-contact-company,
    .jupi-contact-services,
    .jupi-contact-final {
        padding: 56px;
    }

    .jupi-contact-data {
        padding: 22px;
    }

    .jupi-contact-data strong {
        font-size: 16px;
    }

}


/* =========================================================
   1920+
   ========================================================= */

@media (min-width: 1920px) {

    .jupi-contact {
        padding-left: 80px;
        padding-right: 80px;
    }

    .jupi-contact-shell {
        width: 1760px;
        max-width: 1760px;
    }

}


/* =========================================================
   MAŁE TELEFONY
   ========================================================= */

@media (max-width: 380px) {

    .jupi-contact {
        padding: 10px;
    }

    .jupi-contact-hero,
    .jupi-contact-company,
    .jupi-contact-services,
    .jupi-contact-final {
        padding:
            26px
            19px;
    }

    .jupi-contact-card {
        padding: 20px;
    }

    .jupi-contact h1 {
        font-size: 33px;
    }

    .jupi-contact h2 {
        font-size: 29px;
    }

    .jupi-contact-btn {
        padding-left: 15px;
        padding-right: 15px;

        font-size: 13px;
    }

}


/* =========================================================
   REDUCED MOTION
   ========================================================= */

@media (prefers-reduced-motion: reduce) {

    .jupi-contact-card,
    .jupi-contact-btn {
        transition: none !important;
        transform: none !important;
    }

}/* End custom CSS */
/* Start custom CSS for google_maps, class: .elementor-element-2363ae0 *//* =========================================================
   JUPI RENT
   GOOGLE MAPS / ELEMENTOR
   MOBILE FIRST / TABLET / DESKTOP / 1920
   ========================================================= */

/* GŁÓWNY KONTENER MAPY */
.elementor-element-82c06b2 {
    width: 100% !important;

    margin: 0 !important;

    padding:
        16px
        16px
        28px !important;

    background: #f5f5f2;
}


/* =========================================================
   INNER
   ========================================================= */

.elementor-element-82c06b2 > .e-con-inner {
    position: relative;

    width: 100% !important;
    max-width: 1760px !important;

    margin: 0 auto !important;
    padding: 0 !important;
}


/* =========================================================
   WIDGET GOOGLE MAPS
   ========================================================= */

.elementor-element-82c06b2
.elementor-element-2363ae0 {
    position: relative;

    width: 100% !important;

    margin: 0 !important;

    overflow: hidden;

    border:
        1px solid rgba(17, 17, 17, 0.09);

    border-radius: 22px;

    background: #ffffff;

    box-shadow:
        0 18px 50px rgba(0, 0, 0, 0.08);
}


/* delikatny akcent Jupi Rent */

.elementor-element-82c06b2
.elementor-element-2363ae0::before {
    content: "";

    position: absolute;

    top: 0;
    left: 50%;

    z-index: 3;

    width: 90px;
    height: 3px;

    border-radius: 0 0 20px 20px;

    background: #b88b22;

    transform: translateX(-50%);

    pointer-events: none;
}


/* =========================================================
   EMBED
   ========================================================= */

.elementor-element-82c06b2
.elementor-custom-embed {
    position: relative;

    width: 100%;

    height: 380px;

    overflow: hidden;

    border-radius: inherit;

    background: #ececea;
}


/* =========================================================
   IFRAME
   ========================================================= */

.elementor-element-82c06b2
.elementor-custom-embed iframe {
    display: block;

    width: 100% !important;
    height: 100% !important;

    min-height: 380px;

    margin: 0 !important;

    padding: 0 !important;

    border: 0 !important;

    border-radius: inherit;

    filter:
        saturate(.82)
        contrast(.96);

    transition:
        filter .3s ease;
}


/* lekko bardziej naturalna mapa po najechaniu */

.elementor-element-82c06b2
.elementor-element-2363ae0:hover
iframe {
    filter:
        saturate(1)
        contrast(1);
}


/* =========================================================
   TELEFONY
   ========================================================= */

@media (max-width: 479px) {

    .elementor-element-82c06b2 {
        padding:
            10px
            10px
            22px !important;
    }

    .elementor-element-82c06b2
    .elementor-element-2363ae0 {
        border-radius: 18px;
    }

    .elementor-element-82c06b2
    .elementor-custom-embed {
        height: 350px;
    }

    .elementor-element-82c06b2
    .elementor-custom-embed iframe {
        min-height: 350px;
    }

}


/* =========================================================
   TABLET
   ========================================================= */

@media (min-width: 640px) {

    .elementor-element-82c06b2 {
        padding:
            20px
            24px
            36px !important;
    }

    .elementor-element-82c06b2
    .elementor-custom-embed {
        height: 430px;
    }

    .elementor-element-82c06b2
    .elementor-custom-embed iframe {
        min-height: 430px;
    }

}


/* =========================================================
   TABLET POZIOMO
   ========================================================= */

@media (min-width: 900px) {

    .elementor-element-82c06b2 {
        padding:
            24px
            32px
            42px !important;
    }

    .elementor-element-82c06b2
    .elementor-element-2363ae0 {
        border-radius: 24px;
    }

    .elementor-element-82c06b2
    .elementor-custom-embed {
        height: 470px;
    }

    .elementor-element-82c06b2
    .elementor-custom-embed iframe {
        min-height: 470px;
    }

}


/* =========================================================
   DESKTOP
   ========================================================= */

@media (min-width: 1200px) {

    .elementor-element-82c06b2 {
        padding:
            28px
            48px
            52px !important;
    }

    .elementor-element-82c06b2
    .elementor-element-2363ae0 {
        border-radius: 26px;

        box-shadow:
            0 22px 60px rgba(0, 0, 0, 0.09);
    }

    .elementor-element-82c06b2
    .elementor-custom-embed {
        height: 500px;
    }

    .elementor-element-82c06b2
    .elementor-custom-embed iframe {
        min-height: 500px;
    }

}


/* =========================================================
   DUŻY DESKTOP
   ========================================================= */

@media (min-width: 1440px) {

    .elementor-element-82c06b2 {
        padding:
            32px
            64px
            60px !important;
    }

    .elementor-element-82c06b2
    .elementor-custom-embed {
        height: 540px;
    }

    .elementor-element-82c06b2
    .elementor-custom-embed iframe {
        min-height: 540px;
    }

}


/* =========================================================
   FULL HD 1680+
   ========================================================= */

@media (min-width: 1680px) {

    .elementor-element-82c06b2 {
        padding:
            36px
            80px
            70px !important;
    }

    .elementor-element-82c06b2
    .elementor-custom-embed {
        height: 580px;
    }

    .elementor-element-82c06b2
    .elementor-custom-embed iframe {
        min-height: 580px;
    }

}


/* =========================================================
   1920+
   ========================================================= */

@media (min-width: 1920px) {

    .elementor-element-82c06b2 > .e-con-inner {
        width: 1760px !important;
        max-width: 1760px !important;
    }

}


/* =========================================================
   REDUCED MOTION
   ========================================================= */

@media (prefers-reduced-motion: reduce) {

    .elementor-element-82c06b2 iframe {
        transition: none !important;
    }

}/* End custom CSS */