:root {
    font-size: 16px;

    --jazz_navy: #0D1B2A;
    --jazz_dark: #07101A;
    --jazz_steel: #415A77;
    --jazz_gold: #D4A017;
    --jazz_blue: #00D2FF;
    --jazz_ivory: #F5F3EC;

    --jazz_navy_75: rgba(13,27,42,.75);

    --cf7_danger: #dc3232;
    --cf7_danger_10: #fbeaea;
    
    --cf7_warning: #ffb900;
    --cf7_warning_10: #fff8e5;

    --cf7_success: #46b450;
    --cf7_success_10: #ecf7ed;

    --parameters: cubic-bezier(.22, 1, .36, 1);
    --jazz_gradient: 270deg, #F2C94C 0%, #D4A017 100%;
}

body { font-family: 'Inter', sans-serif !important; font-variant-ligatures: none; font-optical-sizing: auto; font-weight: 400 !important; font-style: normal; color: var(--jazz_ivory) !important; line-height: 1.65 !important; }

h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 { font-variant-ligatures: none; font-optical-sizing: auto; font-style: normal; margin-bottom: 1rem !important; }

h1, .h1 { font-size: 1.875rem !important; font-family: 'Playfair Display', serif; font-weight: 400 !important; }

h2, .h2 { font-size: 2.375rem !important; font-family: 'Playfair Display', serif; font-weight: 400 !important; }

h3, .h3 { font-size: 1.5rem !important; font-family: 'Inter', sans-serif; font-weight: 700 !important; }

img,
video,
button,
.my-btn,
.carousel .carousel-control-prev,
.carousel .carousel-control-next { user-select: none; -webkit-user-select: none; }

img,
a { -webkit-user-drag: none; }

a,
a::after,
img,
span,
button,
.my-btn::after,
.segments > .segment .ratio.ratio-1x1[data-interactive]::after,
.segments > .segment .ratio.ratio-1x1[data-interactive] h2,
.segments > .segment .ratio.ratio-1x1[data-interactive] h2 a,
#masthead { transition:
    width .6s var(--parameters),
    height .6s var(--parameters),
    color .6s var(--parameters),
    border-color .6s var(--parameters),
    text-indent .6s var(--parameters),
    text-decoration .6s var(--parameters),
    transform .6s var(--parameters),
    box-shadow .6s var(--parameters),
    opacity .6s var(--parameters);
}

.post, .page,
#primary > article .description blockquote > :last-child,
.description > :last-child { margin-bottom: 0 !important; }

article[id] div[id] { scroll-margin-top: 86.25px; }

.background { background-position: center; background-repeat: no-repeat; background-size: cover; }

.background.bottom { background-position: center bottom; }

.background.contain { background-size: contain; }

.background.fixed { background-attachment: fixed; }

.background.auto { background-size: auto; }

.text-shadow_flat { text-shadow: -1px -1px 1px rgba(255,255,255,.1), 1px 1px 1px rgba(0,0,0,.5); }

.bg-jazz_dark { background-color: var(--jazz_dark) !important; }

/* 16px (desktop) */
/* .my-btn { font-size: .889rem; } */

/* 58px (desktop) */
/* h1, .h1 { font-size: 3.222rem !important; } */

.my-btn,
b, strong { font-weight: 700 !important; }

.my-btn,
.my-btn > span { position: relative; }

.my-btn { background: linear-gradient(var(--jazz_gradient)) !important; border: 2px solid var(--jazz_gold) !important; color: var(--jazz_navy) !important; text-decoration: none; display: inline-flex; justify-content: center; align-items: center; padding: .625rem 1.625rem; overflow: hidden; height: 51px; font-size: .875rem; }

.my-btn.my-btn-light { background: transparent !important; border-color: var(--jazz_ivory) !important; color: var(--jazz_ivory) !important; }

.my-btn.rounded-pill { min-width: 154px !important; height: 33px; padding: 0; font-size: .875rem; }

.my-btn > span { text-align: center; z-index: 1; }

.my-btn::after { content: ''; display: block; height: 100%; position: absolute; left: 0; top: 0; background-color: var(--jazz_ivory); }

.my-btn::after,
.my-btn:disabled:hover::after,
.my-btn:disabled:focus::after { width: 0; }

.my-btn:disabled { background: var(--jazz_steel) !important; border-color: var(--jazz_steel) !important; }

.cta[data-type] > .my-btn::before { content: ''; z-index: 1; display: inline-block; width: 39px; height: 38px; margin-right: .375rem; }

.cta[data-type = "sim"] > .my-btn::before { background: url('../img/ico-sim.webp') center / contain no-repeat; margin-left: -9px; }

