* {
	margin: 0;
	padding: 0;
	border: 0;
}

body {
	font-family: Arial, Verdana, Tahoma, sans-serif;
	font-size: 15px;
	color: #fff;
	line-height: 21px;
	min-height: 100vh;
	background: #000 url("img/bg-home.jpg") center top / cover no-repeat;
}

body.packages-page {
	background-image: url("img/bg-pakiety.png");
	background-position: center top;
	background-size: cover;
	background-attachment: fixed;
}

body#about-us {
	background-image: url("img/bg-home2.png");
	background-position: center top;
	background-size: cover;
	background-attachment: fixed;
}

body#coverage-page {
	background-image: url("img/bg-home2.png");
	background-position: center top;
	background-size: cover;
	background-attachment: fixed;
}

body#subscribers-page,
body#regulations-page,
body#contact-page {
	background-image: url("img/bg-home2.png");
	background-position: center top;
	background-size: cover;
	background-attachment: fixed;
}

a {
	font-family: Arial, Verdana, Tahoma, sans-serif;
	font-size: 15px;
	color: #ffc906;
	font-weight: bold;
	text-decoration: none;
}

a:hover { text-decoration: underline; }

.page-width {
	width: 970px;
	min-height: 100vh;
	margin: 0 auto;
	display: flex;
	flex-direction: column;
}

.top {
	position: relative;
	width: 100%;
	height: 115px;
}

.logo {
	float: left;
	width: 220px;
	height: 82px;
	margin: 13px 0 0 10px;
	display: flex;
	align-items: center;
	justify-content: center;
	background: rgba(0, 0, 0, .86);
}

.logo img {
	max-width: 210px;
	max-height: 76px;
	width: auto;
	height: auto;
}

.menu {
	float: right;
	margin-top: 32px;
	list-style: none;
}

.menu li {
	float: left;
	margin-left: 9px;
	background: #006080;
	border: 1px solid #003c53;
	border-bottom: 3px solid #002e40;
	box-shadow: 1px 1px 2px #000;
}