.cta[data-type = "mic"] > .my-btn::before { background: url('../img/ico-mic.webp') center / contain no-repeat; margin-left: -5px; }

.my-btn,
.my-btn:hover::after,
.my-btn:focus-visible::after { width: 100%; }

.my-btn:hover,
.my-btn:focus-visible { border-color: var(--jazz_ivory); }

.my-btn.my-btn-light:hover,
.my-btn.my-btn-light:focus-visible { color: var(--jazz_navy) !important; }

#masthead { position: sticky; width: 100%; height: 115px; left: 0; top: 0; z-index: 2; background-color: var(--jazz_navy_75); backdrop-filter: blur(15px); }

#masthead.shrink { height: 86.25px; }

#masthead .site-branding img,
#masthead.shrink .site-branding img { width: 187px; }

#masthead #site-navigation { font-size: 1.125rem; font-weight: 500; }

#masthead #site-navigation .menu-item:not(:last-child) { margin-right: 2.25rem; }

#masthead #site-navigation .menu-item > a { color: var(--jazz_ivory); }

#masthead #site-navigation .menu-item.active > a,
#masthead #site-navigation .menu-item > a:hover,
#masthead #site-navigation .menu-item > a:focus-visible { color: var(--jazz_gold); }

#hero { position: relative; overflow: hidden; aspect-ratio: 1920 / 973; min-height: 502.717px; max-height: 973px; /* height: calc(100svh - 268.9px - 115px); */ margin: 0 auto; }

#hero::after { content: ''; background: linear-gradient(90deg, #0D1B2A 0%, #1B263B 100%); mix-blend-mode: hard-light; }

#hero::after,
video { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center; pointer-events: none; }

#hero .wrapper { position: relative; z-index: 1; font-size: 1rem; line-height: 1.8 !important; }

#hero .wrapper h1,
#hero .wrapper .h1 { line-height: 1.35 !important; }

#hero > .wrapper > .container { height: 100%; }

.jazz-widget {
	position: relative;
	display: block;
    overflow: hidden;
}

.jazz-widget::after {
	content: '';

	position: absolute;
	top: 50%;
	left: 50%;
	z-index: 1;

	width: min(180px, 42vw);
	aspect-ratio: 1;

	background: url('../img/play-widget.webp') center / contain no-repeat;

	transform: translate(-50%, -50%) scale(1);

	transition:
		transform .55s var(--parameters),
		filter .45s ease;

	pointer-events: none;
}

.jazz-widget::before {
	content: '';

	position: absolute;
	top: 50%;
	left: 50%;
	z-index: 1;

	width: min(180px, 42vw);
	aspect-ratio: 1;

	border: 2px solid rgba(255, 255, 255, .65);
	border-radius: 50%;

	transform: translate(-50%, -50%) scale(.72);
	opacity: 0;

	animation: widget-pulse 2.6s var(--parameters) infinite;

	pointer-events: none;
}

@keyframes widget-pulse {
	0% {
		transform: translate(-50%, -50%) scale(.72);
		opacity: 0;
	}

	15% {
		opacity: .75;
	}

	70%,
	100% {
		transform: translate(-50%, -50%) scale(1.5);
		opacity: 0;
	}
}

.jazz-widget img {
	display: block;

	transition:
		transform .8s var(--parameters),
		filter .5s ease;
}

/* Hover grafiki */

.jazz-widget:hover img,
.jazz-widget:focus-visible img {
	transform: scale(1.025);
	filter: brightness(.96);
}

/* Hover przycisku PLAY */

.jazz-widget:hover::after,
.jazz-widget:focus-visible::after {
	transform: translate(-50%, -50%) scale(1.08);

	filter:
		drop-shadow(0 10px 20px rgba(0, 0, 0, .12))
		drop-shadow(0 0 24px rgba(255, 255, 255, .35));
}

.jazz-widget:hover::before,
.jazz-widget:focus-visible::before {
	animation-duration: 1.7s;
}

.panels > .panel .wrapper { border-radius: 1.75rem; background-color: var(--jazz_dark); box-shadow: 1px -1px 2px 0 rgba(223, 186, 186, 0.25); }

.panels.reverse > .panel .wrapper { border-radius: 1rem; background-color: var(--jazz_navy); border: 4px solid transparent; }

.panels.reverse > .panel .wrapper.label { position: relative; background: linear-gradient(var(--jazz_navy), var(--jazz_navy)) padding-box, linear-gradient(var(--jazz_gradient)) border-box; }