.menu li.selected { background: #ffc906; border-color: #d49e00; border-bottom-color: #a47700; }
.menu li a { display: block; padding: 8px 12px; color: #fff; font-size: 14px; line-height: 20px; }
.menu li.selected a { color: #003d55; }
.menu li a:hover { text-decoration: none; background: rgba(255,255,255,.12); }

.content { width: 100%; min-height: 420px; overflow: auto; }
.column-left { float: left; width: 405px; margin-top: 36px; }
.column-right { float: right; width: 425px; margin-top: 35px; }

.headline {
	margin-bottom: 17px;
	font-size: 34px;
	line-height: 39px;
	font-weight: bold;
	letter-spacing: -1px;
	text-shadow: 1px 2px 3px #000;
}

.headline strong { color: #ffc906; }
.column-left p { margin-bottom: 13px; }
.arrow-link { padding-right: 17px; background: url("img/link-strzalka.gif") right center no-repeat; }

.line {
	width: 100%;
	margin: 15px 0 14px;
	border-top: 1px solid #656565;
}

.funpack-title { margin: 2px 0 11px; font-size: 18px; }
.funpack-title b { color: #ffc906; font-size: 24px; }
.tv-icons { display: flex; gap: 7px; margin: 12px 0; }
.tv-icons span {
	width: 38px;
	height: 30px;
	color: #fff;
	font-size: 14px;
	font-weight: bold;
	line-height: 30px;
	text-align: center;
	background: #075372;
	border: 1px solid #70a4b7;
}

.order-title { margin: 2px 0 12px; color: #fff; font-size: 21px; font-weight: bold; }
.ad-title { margin: 0 0 23px; font-size: 31px; line-height: 38px; text-shadow: 1px 2px 3px #000; }
.ad-title strong { color: #ffc906; font-size: 42px; white-space: nowrap; }
.ad-title strong.price { display: inline-block; font-size: 30px; line-height: 1.2; white-space: normal; }

.order-button {
	display: inline-block;
	padding: 10px 22px;
	color: #fff;
	font-size: 17px;
	background: #006083;
	border: 1px solid #9cc5d1;
	border-bottom: 4px solid #003e58;
	box-shadow: 1px 2px 3px #000;
}

.order-button:hover { color: #003e58; text-decoration: none; background: #ffc906; }

.footer {
	clear: both;
	min-height: 72px;
	margin-top: auto;
	padding: 13px 15px;
	color: #f4f3e9;
	font-size: 11px;
	line-height: 17px;
	background: rgba(0, 0, 0, .82);
	border-top: 2px solid #ffc906;
}

.footer a { color: #ffc906; font-size: 11px; font-weight: bold; text-decoration: none; }
.footer a:hover { text-decoration: underline; }
.footer-links { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; margin-bottom: 7px; }
.footer-links span { color: #777; }
.footer-details { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; color: #f4f3e9; }
.footer-details span { color: #777; }
.footer a.developer-link { color: #49e879; }

.packages-content { padding: 29px 0 0; }
.packages-intro { margin: 0 0 25px; padding: 22px 25px 20px; background: rgba(0, 0, 0, .48); border-left: 4px solid #ffc906; }
.eyebrow, .plan-number, .plans-note { color: #ffc906; font-size: 10px; font-weight: bold; letter-spacing: 1px; }
.packages-intro h1 { margin: 8px 0 7px; font-size: 31px; line-height: 1.2; text-shadow: 1px 2px 3px #000; }
.packages-intro h1 span { color: #ffc906; }
.packages-intro p { color: #e5e5e5; }
.about-block, .infrastructure-block { margin: 20px 0; padding: 18px 22px; background: rgba(0, 0, 0, .55); border: 1px solid #656565; }
.about-block h2, .infrastructure-block h2, .plans-heading h2 { margin: 0 0 9px; color: #ffc906; font-size: 24px; line-height: 1.25; }
.about-block h3 { margin: 0 0 5px; font-size: 17px; }
.about-block p, .infrastructure-block p { margin: 0 0 8px; }
.details-list { margin: 8px 0 12px 21px; padding: 0; list-style: square; }
.details-list li { padding: 2px 0 2px 3px; }
.details-list li::marker { color: #ffc906; }
.rainbow-blink { display: inline-block; color: #ff2727; font-size: 21px; font-weight: bold; text-shadow: 1px 1px #000; animation: rainbow-flash 1.4s linear infinite; }
.infra-note { display: inline-block; margin-left: 9px !important; color: #bfbfbf; font-size: 11px; }
@keyframes rainbow-flash {
	0% { color: #ff1616; }
	16% { color: #ff8c00; }
	32% { color: #fff000; }
	48% { color: #20e04b; }
	64% { color: #20d9ff; }
	80% { color: #7255ff; }
	96% { color: #ff38c7; }
}
.plans-block { margin-top: 30px; }
.plans-heading { display: flex; align-items: end; justify-content: space-between; margin-bottom: 12px; padding: 0 2px; }
.plans-heading h2 { margin-top: 3px; font-size: 30px; }
.plans-note { margin-bottom: 10px; color: #d4d4ca; }
.plan-list { display: flex; flex-direction: column; gap: 14px; }
.plan-card { padding: 19px 23px 20px; color: #f5f5f5; background: rgba(0, 0, 0, .77); border: 1px solid #656565; border-top: 3px solid #006080; }
.plan-hit { border-top-color: #ffc906; }
.plan-premium { border: 2px solid #ffc906; box-shadow: 0 0 18px rgba(255, 201, 6, .28); }
.plan-premium .plan-number, .plan-premium .plan-price { color: #ffe45b; }
.plan-number { margin-bottom: 8px; }
.plan-title-row { display: flex; align-items: baseline; justify-content: space-between; gap: 15px; }
.plan-title-row h3 { margin: 0 0 8px; color: #fff; font-size: 23px; line-height: 1.2; }
.plan-price { flex: 0 0 auto; color: #ffc906; font-size: 23px; font-weight: bold; white-space: nowrap; }
.plan-price small { color: #d4d4d4; font-size: 11px; font-weight: normal; }
.plan-card p { margin: 5px 0 9px; line-height: 1.5; }
.plan-card .plan-slogan { color: #ffc906; font-weight: bold; }
.compact-list { margin-top: 8px; margin-bottom: 13px; }
.fake-button { display: inline-block; padding: 7px 13px; color: #fff; background: #006080; border: 1px solid #74aabc; border-bottom: 3px solid #00394f; }
.fake-button:hover { color: #003d55; background: #ffc906; text-decoration: none; }
.priority-note { margin: 13px 0; padding: 11px 13px; color: #fff; line-height: 1.65; background: rgba(255, 201, 6, .12); border-left: 3px solid #ffc906; }
.premium-buttons { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 14px; }
.premium-buttons .fake-button { font-size: 12px; }

.about-content { padding: 29px 0 0; }
.about-intro, .about-section, .mango-callout {
	margin-bottom: 18px;
	padding: 20px 24px;
	background: rgba(0, 0, 0, .72);
	border: 1px solid #656565;
}
.about-intro { border-left: 4px solid #ffc906; }
.about-intro h1 { margin: 4px 0 0; color: #ffc906; font-size: 31px; line-height: 1.25; }
.about-intro h2 { margin: 7px 0; font-size: 20px; }
.about-intro p, .about-section p { margin: 7px 0; }
.about-section h2 { margin: 0 0 10px; color: #ffc906; font-size: 24px; }
.about-section .details-list { margin-top: 13px; margin-bottom: 15px; }
.about-motto { border-left: 4px solid #006080; }
.motto-line { color: #ffc906; font-weight: bold; }
.mango-callout { text-align: center; border-color: #777; }
.mango-callout .rainbow-blink { font-size: 26px; }
.mango-callout p { margin-top: 7px; color: #d5d5d5; font-size: 12px; }
.about-plans-link { margin: 20px 0; }
.datacenter-photo { margin: 14px 0 16px; }
.datacenter-photo img { display: block; width: 650px; max-width: 100%; height: auto; border: 2px solid #9a9a8a; }
.datacenter-photo figcaption { margin-top: 5px; color: #c5c5c5; font-size: 11px; font-style: italic; }
.datacenter-contact { margin-top: 13px !important; color: #ffc906; font-weight: bold; }
.backbone-photo img { width: 430px; }

.coverage-content { padding: 29px 0 0; }
.coverage-intro, .coverage-panel, .installation-section { padding: 20px 23px; background: rgba(0, 0, 0, .74); border: 1px solid #656565; }
.coverage-intro { border-left: 4px solid #ffc906; }
.coverage-intro h1 { margin: 7px 0; color: #ffc906; font-size: 30px; line-height: 1.2; }
.coverage-intro p { margin-top: 8px; }
.service-tabs { display: flex; flex-wrap: wrap; gap: 7px; margin: 16px 0 0; }
.service-tabs a { display: block; padding: 9px 14px; color: #fff; font-size: 13px; background: #005b7c; border: 1px solid #287a94; border-bottom: 3px solid #003d56; }
.service-tabs a.active { color: #003d55; background: #ffc906; border-color: #d49e00; border-bottom-color: #a47700; }
.service-tabs a:hover { text-decoration: none; filter: brightness(1.12); }
.coverage-panel { border-top: 0; }
.choice-group { min-width: 0; margin: 0 0 19px; padding: 13px; border: 1px solid #656565; }
.choice-group legend { padding: 0 8px; color: #ffc906; font-size: 18px; font-weight: bold; }
.choice { min-height: 43px; margin: 5px 0; padding: 8px 10px; display: flex; align-items: center; gap: 10px; color: #fff; background: rgba(255, 255, 255, .07); cursor: pointer; }
.choice:hover { background: rgba(255, 201, 6, .12); }
.choice input { flex: 0 0 auto; accent-color: #ffc906; }
.choice span { flex: 1; }
.choice small { display: block; color: #c7c7c7; font-size: 12px; line-height: 1.45; }
.choice-with-image img { width: 58px; height: 58px; object-fit: cover; object-position: center 22%; border: 1px solid #aaa; }
.coverage-submit { padding: 10px 17px; color: #fff; font: bold 14px Arial, sans-serif; background: #006083; border: 1px solid #9cc5d1; border-bottom: 4px solid #003e58; cursor: pointer; }
.coverage-submit:hover { color: #003e58; background: #ffc906; }
.coverage-result { min-height: 54px; margin-top: 17px; padding: 14px 16px; color: #fff; background: rgba(255, 201, 6, .13); border-left: 4px solid #ffc906; line-height: 1.55; }
.coverage-result strong { color: #ffc906; }
.installation-section { margin-top: 30px; }
.installation-section h2 { margin: 5px 0 15px; color: #ffc906; font-size: 25px; }
.table-scroll { overflow-x: auto; }
.install-table { width: 100%; border-collapse: collapse; background: rgba(0, 0, 0, .32); }
.install-table th, .install-table td { padding: 11px 12px; text-align: left; vertical-align: top; border: 1px solid #656565; }
.install-table thead th { color: #ffc906; background: #063c50; }
.install-table tbody th { width: 78px; color: #fff; white-space: nowrap; }
.install-table tbody td:nth-child(2) { width: 125px; color: #ffc906; }
.install-table tbody tr:nth-child(even) { background: rgba(255, 255, 255, .06); }

.subscriber-content { padding: 29px 0 30px; }
.subscriber-intro { position: relative; min-height: 145px; margin-bottom: 17px; padding: 22px 210px 20px 24px; background: rgba(0, 0, 0, .78); border: 1px solid #656565; border-left: 4px solid #ffc906; }
.subscriber-intro h1 { margin: 8px 0; color: #ffc906; font-size: 30px; line-height: 1.2; }
.subscriber-intro p { max-width: 590px; }
.registry-stamp { position: absolute; top: 24px; right: 24px; padding: 9px 12px; color: #ff4a36; font: bold 11px/1.5 "Courier New", monospace; text-align: center; border: 2px solid #ff4a36; transform: rotate(7deg); }
.privacy-note { margin-bottom: 17px; padding: 13px 16px; color: #fff; background: rgba(0, 75, 98, .85); border: 1px solid #42a0b8; }
.privacy-note b { color: #ffc906; }
.consent-parody { background: rgba(89, 52, 7, .82); border-color: #b8892a; }
.subscriber-list { display: flex; flex-direction: column; gap: 12px; }
.subscriber-card { padding: 16px 19px; background: rgba(0, 0, 0, .82); border: 1px solid #64645c; border-left: 4px solid #006080; }
.subscriber-card:nth-child(2) { border-left-color: #ffc906; }
.subscriber-index { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 8px; margin-bottom: 10px; color: #ffc906; font: bold 11px "Courier New", monospace; letter-spacing: .06em; }
.subscriber-index span { color: #a9d468; }
.subscriber-card dl { margin: 0; }
.subscriber-card dl > div { display: grid; grid-template-columns: 105px minmax(0, 1fr); padding: 5px 0; border-top: 1px dashed #45453e; }
.subscriber-card dt { color: #aaa99e; font: bold 12px "Courier New", monospace; }
.subscriber-card dd { margin: 0; overflow-wrap: anywhere; color: #f4f3e9; }
.case-note { margin-top: 8px; padding-top: 8px; color: #c1c1b8; font-size: 12px; border-top: 1px solid #34342e; }
.registry-footer { margin-top: 15px; padding: 12px 15px; color: #bdbdb3; font-size: 11px; line-height: 1.5; background: rgba(0, 0, 0, .7); border-top: 1px solid #656565; }

.contact-content { padding: 29px 0 30px; }
.contact-intro, .contact-card, .authorities-section { background: rgba(0, 0, 0, .78); border: 1px solid #656565; }
.contact-intro { margin-bottom: 15px; padding: 21px 24px; border-left: 4px solid #ffc906; }
.contact-intro h1 { margin: 7px 0; color: #ffc906; font-size: 31px; }
.contact-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.contact-card { padding: 17px 19px; }
.contact-card:nth-child(3) { grid-column: 1 / -1; }
.contact-label { margin-bottom: 8px; color: #ffc906; font: bold 10px "Courier New", monospace; letter-spacing: .1em; }
.contact-card h2 { margin: 0 0 9px; color: #fff; font-size: 19px; line-height: 1.3; }
.contact-card h2 span { color: #ffc906; font-size: 14px; }
.contact-address { display: inline-block; margin: 3px 0 7px; font-size: 18px; }
.contact-card p { color: #d2d2c8; font-size: 13px; line-height: 1.55; }
.contact-card .contact-rant { margin: 4px 0 10px; color: #ffc906; font-weight: bold; }
.contact-phone { margin: 14px 0 26px; padding: 13px 16px; color: #eee; background: rgba(0, 75, 98, .85); border-left: 4px solid #ffc906; }
.contact-phone span { margin-right: 7px; }
.contact-phone a { font-size: 18px; }
.authorities-section { padding: 20px 23px; }
.authorities-section h2 { margin: 5px 0 13px; color: #ffc906; font-size: 25px; }
.pou-note, .copypasta-note { margin: 10px 0; padding: 12px 14px; line-height: 1.55; }
.pou-note { color: #fff; background: rgba(0, 75, 98, .8); border-left: 4px solid #ffc906; }
.copypasta-note { color: #fff; background: rgba(102, 26, 17, .75); border-left: 4px solid #ff593d; }
.mock-legal { padding: 16px 17px; color: #deded5; background: rgba(255, 255, 255, .06); border: 1px dashed #777; }
.mock-legal p { margin: 0 0 12px; line-height: 1.6; }
.mock-legal p:last-child { margin-bottom: 0; }
.mock-legal .leave-now { color: #ffc906; font-weight: bold; }

.terms-content { padding: 29px 0 30px; }
.terms-intro { position: relative; margin-bottom: 17px; padding: 22px 205px 22px 24px; background: rgba(0, 0, 0, .8); border: 1px solid #656565; border-left: 4px solid #ffc906; }
.terms-intro h1 { margin: 8px 0; color: #ffc906; font-size: 30px; line-height: 1.2; }
.terms-intro p { color: #ddd; }
.terms-seal { position: absolute; top: 25px; right: 24px; padding: 8px 10px; color: #ff4a36; font: bold 11px/1.5 "Courier New", monospace; text-align: center; border: 2px solid #ff4a36; transform: rotate(7deg); }
.terms-list { margin: 0; padding: 20px 24px 20px 55px; color: #f0f0e8; background: rgba(0, 0, 0, .82); border: 1px solid #656565; counter-reset: terms; }
.terms-list li { padding: 10px 12px; line-height: 1.55; border-bottom: 1px dashed #4a4a42; }
.terms-list li::marker { color: #ffc906; font: bold 15px "Courier New", monospace; }
.terms-list li:nth-child(even) { background: rgba(255, 255, 255, .035); }
.terms-ending { margin-top: 15px; padding: 14px 17px; color: #ffc906; font-weight: bold; text-align: center; background: rgba(0, 0, 0, .78); border: 1px solid #6a622d; }

@media (prefers-reduced-motion: reduce) {
	.rainbow-blink { animation: none; color: #ff38c7; }
}

@media (max-width: 1000px) {
	.page-width { width: calc(100% - 32px); max-width: 970px; }
	.top { height: auto; min-height: 115px; }
	.menu { margin-right: 4px; }
	.content { display: flex; gap: 7%; }
	.column-left, .column-right { float: none; width: 46.5%; }
}

@media (max-width: 650px) {
	body { background-position: center top; }
	.page-width { width: calc(100% - 24px); }
	.top { padding-top: 8px; }
	.logo { float: none; margin: 0 auto; justify-content: center; height: 75px; }
	.logo img { max-width: 190px; max-height: 70px; }
	.menu { float: none; display: flex; flex-wrap: wrap; justify-content: center; gap: 6px; margin: 10px 0 0; padding-bottom: 12px; }
	.menu li { float: none; margin: 0; }
	.menu li a { padding: 6px 9px; font-size: 12px; }
	.content { display: block; overflow: visible; }
	.column-left, .column-right { float: none; width: 100%; margin-top: 22px; }
	.headline { font-size: 30px; line-height: 35px; }
	.column-right { padding: 18px; box-sizing: border-box; background: rgba(0,0,0,.35); }
	.ad-title { font-size: 26px; line-height: 32px; }
	.ad-title strong { font-size: 36px; }
	.ad-title strong.price { font-size: 26px; }
	.footer { margin-top: auto; padding: 13px 12px; color: #fff; }
	.footer a { color: #ffc906; }
	.packages-content { padding-top: 18px; }
	.packages-intro { padding: 17px; }
	.packages-intro h1 { font-size: 25px; }
	.about-block, .infrastructure-block, .plan-card { padding: 15px; }
	.plans-heading { align-items: flex-start; flex-direction: column; gap: 4px; }
	.plans-note { margin: 0 0 5px; font-size: 9px; }
	.plan-title-row { align-items: flex-start; flex-direction: column; gap: 0; }
	.plan-title-row h3 { font-size: 20px; }
	.plan-price { margin-bottom: 6px; font-size: 20px; }
	.premium-buttons { align-items: stretch; flex-direction: column; }
	.premium-buttons .fake-button { text-align: center; }
	.infra-note { display: block; margin: 6px 0 0 !important; }
	.about-content { padding-top: 18px; }
	.about-intro, .about-section, .mango-callout { padding: 16px; }
	.about-intro h1 { font-size: 27px; }
	.mango-callout .rainbow-blink { font-size: 22px; }
	.coverage-content { padding-top: 18px; }
	.coverage-intro, .coverage-panel, .installation-section { padding: 15px; }
	.coverage-intro h1 { font-size: 25px; }
	.choice-group { padding: 9px; }
	.choice-group legend { font-size: 16px; }
	.choice { padding: 8px 6px; gap: 7px; font-size: 13px; }
	.choice small { font-size: 11px; }
	.choice-with-image img { width: 48px; height: 48px; }
	.service-tabs a { padding: 8px 10px; font-size: 11px; }
	.install-table { min-width: 720px; }
	.subscriber-content { padding-top: 18px; }
	.subscriber-intro { padding: 17px; }
	.subscriber-intro h1 { padding-right: 0; font-size: 25px; }
	.registry-stamp { position: static; display: inline-block; margin-top: 12px; transform: rotate(-3deg); }
	.subscriber-card { padding: 13px; }
	.subscriber-card dl > div { grid-template-columns: 75px minmax(0, 1fr); gap: 8px; }
	.contact-content { padding-top: 18px; }
	.contact-intro, .contact-card, .authorities-section { padding: 15px; }
	.contact-grid { grid-template-columns: 1fr; }
	.contact-card:nth-child(3) { grid-column: auto; }
	.contact-phone { line-height: 1.7; }
	.terms-content { padding-top: 18px; }
	.terms-intro { padding: 16px; }
	.terms-intro h1 { padding-right: 0; font-size: 25px; }
	.terms-seal { position: static; display: inline-block; margin-top: 12px; transform: rotate(-3deg); }
	.terms-list { padding: 12px 10px 12px 37px; }
	.terms-list li { padding: 9px 7px; }
}