.panels.reverse > .panel .wrapper.label::before { content: ''; position: absolute; right: 0; top: 0; width: 102px; height: 101px; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='102' height='101' viewBox='0 0 102 101' fill='none'%3E%3Cpath d='M102 101V55.5L47.5 0H0L102 101Z' fill='%23D4A017'/%3E%3C/svg%3E") center / contain no-repeat; }

.panels.reverse > .panel .wrapper.label::after { content: var(--label_content); position: absolute; right: var(--label_right); top: var(--label_top); text-transform: uppercase; color: var(--jazz_navy); font-size: .875rem; font-weight: 700; transform: rotate(45deg); }

.panels.reverse > .panel .wrapper .price { color: var(--jazz_steel); }

.panels.reverse > .panel .wrapper .price span.value { font-size: 2.5rem; font-weight: 700; color: var(--jazz_gold); }

.panels.reverse > .panel .wrapper .price .price-tabs { display: grid; }

.panels.reverse > .panel .wrapper .price .price-tab { grid-area: 1 / 1; opacity: 0; visibility: hidden; pointer-events: none; transition: opacity .25s ease, visibility 0s linear .25s; }

.panels.reverse > .panel .wrapper .price .price-tab.active { opacity: 1; visibility: visible; pointer-events: auto; transition: opacity .25s ease, visibility 0s linear 0s; }

.panels.reverse > .panel .wrapper .price .price-tab .disclaimer { color: var(--jazz_gold); font-weight: 700; }

.panels.reverse > .panel .wrapper .features.border-top { border-top-color: var(--jazz_gold) !important; }

.panels.reverse > .panel .wrapper .features > .feature { font-weight: 500; }

.panels.reverse > .panel .wrapper .promo { font-size: 1.25rem; color: var(--jazz_gold); }

.segments > .segment .ratio.ratio-1x1[data-interactive]::after { content: ''; display: block; width: 100%; height: 100%; position: absolute; inset: 0; background-color: #D9D9D9; opacity: .83; }

.segments > .segment .ratio.ratio-1x1[data-interactive] h2,
.segments > .segment .ratio.ratio-1x1[data-interactive] h2 a { color: var(--jazz_navy); text-decoration: none; }

.segments > .segment .ratio.ratio-1x1[data-interactive]:hover h2,
.segments > .segment .ratio.ratio-1x1[data-interactive]:focus-visible h2,
.segments > .segment .ratio.ratio-1x1[data-interactive]:hover h2 a,
.segments > .segment .ratio.ratio-1x1[data-interactive]:focus-visible h2 a,
.segments > .segment .ratio.ratio-1x1[data-interactive]:hover::after,
.segments > .segment .ratio.ratio-1x1[data-interactive]:focus-visible::after { opacity: 0; }

#separator .background { aspect-ratio: 1870 / 791; }

.modules > .module { height: 292px; }

.modules > .module .wrapper { border-radius: 1rem; background-color: var(--jazz_dark); background-blend-mode: soft-light; }

.modules > .module:nth-child(odd) .wrapper { background-image: url('../img/modules-odd.avif'); }

.modules > .module:nth-child(even) .wrapper { background-image: url('../img/modules-even.avif'); }

.supheading,
.modules > .module .wrapper .description { color: var(--jazz_blue); }

.modules > .module .wrapper h3,
.modules > .module .wrapper .h3 { font-size: 1.25rem !important; word-break: keep-all; }

.carousel .carousel-control-next,
.carousel .carousel-control-prev { width: auto; }

.carousel .carousel-control-prev .carousel-control-prev-icon { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='46' height='46' viewBox='0 0 46 46' fill='none'%3E%3Cpath d='M23 30.6665L15.3334 22.9998L23 15.3332M15.3334 22.9998L30.6667 22.9998M3.83335 22.9998C3.83335 12.4144 12.4146 3.83317 23 3.83317C33.5855 3.83317 42.1667 12.4144 42.1667 22.9998C42.1667 33.5853 33.5855 42.1665 23 42.1665C12.4146 42.1665 3.83335 33.5853 3.83335 22.9998Z' stroke='%23D4A017' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); width: 46px; height: 46px; margin-left: 24px; }

.carousel .carousel-control-next .carousel-control-next-icon { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='46' height='46' viewBox='0 0 46 46' fill='none'%3E%3Cpath d='M23 15.3335L30.6667 23.0002L23 30.6668M30.6667 23.0002L15.3334 23.0002M42.1667 23.0002C42.1667 33.5856 33.5855 42.1668 23 42.1668C12.4146 42.1668 3.83337 33.5856 3.83337 23.0002C3.83337 12.4147 12.4146 3.8335 23 3.8335C33.5855 3.8335 42.1667 12.4147 42.1667 23.0002Z' stroke='%23D4A017' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); width: 46px; height: 46px; margin-right: 24px; }

#primary > article .description h1:not(:first-child),
#primary > article .description h2:not(:first-child),
#primary > article .description h3:not(:first-child),
#primary > article .description h4:not(:first-child),
#primary > article .description h5:not(:first-child),
#primary > article .description h6:not(:first-child),
#primary > article .description .h1:not(:first-child),
#primary > article .description .h2:not(:first-child),
#primary > article .description .h3:not(:first-child),
#primary > article .description .h4:not(:first-child),
#primary > article .description .h5:not(:first-child),
#primary > article .description .h6:not(:first-child) { padding-top: 2rem; }

#primary > article .description h1,
#primary > article .description h2,
#primary > article .description h3,
#primary > article .description h4,
#primary > article .description h5,
#primary > article .description h6,
#primary > article .description .h1,
#primary > article .description .h2,
#primary > article .description .h3,
#primary > article .description .h4,
#primary > article .description .h5,
#primary > article .description .h6 { margin-bottom: 1rem; }

#primary > article .description ol,
#primary > article .description ul { margin-left: 0; padding-left: 1rem; }

#primary > article .description ol li::marker,
#primary > article .description ul li::marker { color: var(--jazz_gold); }

#primary > article .description a:not(.my-btn) { color: var(--jazz_gold); text-decoration: none; }

#primary > article .description a:not(.my-btn):hover,
#primary > article .description a:not(.my-btn):focus-visible { text-decoration: underline; }

.accordion .accordion-item h3.accordion-header .accordion-button,
#primary > article .description blockquote { color: var(--jazz_gold); font-family: 'Playfair Display', serif; font-weight: 400 !important; font-variant-ligatures: none; font-optical-sizing: auto; font-style: normal; font-size: 1.375rem; }

.accordion .accordion-item h3.accordion-header .accordion-button { box-shadow: none; }

.accordion .accordion-item h3.accordion-header .accordion-button::after { background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23D4A017' stroke-linecap='round' stroke-linejoin='round'%3e%3cpath d='m2 5 6 6 6-6'/%3e%3c/svg%3e"); }

.accordion .accordion-item { color: var(--jazz_ivory); }

.accordion .accordion-item.border-top { border-top-color: var(--jazz_steel) !important; }

.accordion .accordion-item.border-bottom { border-bottom-color: var(--jazz_steel) !important; }

#primary > article .wpcf7-form .col-12 label { font-weight: 700 !important; }

#primary > article .wpcf7-form .wpcf7-response-output,
#primary > article .wpcf7-form .wpcf7-not-valid-tip,
#primary > article .wpcf7-form label { font-size: .875rem !important; }

#primary > article .wpcf7-form .wpcf7-form-control:not([type = "submit"]) { border-radius: 10px; width: 100%; min-height: 60px; margin: .25rem 0; padding: .75rem 1rem; }

#primary > article .wpcf7-form textarea.wpcf7-form-control { margin-bottom: 0 !important; }

#primary > article .wpcf7-form .wpcf7-form-control.wpcf7-not-valid { background-color: var(--cf7_danger_10); border-color: var(--cf7_danger); }

#primary > article .wpcf7-form .wpcf7-form-control.wpcf7-acceptance { padding: 0; }

#primary > article .wpcf7-form .wpcf7-response-output { color: var(--jazz_navy); margin: 0; margin-top: 2.125rem; padding: 1.5rem 1rem; border: none; border-left-width: 4px; border-left-style: solid; }

#primary > article .wpcf7-form.failed .wpcf7-response-output { background-color: var(--cf7_danger_10); border-left-color: var(--cf7_danger); }

#primary > article .wpcf7-form.invalid .wpcf7-response-output { background-color: var(--cf7_warning_10); border-left-color: var(--cf7_warning); }

#primary > article .wpcf7-form.sent .wpcf7-response-output { background-color: var(--cf7_success_10); border-left-color: var(--cf7_success); }

#primary > article .wpcf7-form .col-12 label { text-indent: 1rem; }

#primary > article .wpcf7-form .aiowps-captcha-equation p { margin-bottom: 0; }

#primary > article .wpcf7-form label.disclaimer::before,
#primary > article .wpcf7-form label span.wpcf7-list-item-label::after,
#primary > article .wpcf7-form label.required::after { content: '*'; color: var(--cf7_danger); }

#colophon .site-info { font-size: .875rem; }

#colophon .site-info a { color: var(--jazz_ivory); text-decoration: none; }

#colophon .site-info a:hover,
#colophon .site-info a:focus { text-decoration: underline; }

#oznakowanie { background-color: #fff; color: var(--jazz_navy_75); padding: 30px 15px; }

#oznakowanie .oznakowanie-inner { background-color: #fff; color: var(--jazz_navy_75); max-width: calc(768px - 2 * 15px); margin: 0 auto; text-align: center; }

#oznakowanie .oznakowanie-inner img { display: inline-block; margin-bottom: 30px; }

#oznakowanie .oznakowanie-inner img:nth-child(1) { width: calc(409px * .5); }

#oznakowanie .oznakowanie-inner img:nth-child(2) { width: calc(1320px * .5); }

#oznakowanie .oznakowanie-inner p { font-size: 13px; }

#go-top {
    position: fixed;
    right: 24px;
    bottom: 24px;
    z-index: 999;

    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transform: translate3d(0, 12px, 0);

    transition:
        opacity .2s ease,
        transform .2s ease,
        visibility 0s linear .2s;
}

#go-top.active {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translate3d(0, 0, 0);

    transition:
        opacity .2s ease,
        transform .2s ease,
        visibility 0s linear 0s;
}

#go-top a {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    width: 56px;
    height: 56px;
    padding: 0;
    border: 3px solid var(--jazz_gold);
    border-radius: 50%;

    background-color: transparent;
    color: var(--jazz_gold);
    text-decoration: none;
    box-shadow: 0 8px 24px rgba(0, 0, 0, .18);

    -webkit-tap-highlight-color: transparent;
    user-select: none;

    transition:
        transform .15s ease,
        box-shadow .15s ease,
        opacity .15s ease;
}

#go-top a:hover {
    transform: translateY(-2px);
    box-shadow: 0 10px 28px rgba(0, 0, 0, .22);
}

#go-top a:active {
    transform: translateY(0);
    box-shadow: 0 6px 18px rgba(0, 0, 0, .18);
}

#go-top a:focus-visible {
    outline: 2px solid var(--jazz_navy);
    outline-offset: 3px;
}

#go-top svg {
    display: block;
    fill: var(--jazz_gold);
}

@media (max-width: 767.98px) {
    #go-top {
        right: 16px;
        bottom: 16px;
    }

    #go-top a {
        width: 48px;
        height: 48px;
    }

    #go-top svg {
        width: 20px;
        height: 20px;
    }
}

@media (prefers-reduced-motion: reduce) {
    #go-top,
    #go-top.active,
    #go-top a {
        transition: none;
    }

    #go-top,
    #go-top.active,
    #go-top a:hover,
    #go-top a:active {
        transform: none;
    }
}

@media (max-width: 991.98px) {
    #masthead #site-navigation { display: none !important; }
    #hero { aspect-ratio: auto; }
    #hero > .wrapper > .container { height: 502.717px; }
}

@media (min-width: 360px) {
    .my-btn:not(.w-100) { width: auto; min-width: 284.333px; }
}

@media (min-width: 576px) {
    h1, .h1 { font-size: 2.25rem !important; }
    h2, .h2 { font-size: 2.5rem !important; }
}

@media (min-width: 768px) {
    h1, .h1 { font-size: 2.875rem !important; }
    #hero .wrapper { font-size: 1.25rem; }
}

@media (min-width: 992px) {
    #masthead .site-branding img { width: 249px; }

    .panels:not(.reverse) > .panel .wrapper h3 { min-height: 86.4px; }
    .panels:not(.reverse) > .panel .wrapper .description { min-height: 105.6px; }

    .panels.reverse > .panel .wrapper .price .price-tab .disclaimer { min-height: 26.4px; }
    .panels.reverse > .panel .wrapper .description.optional { min-height: 79.2px; }
    .panels.reverse > .panel .wrapper .features { min-height: 496.2px; }
    .panels.reverse > .panel .wrapper .description.promo { min-height: 82px; }
}

@media (min-width: 1200px) {
    h1, .h1 { font-size: 3.75rem !important; }

    .panels:not(.reverse) > .panel .wrapper h3 { min-height: 57.6px; }

    .panels.reverse > .panel .wrapper .description.optional { min-height: 52.8px; }
    .panels.reverse > .panel .wrapper .features { min-height: 417px; }
}

@media (min-width: 1400px) {
    .panels:not(.reverse) > .panel .wrapper .description { min-height: 79.2px; }

    .panels.reverse > .panel .wrapper .features { min-height: 365.8px; }
}

@media (min-width: 1920.02px) {
    #hero { width: 100%; }
}