/* Згенеровано автоматично з: celena.css, common.css, engine.css, fontawesome.css, styles.css, extra.css. Не редагувати — правте джерела. */

/* ==== celena.css ==== */
/* Celena CMS — runtime base styles + theme tokens. */
:root {
  --bg: #f7f8fb;
  --surface: #ffffff;
  --surface-2: #f4f5f9;
  --surface-3: #eceef5;
  --border: #e6e8f0;
  --border-soft: rgba(148, 156, 184, 0.12);
  --text: #0f172a;
  --text-muted: #64748b;
  --accent: #6d5cff;
  --accent-2: #8b7bff;
  --accent-soft: rgba(109, 92, 255, 0.08);
  --accent-contrast: #ffffff;
  --success: #10b981;
  --danger: #ef4444;
  --warning: #f59e0b;
  --info: #3b82f6;
  --radius: 14px;
  --radius-sm: 10px;
  --shadow-soft: 0 1px 2px rgba(15, 23, 42, 0.04), 0 2px 6px rgba(15, 23, 42, 0.04);
  --shadow-sm: 0 1px 2px rgba(15, 23, 42, 0.06);
  --shadow-hover: 0 4px 16px rgba(15, 23, 42, 0.08), 0 2px 6px rgba(15, 23, 42, 0.04);
  --shadow: var(--shadow-soft);
}

[data-theme="dark"] {
  --bg: #0a0d14;
  --surface: #12151f;
  --surface-2: #1a1e2b;
  --surface-3: #232838;
  --border: #262b3b;
  --border-soft: rgba(100, 116, 139, 0.16);
  --text: #e7e9f0;
  --text-muted: #94a3b8;
  --accent: #8b7bff;
  --accent-2: #a190ff;
  --accent-soft: rgba(139, 123, 255, 0.14);
  --accent-contrast: #ffffff;
  --shadow-soft: 0 1px 2px rgba(0, 0, 0, 0.25), 0 2px 10px rgba(0, 0, 0, 0.18);
  --shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.3);
  --shadow-hover: 0 6px 22px rgba(0, 0, 0, 0.35), 0 2px 6px rgba(0, 0, 0, 0.2);
  --shadow: var(--shadow-soft);
}

* { box-sizing: border-box; }
html, body { margin: 0; padding: 0; }
body {
  background: var(--bg);
  color: var(--text);
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Inter, sans-serif;
  font-size: 15px;
  line-height: 1.55;
  -webkit-font-smoothing: antialiased;
}

a { color: var(--accent); text-decoration: none; }
a:hover { color: var(--accent-2); text-decoration: underline; }

/* Async-блоки */
[data-celena-async] { min-height: 24px; transition: opacity .2s ease; }
[data-celena-async].is-loading { opacity: 0.5; }
[data-celena-async].is-error  { color: var(--danger); }
.celena-async-error { padding: 12px; border: 1px dashed var(--border); border-radius: var(--radius); }

/* GDPR-баннер: фиксирован внизу, slide-in snackbar-style */
.celena-gdpr {
  position: fixed; left: 16px; right: 16px; bottom: 16px;
  z-index: 9000;
  background: var(--surface, #fff); color: var(--text, #111);
  border: 1px solid var(--border, #ddd); border-radius: 12px;
  box-shadow: 0 10px 40px rgba(0,0,0,0.18);
  transform: translateY(24px); opacity: 0;
  transition: transform 0.25s ease, opacity 0.25s ease;
}
.celena-gdpr.is-visible { transform: translateY(0); opacity: 1; }
.celena-gdpr-inner {
  display: flex; align-items: center; gap: 16px;
  padding: 14px 18px; flex-wrap: wrap;
  max-width: 1100px; margin: 0 auto;
}
.celena-gdpr-text { flex: 1; min-width: 260px; font-size: 14px; line-height: 1.5; }
.celena-gdpr-more { color: var(--accent, #6d5cff); text-decoration: underline; }
.celena-gdpr-actions { display: flex; gap: 8px; flex-wrap: wrap; }
.celena-gdpr-btn {
  padding: 9px 18px; border-radius: 8px; border: 1px solid transparent;
  font-size: 13px; font-weight: 500; font-family: inherit; cursor: pointer;
  transition: background 0.15s ease, color 0.15s ease, border-color 0.15s ease;
}
.celena-gdpr-accept { background: var(--accent, #6d5cff); color: #fff; }
.celena-gdpr-accept:hover { filter: brightness(1.05); }
.celena-gdpr-decline { background: transparent; color: var(--text-muted, #6b7280); border-color: var(--border, #ddd); }
.celena-gdpr-decline:hover { color: var(--text, #111); border-color: var(--text-muted, #9ca3af); }
@media (max-width: 640px) {
  .celena-gdpr { left: 8px; right: 8px; bottom: 8px; }
  .celena-gdpr-inner { padding: 12px 14px; }
  .celena-gdpr-actions { width: 100%; }
  .celena-gdpr-btn { flex: 1; }
}


/* ==== common.css ==== */
/* ============================================================
   EuroNet — common.css
   Reset, CSS Variables, Base Elements, Utilities
   ============================================================ */

/* === CSS VARIABLES === */
:root {
    /* Core palette — LIGHT ISP theme with teal accent */
    --bg:             #f5f7fa;
    --bg-card:        #ffffff;
    --bg-elevated:    #f0f2f5;
    --bg-hover:       #e8ecf1;
    --bg-light:       #f0f4f8;

    --tt:             #1a2332;
    --tt-secondary:   #4a5568;
    --tt-fade:        #94a3b8;

    --accent:         #00897B;
    --accent-hover:   #00BFA6;
    --accent-soft:    rgba(0, 137, 123, 0.08);
    --accent-glow:    0 0 20px rgba(0, 137, 123, 0.25);

    --secondary:      #3b82f6;
    --danger:         #ef4444;
    --warning:        #f59e0b;
    --success:        #22c55e;

    --bdc:            #e2e8f0;
    --bdc-light:      #edf2f7;
    --bsh:            0 4px 20px rgba(0, 0, 0, 0.06);

    /* Glassmorphism */
    --glass-bg:       rgba(255, 255, 255, 0.85);
    --glass-border:   rgba(0, 0, 0, 0.06);
    --glass-blur:     16px;

    /* Buttons */
    --bg-btn:         #00897B;
    --tt-btn:         #ffffff;
    --bg-btn-hover:   #00BFA6;

    /* System variables for engine.css */
    --ui-bg:          #ffffff;
    --ui-bg-darker:   #f5f7fa;
    --ui-bg-darkest:  #e8ecf1;
    --ui-accent:      #00897B;
    --ui-bdc:         #e2e8f0;
    --ui-tt-fade:     #94a3b8;
    --ui-fw-bolder:   600;
    --ui-fw-fa:       300;
    --ui-bsh:         0 12px 40px rgba(0, 0, 0, 0.12);
    --ui-bsh-inset:   inset 1px 2px 5px rgba(0, 0, 0, 0.06);
    --ui-bg-black:    #1a2332;
    --ui-green:       #22c55e;
    --ui-red:         #ef4444;
    --ui-bg-attention:#FFF8E1;
    --ui-bd-attention:#FF9800;

    /* Layout */
    --container:      1280px;
    --gap:            20px;
    --radius:         8px;
    --radius-lg:      16px;
    --radius-xl:      24px;

    /* Typography */
    --font-display:   'Poppins', sans-serif;
    --font-body:      'Inter', sans-serif;

    /* Transitions */
    --ease:           cubic-bezier(0.25, 0.46, 0.45, 0.94);
    --speed:          0.25s;
    --speed-slow:     0.5s;
}


/* === RESET === */
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }

html {
    font-size: 16px;
    -webkit-text-size-adjust: 100%;
    scroll-behavior: smooth;
}

body {
    font-family: var(--font-body);
    font-weight: 400;
    line-height: 1.6;
    color: var(--tt);
    background: var(--bg);
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    overflow-x: hidden;
}

body.modal-is-opened {
    overflow: hidden;
}

img { max-width: 100%; height: auto; display: block; }
a { color: var(--accent); text-decoration: none; transition: color var(--speed) var(--ease); }
a:hover { color: var(--accent-hover); }

ul, ol { list-style: none; }

h1, h2, h3, h4, h5, h6 {
    font-family: var(--font-display);
    font-weight: 600;
    line-height: 1.25;
    color: var(--tt);
}

h1 { font-size: 2.25rem; }
h2 { font-size: 1.75rem; }
h3 { font-size: 1.35rem; }
h4 { font-size: 1.15rem; }
h5 { font-size: 1rem; }

p { margin-bottom: 1rem; }
p:last-child { margin-bottom: 0; }


/* === BASE ELEMENTS === */

/* Buttons */
.btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 12px 28px;
    font-family: var(--font-body);
    font-size: 0.95rem;
    font-weight: 600;
    color: var(--tt-btn);
    background: var(--bg-btn);
    border: none;
    border-radius: var(--radius);
    cursor: pointer;
    transition: all var(--speed) var(--ease);
    white-space: nowrap;
    text-decoration: none;
}
.btn:hover {
    background: var(--bg-btn-hover);
    color: var(--tt-btn);
    transform: translateY(-1px);
    box-shadow: var(--accent-glow);
}

.btn--outline {
    background: transparent;
    color: var(--accent);
    border: 2px solid var(--accent);
}
.btn--outline:hover {
    background: var(--accent);
    color: var(--tt-btn);
}

.btn--lg {
    padding: 16px 36px;
    font-size: 1.05rem;
    border-radius: var(--radius-lg);
}

.btn--sm {
    padding: 8px 18px;
    font-size: 0.85rem;
}

.btn--white {
    background: #fff;
    color: var(--bg);
}
.btn--white:hover {
    background: #e2e8f0;
    color: var(--bg);
    box-shadow: 0 4px 15px rgba(255,255,255,0.2);
}

/* Inputs */
input[type="text"],
input[type="email"],
input[type="password"],
input[type="tel"],
input[type="url"],
input[type="number"],
input[type="search"],
textarea,
select {
    width: 100%;
    padding: 10px 16px;
    font-family: var(--font-body);
    font-size: 0.95rem;
    color: var(--tt);
    background: var(--bg-elevated);
    border: 1px solid var(--bdc);
    border-radius: var(--radius);
    transition: border-color var(--speed), box-shadow var(--speed);
    outline: none;
}

input:focus,
textarea:focus,
select:focus {
    border-color: var(--accent);
    box-shadow: 0 0 0 3px var(--accent-soft);
}

textarea {
    resize: vertical;
    min-height: 100px;
}

select {
    cursor: pointer;
    appearance: none;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='%2394a3b8' viewBox='0 0 16 16'%3E%3Cpath d='M8 11L3 6h10z'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 12px center;
    padding-right: 36px;
}

label {
    display: block;
    margin-bottom: 6px;
    font-size: 0.9rem;
    font-weight: 500;
    color: var(--tt-secondary);
}

/* Checkbox / Radio */
.has-checkbox {
    display: flex;
    align-items: center;
    gap: 8px;
    cursor: pointer;
}
.has-checkbox input[type="checkbox"],
.has-checkbox input[type="radio"] {
    width: 18px;
    height: 18px;
    accent-color: var(--accent);
}

/* Tables */
table {
    width: 100%;
    border-collapse: collapse;
}
th, td {
    padding: 10px 14px;
    text-align: left;
    border-bottom: 1px solid var(--bdc);
}
th {
    font-weight: 600;
    color: var(--tt-secondary);
    font-size: 0.85rem;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}


/* === UTILITIES === */
.d-flex { display: flex; flex-wrap: wrap; }
.ai-center { align-items: center; }
.jc-space-between { justify-content: space-between; }
.jc-center { justify-content: center; }
.flex-grow-1 { flex: 1 1 0; max-width: 100%; min-width: 50px; }
.ws-nowrap { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.line-clamp { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.line-clamp-3 { display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
.clearfix::after { content: ""; display: table; clear: both; }
.img-responsive { position: relative; padding-top: 60%; }
.img-responsive > img { position: absolute; left: 0; top: 0; width: 100%; height: 100%; object-fit: cover; }
.img-fixed-size img { width: 100%; height: 100%; object-fit: cover; }
.img-mask::before {
    content: '';
    position: absolute;
    z-index: 1;
    left: 0; right: 0; bottom: 0;
    height: 70%;
    background: linear-gradient(to top, rgba(0,0,0,0.8) 0%, transparent 100%);
}
.hidden, .d-none { display: none; }
.order-first { order: -1; }
.btn-without-bg { background: none; padding: 0; border: none; cursor: pointer; color: var(--accent); }
.text-center { text-align: center; }
.text-muted { color: var(--tt-fade); }
.mt-1 { margin-top: 8px; }
.mt-2 { margin-top: 16px; }
.mt-3 { margin-top: 24px; }
.mb-1 { margin-bottom: 8px; }
.mb-2 { margin-bottom: 16px; }
.mb-3 { margin-bottom: 24px; }

/* Container */
.container {
    max-width: var(--container);
    margin: 0 auto;
    padding: 0 var(--gap);
}

/* Overlay */
.overlay {
    display: none;
    position: fixed;
    z-index: 999;
    top: 0; left: 0; right: 0; bottom: 0;
    background: rgba(0, 0, 0, 0.6);
    backdrop-filter: blur(4px);
}

/* Scrollbar */
::-webkit-scrollbar { width: 8px; }
::-webkit-scrollbar-track { background: var(--bg); }
::-webkit-scrollbar-thumb { background: var(--bdc); border-radius: 4px; }
::-webkit-scrollbar-thumb:hover { background: var(--tt-fade); }

/* Selection */
::selection {
    background: var(--accent);
    color: var(--bg);
}

/* Animations base */
[data-animate] {
    opacity: 0;
    transform: translateY(30px);
    transition: opacity 0.6s var(--ease), transform 0.6s var(--ease);
}
[data-animate].is-visible {
    opacity: 1;
    transform: translateY(0);
}
[data-animate="fade-in"] { transform: none; }
[data-animate="slide-left"] { transform: translateX(-30px); }
[data-animate="slide-left"].is-visible { transform: translateX(0); }
[data-animate="slide-right"] { transform: translateX(30px); }
[data-animate="slide-right"].is-visible { transform: translateX(0); }
[data-animate="scale"] { transform: scale(0.95); }
[data-animate="scale"].is-visible { transform: scale(1); }

/* Full-text (article body) */
.full-text {
    font-size: 1.05rem;
    line-height: 1.8;
    color: var(--tt);
}
.full-text p { margin-bottom: 1.2em; }
.full-text h2 { margin: 2em 0 0.8em; font-size: 1.5rem; }
.full-text h3 { margin: 1.5em 0 0.6em; font-size: 1.25rem; }
.full-text img { border-radius: var(--radius); margin: 1.5em 0; }
.full-text a { color: var(--accent); text-decoration: underline; }
.full-text a:hover { color: var(--accent-hover); }
.full-text ul, .full-text ol { margin: 1em 0; padding-left: 1.5em; }
.full-text ul { list-style: disc; }
.full-text ol { list-style: decimal; }
.full-text li { margin-bottom: 0.4em; }
.full-text blockquote {
    margin: 1.5em 0;
    padding: 16px 20px;
    border-left: 4px solid var(--accent);
    background: var(--bg-elevated);
    border-radius: 0 var(--radius) var(--radius) 0;
    color: var(--tt-secondary);
    font-style: italic;
}
.full-text pre {
    margin: 1.5em 0;
    padding: 16px;
    background: var(--bg-elevated);
    border-radius: var(--radius);
    overflow-x: auto;
    font-size: 0.9rem;
}
.full-text code {
    padding: 2px 6px;
    background: var(--bg-elevated);
    border-radius: 4px;
    font-size: 0.9em;
}
.full-text table {
    margin: 1.5em 0;
}
.full-text iframe,
.full-text video {
    max-width: 100%;
    border-radius: var(--radius);
}

/* Light theme — base text color overrides */
.serv, .serv a, .serv__links a { color: var(--tt); }
.serv__links a { color: var(--accent); }
.serv__links a:hover { color: var(--accent-hover); }


/* ==== engine.css ==== */
/* INFO MESSAGES, ERRORS */
.message-info {line-height: 1.5; margin-bottom: 20px; 
	background-color: var(--ui-bg-attention); box-shadow: 0 1px 3px rgba(0,0,0,.12),0 1px 2px rgba(0,0,0,.24);
	border: 1px solid var(--ui-bd-attention); position: relative; padding: 15px 20px 15px 64px;}
.message-info__title {font-weight: var(--ui-fw-bolder);}
.message-info::before {content:"\f071"; font-family:'Font Awesome 5 Pro'; font-weight: var(--ui-fw-fa); font-size: 22px;
	color: #fff; background-color: var(--ui-bd-attention); position: absolute; left: 0; top: 0; 
	width: 44px; height: 100%; display: grid; place-items: center;}

/* VOTE BLOCK */
.sect__content--vote {padding-left: 50%; position: relative;}
.voter__title {font-size: 21px; font-weight: 300; margin-bottom: 20px;}
.vote {margin-bottom: 13px; line-height: 1.6; margin-left: 0px;}
.vote input {display:none;}
.vote label {position:relative; padding-left: 26px;}
.vote label::before {content:""; cursor: pointer; width: 16px; height: 16px; border-radius: 50%; 
	border: 2px solid var(--tt-2); display: block; box-sizing: border-box; 
	position: absolute; left: 0; top: 1px;}
.vote input:checked + label::before {border-color: var(--accent); background: var(--accent); 
	box-shadow: inset 0 0 0 2px #fff;}
.vote label:hover {cursor:pointer; color:var(--accent);}
.voter__bottom {padding-top: 20px;}
.voter__submit {border: 1px solid #ccc; border-radius: 20px; height: 40px; 
	margin-right: 20px; color: var(--tt); background-color: transparent; padding: 0 40px;}
.voter__count, .voter__caption {color: #999; font-size: 0.9em;}
.voter__caption {line-height: 1.6; margin-bottom: 20px; margin-top: -15px; max-width: 240px;}
.voter__btn {background: none !important; padding: 0; color: #999 !important; font-size: 0.9em; }
.col-side .voter__title {font-size: 17px;}
.col-side .voter__submit {padding: 0 20px;}


/*--- VOTE BARS ---*/
.voteprogress,.pollprogress{overflow:hidden;height:15px;margin-bottom:5px;background:linear-gradient(to bottom, #f5f5f5, #f9f9f9);box-shadow:inset 0 1px 2px rgba(0, 0, 0, 0.1);border-radius:4px}
.voteprogress span,.pollprogress span{color:#ffffff;text-align:center;text-indent:-2000em;height:15px;display:block;overflow:hidden;text-shadow:0 -1px 0 rgba(0, 0, 0, 0.25);background:#0e90d2;background:linear-gradient(to bottom, #149bdf, #0480be)}
.voteprogress .vote2, span.poll1{background-color:#dd514c;background:linear-gradient(to bottom, #ee5f5b, #c43c35)}
.voteprogress .vote3, span.poll2{background-color:#5eb95e;background:linear-gradient(to bottom, #62c462, #57a957)}
.voteprogress .vote4, span.poll3{background-color:#4bb1cf;background:linear-gradient(to bottom, #5bc0de, #339bb9)}
.voteprogress .vote5, span.poll4{background-color:#faa732;background:linear-gradient(to bottom, #fbb450, #f89406)}


/* MAY BE TO DELETE */
#pollbox {border-bottom: 1px dashed #E3E3E3; padding-bottom: 22px;}
#dle-poll-list, .pm-status {padding: 0 0 20px 0; border-radius: 6px;}
.bbcodes_poll{width:100px}
fieldset {border: 1px solid #bfced6;padding: 5px;text-align: left;}


/* SERVICE PAGE COMMON, FORM
----------------------------------------------- */
.serv__title {font-size: 24px; font-weight: var(--ui-fw-bolder); margin-bottom: 30px;}
.serv__subtitle {font-size: 18px; font-weight: var(--ui-fw-bolder); margin-bottom: 20px;}
.serv__section {margin-bottom: 30px;}
.serv__gap {gap: 10px;}
.serv__links a {color: var(--ui-accent); border-bottom: 1px dotted var(--ui-accent);}
.serv__table-resp {overflow-y: hidden; overflow-x: auto;}
.serv__table table {width: 100%;}
.serv__table table thead tr, .pm tbody tr:first-child {background-color: var(--ui-bg-black); color: #fff;}
.serv__table table td {padding: 10px 10px; font-size: 13px; border: 1px solid var(--ui-bdc);}
.serv__table table tbody tr:nth-child(2n) {background-color: var(--ui-bg-darker);}

.form__row + .form__row {margin-top: 20px;}
.form__row {display: grid; gap: 10px 20px; align-items: center; grid-template-columns: 200px minmax(200px,1fr); position: relative;}
.form__row--textarea, .form__row--textarea .form__label, .form__row--wide {display: block;}
.form__row--textarea .form__label {background-color: var(--ui-bg-black); color: #fff; padding: 15px;}
.form__label--important::after {content: "*"; margin: 0 0 0 5px; color: var(--ui-red);}
#result-registration, .ui-helper-hidden-accessible, #related_news, .form__vote {grid-column: 1 / -1; padding: 20px; 
	background-color: var(--ui-bg-attention); border: 1px solid var(--ui-bd-attention);}
.form__find-related {position: absolute; right: 0; top: 0; border-radius: 0 4px 4px 0;}
.form__content select, #category {width: 100% !important;}
.bb-pane + textarea {border-radius: 0 0 4px 4px;}
.xfieldsnote {color: var(--ui-tt-fade); font-size: 13px; margin-top: 5px;}

.form__table {width: 100%;}
.form__table tr + tr td {padding-top: 20px;}
.form__table .addnews {width: 220px;}
.xfields textarea, .xprofile textarea, .form__textarea--height {height:100px !important;}
.xfields .bb-editor, .xfields .wseditor {margin-top:10px;}
td.xfields {position: relative;}

.form__row--checkboxes-group {display: grid; grid-gap: 20px 20px; grid-template-columns: repeat(auto-fill,minmax(280px,1fr)); align-items: start;}
.form__sec-code > input {flex: 1 1 0; margin-right: 10px; height: 80px; line-height: 80px; text-align: center;}
.form__row--submit {display: flex !important;}
.form__row--submit button {min-width: auto; white-space: nowrap;}
.form__btn {width: 220px;}


/* CHECKBOXES, RADIO BUTTONS
----------------------------------------------- */
label.has-checkbox, div.has-checkbox label, li.has-checkbox, .has-radiobox label {position: relative; padding-left: 32px; display: block; cursor: pointer;}
.has-checkbox input, .has-radiobox input {appearance: none; -webkit-appearance: none; display: block; width: 22px; height: 22px; cursor: pointer;
	border: 1px solid var(--ui-bdc); background: var(--ui-bg); position: absolute; left: 0; top: 50%; transform: translateY(-50%);}
.has-checkbox input:checked::before {content:"\f00c"; font-weight: var(--ui-fw-fa); font-family:'Font Awesome 5 Pro'; 
	color: var(--ui-accent); position: absolute; bottom: -4px; left: 0px; font-size: 24px;}
.has-radiobox label input {border-radius: 50%;}
.has-radiobox label input:checked::before {content: ''; background-color: var(--ui-accent); 
	width: 12px; height: 12px; border-radius: 50%; position: absolute; left: 4px; top: 4px;}
.has-checkbox-slider .checkbox, .comments_subscribe, .pm_outbox_copy {display: block; position: relative; padding-left: 50px; cursor: pointer;}
.has-checkbox-slider .checkbox label {cursor: pointer;}
.has-checkbox-slider .checkbox input, .comments_subscribe input, .has-checkbox-slider input.switch, .pm_outbox_copy input {
	appearance: none; -webkit-appearance: none; display: inline-block; transition: all .2s linear;
	height: 22px; width: 40px; border-radius: 11px; background-color: var(--ui-bg-darker); cursor: pointer;
	box-shadow: var(--ui-bsh-inset); position: absolute; left: 0; top: 50%; margin-top: -11px;}
.has-checkbox-slider .checkbox input::before, .comments_subscribe input::before, .pm_outbox_copy input::before, 
.has-checkbox-slider input.switch::before {content: ''; width: 20px; height: 20px; border-radius: 10px; 
	position: absolute; left: 1px; top: 1px; background-color: var(--ui-bg); transition: all .2s linear;}
.has-checkbox-slider .checkbox input:checked, .comments_subscribe input:checked, 
.has-checkbox-slider input.switch:checked, .pm_outbox_copy input:checked {background-color: var(--ui-green);}
.has-checkbox-slider .checkbox input:checked::before, .comments_subscribe input:checked::before, 
.has-checkbox-slider input.switch:checked::before, .pm_outbox_copy input:checked::before {left: 19px;}


/* STATS, PM, TABLES
----------------------------------------------- */
.stats__list, .stats__latest {min-width: 200px; display: grid; gap: 10px;}
.stats__list .serv__subtitle, .pmessages__status .serv__subtitle {margin-bottom: 0;}

.pmessages__links li {white-space: nowrap; min-width: auto;}
.pm_progress_bar {border-radius: 3px; margin: 10px 0; overflow: hidden; background-color: var(--ui-bg-darker); 
	box-shadow: var(--ui-bsh-inset);}
.pm_progress_bar span {background-color: var(--ui-green); font-size: 0; height: 20px; display: block;}
.pmessages-item {border: 1px solid var(--ui-bdc); padding: 15px; gap: 15px;}
.pmessages-item__img {width: 60px; height: 60px; border-radius: 50%;}
.pmessages-item__text {margin: 6px 0 10px 0;}
.pmessages-item__meta > span {font-size: 13px;}
.pm tr td:first-child {width: 36px;}
.pm select {width:100%; margin-bottom:10px;}


/* USER PROFILE, USER POPUP
----------------------------------------------- */
.us__one {background: url(../dleimages/usp-bg.jpg) center center / cover no-repeat; color: #fff; 
	background-color: var(--ui-accent); background-blend-mode: darken; 
	position: relative; padding: 20px; padding-left: 160px;}
.us__img {width: 100px; height: 100px; border-radius: 50%; position: absolute; left: 30px; bottom: -30px;}
.us__name {font-size: 24px; font-weight: var(--ui-fw-bolder);}
.us__status {margin-top: 10px; font-size: 13px; text-transform: uppercase; gap: 10px; display: inline-flex; 
	height: 30px; border-radius: 15px; background-color: var(--ui-red); color: #fff; padding: 0 15px; width: auto;}
.us__status.on {background-color: var(--ui-green);}
.us__two {background-color: var(--ui-bg-darker); padding: 10px 20px; padding-left: 160px; gap: 20px; font-size: 18px;}
.us__info-caption {font-size: 13px; color: var(--ui-tt-fade); margin-left: 3px;}
.us__btn a {border: 1px solid var(--ui-accent); color: var(--ui-accent); padding: 0 15px; height: 30px; white-space: nowrap;
	border-radius: 15px; font-size: 13px; text-transform: uppercase; display: flex; align-items: center;}
.us__three {border: 10px solid var(--ui-bg-darker); border-top: 0; padding: 10px 20px 20px 150px; margin-bottom: 30px;}
.us__list li {position: relative; padding: 8px 0; padding-left: 200px; min-height: 32px;}
.us__list li:nth-child(2n) {background-color: var(--ui-bg-darker);}
.us__list li > span:first-child {position: absolute; left: 20px; top: 50%; transform: translateY(-50%); color: var(--ui-tt-fade); font-size: 13px;}

.dle-popup-userprofile .ui-dialog-content {padding: 0;}
@media screen and (min-width: 760px) {
	.dle-popup-userprofile .ui-dialog-titlebar {position: absolute; left: 0; top: 0; width: 100%; border: 0; 
		z-index: 10; color: #fff; padding-left: 160px; padding-top: 10px; background: none;}
	.dle-popup-userprofile .ui-dialog-title {white-space: nowrap; overflow: hidden; text-overflow: ellipsis;}
	.dle-popup-userprofile .ui-dialog-titlebar-close {margin-right: -20px;}
	.us--card .us__one {padding-top: 43px; border-radius: 10px 10px 0 0;}
}
.us--card .us__three {padding: 10px 30px 20px 30px; border: 0; margin: 0;}
.us--card .us__list li {padding-left: 130px; background: none; border-bottom: 1px dashed var(--ui-bdc);}
.us--card .us__list li > span:first-child {left: 0px;}

@media screen and (max-width: 760px) {
	.us__one {padding: 20px 10px 20px 80px;}
	.us__name {font-size: 16px;}
	.us__img {width: 60px; height: 60px; left: 10px; bottom: auto; top: 50%; margin-top: -30px;}
	.us__two {padding: 20px 10px; gap: 20px 10px; justify-content: center;}
	.us__btn {justify-content: center; min-width: 100%;}
	.us__three {padding: 0; border: 0;}
	.us__list li {padding-left: 150px; font-size: 13px;}
	.us__list li.d-flex {display: block; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;}
	.us__list li.d-flex a {margin-left: 5px;}
	.us__list li > span:first-child {left: 10px;}
	.us--card .us__one {padding: 5px 20px 40px 80px;}
	.us--card .us__two {padding: 10px 20px 20px 80px; background: none; color: #fff; --ui-tt-fade: #fff; 
		position: relative; z-index: 10; margin-top: -37px; justify-content: flex-start; 
		font-size: 13px; white-space: nowrap;}
	.us--card .us__three {padding: 0px 20px 20px 20px;}
}


/* SEARCH PAGE, SEARCH TABLE */
.search-page__simple-form {gap: 10px; margin-bottom: 20px;}
.search-page__ext-form {display: grid; gap: 20px 30px; 
	grid-template-columns: repeat(auto-fill,minmax(300px,1fr)); margin-bottom: 20px;}
.search-page__ext-form-label {margin-bottom: 10px; font-size: 13px; color: var(--ui-tt-fade);}
.search-page__ext-form-content, .search-page__ext-form-input {gap: 10px;}
.search-page__ext-form-input input {width: 40px; padding: 0; text-align: center;}
.search-page__ext-form-row .has-checkbox {margin-top: 10px; font-size: 13px; color: var(--ui-tt-fade);}
.search-page__ext-form-row--category {grid-row: span 2;}
.search-page__ext-form-row--category select {height: 126px;}
.search-page__ext-form-row--wide {grid-column: 1 / -1;}
.search-page__ext-form-row--btns input {min-width: auto; padding: 0 40px;}
@media screen and (max-width: 590px) {
	.search-page__btn-ext {width: 100%; height: 40px;}
}

/*--- AJAX LOADER ---*/
#loading-layer {background-color: rgba(0,0,0,0.66); border-radius: 10px; box-shadow: var(--ui-bsh); 
	padding: 20px; color: #fff; line-height: 1.6; max-width: calc(100w - 30px);}
#loading-layer::before {content: ''; width: 80px; height: 80px; border-radius: 50%; 
	border: 10px solid rgba(255,255,255,0.15); border-left-color: #ffda4a; 
	display: block; box-sizing: border-box; animation: rotate 1s linear infinite;}
@keyframes rotate { 100% {transform: rotate(360deg);} }
#loading-layer svg {display: none;}
#loading-layer.withtext {position: relative; padding: 15px 20px 15px 80px; min-height: 60px;}
#loading-layer.withtext::before {width: 40px; height: 40px; border-width: 5px; 
	position: absolute; left: 20px; top: 50%; margin-top: -20px;}


/*--- QUOTES, SPOILERS, HIDDEN TEXT, SCRIPTCODE ---*/
.scriptcode, .title_spoiler, .text_spoiler { padding: 3px 5px; background: #f0f0f0; border: 1px solid #e3e3e3; }
.title_quote {background-color: #f1ebdf; color: #726e6a; padding: 5px 15px; font-size: 13px;}
.quote {margin-bottom: 20px; padding: 15px; padding-left: 100px; position: relative; font-size: 14px;
	background: #f9f2e8 url(../dleimages/quotes.svg) 30px center /  40px no-repeat;}
.quote23::before {content:"\f10e"; font-family:'Font Awesome 5 Pro'; font-weight: var(--ui-fw-fa); 
	position: absolute; left: 30px; top: 12px; color: var(--accent); font-size: 24px;}
.comm__main .quote {margin: 0 0 10px 0; font-size: 14px; padding: 13px 15px 10px 40px; 
	background-size: 20px; background-position: 10px 15px;}
.title_spoiler {margin-top: 2px; }
.text_spoiler { margin-bottom: 2px; }
.title_spoiler img { vertical-align: middle !important; margin:0 5px 0 0; border:0;}
.scriptcode { color: #4c6d0f; text-align: left; font-family: "Courier New" }
.title_spoiler { font-weight: normal; }
.text_spoiler { border-top: 0; text-align: justify; }
.hide { background-color: #f0f0f0; padding: 5px; color: #000; margin: 0 0 1em 0 }
.hide a { text-decoration: underline; } 
.hide a:hover { text-decoration: none }
.inhide { border: 1px solid #d1e3ef; padding: 5px; background-color: #fff; margin-bottom: 5px }


/*--- RATING ---*/
.unit-rating {display: inline-flex; position: relative;}
.unit-rating li {background:url(../dleimages/rating.svg) no-repeat; position: relative; z-index: 5;}
.unit-rating li a {display:block; width:17px; height:17px; text-indent: -100px; overflow: hidden;}
.unit-rating:hover li {background-position: 0 -17px; z-index: 10;}
.unit-rating li:hover ~ li {background-position: 0 0; z-index: 5;}
.unit-rating li.current-rating {background-position: 0 -34px; background-repeat: repeat-x; pointer-events: none;
	position:absolute; left: 0; top: 0; height:100%; text-indent: -200px; overflow: hidden; z-index:6;}


/*---BB EDITOR ---*/
.bb-pane {border: 1px solid var(--ui-bdc); background: var(--ui-bg-darker); padding: 5px 10px; margin-bottom: 1px;
	border-radius: 4px 4px 0 0; gap: 5px 5px; position: relative; z-index: 10; border-bottom: 0;
	display: grid; grid-template-columns: repeat(auto-fill,minmax(30px,1fr));}
.bb-btn {display: grid; place-items: center; height: 30px; cursor: pointer; font-size: 14px; border-radius: 3px;}
.bb-btn:hover {background-color: var(--ui-bg-black); color: #fff;}
@font-face {font-family: 'bb-editor-font'; src: url(../webfonts/bb-editor.woff) format('woff'); font-weight: normal; font-style: normal;}
[class^="bb-btn"], [class*=" bb-btn"] {font-family: 'bb-editor-font'; font-style: normal; 
    font-weight: normal; font-variant: normal; text-transform: none; -webkit-font-smoothing: antialiased;-moz-osx-font-smoothing: grayscale;}
#b_b:before {content: "\f032";}
#b_i:before {content: "\f033";}
#b_u:before {content: "\f0cd";}
#b_s:before {content: "\f0cc";}
#b_img:before { content: "\f03e"; }
#b_up:before { content: "\e930"; }
#b_emo:before { content: "\f118"; }
#b_url:before { content: "\f0c1"; }
#b_leech:before { content: "\e98d"; }
#b_mail:before { content: "\f003"; }
#b_video:before { content: "\e913"; }
#b_audio:before { content: "\e911"; }
#b_hide:before { content: "\e9d1"; }
#b_quote:before { content: "\e977"; }
#b_code:before { content: "\f121"; }
#b_left:before { content: "\f036"; }
#b_center:before { content: "\f037"; }
#b_right:before { content: "\f038"; }
#b_color:before { content: "\e601"; }
#b_spoiler:before { content: "\e600"; }
#b_fla:before { content: "\ea8d"; }
#b_yt:before { content: "\f166"; }
#b_tf:before { content: "\ea61"; }
#b_list:before { content: "\f0ca"; }
#b_ol:before { content: "\f0cb"; }
#b_tnl:before { content: "\ea61"; }
#b_br:before { content: "\ea68"; }
#b_pl:before { content: "\ea72"; }
#b_size:before { content: "\f034"; }
#b_font:before { content: "\f031"; }
#b_header:before { content: "\f1dc"; }
#b_sub:before { content: "\f12c"; }
#b_sup:before { content: "\f12b"; }
#b_justify:before { content: "\f039"; }
.bb-pane h1{font-size:36px;margin-top:5px;margin-bottom:5px}
.bb-pane h2{font-size:30px;margin-top:5px;margin-bottom:5px}
.bb-pane h3{font-size:24px;margin-top:5px;margin-bottom:5px}
.bb-pane h4{font-size:18px;margin-top:5px;margin-bottom:5px}
.bb-pane h5{font-size:14px;margin-top:5px;margin-bottom:5px}
.bb-pane h6{font-size:12px;margin-top:5px;margin-bottom:5px}
.bb-pane-dropdown{position:absolute;top:100%;left:0;z-index:1000;display:none;float:left;min-width:180px;padding:5px 0;margin:2px 0 0;list-style:none;font-size:11px;border:1px solid rgba(0, 0, 0, 0.15);border-radius:4px;background:white;box-shadow:0 1px 2px #dadada}
.bb-pane-dropdown > li > a{display:block;padding:3px 10px;clear:both;font-weight:normal;line-height:1.42857;color:#333333;white-space:nowrap}
.bb-pane-dropdown > li > a:hover,.bb-pane-dropdown > li > a:focus{text-decoration:none;color:#262626;background-color:whitesmoke}
.bb-pane-dropdown .color-palette div .color-btn{width:17px;height:17px;padding:0;margin:0;border:1px solid #fff;cursor:pointer}
.bb-pane-dropdown .color-palette{padding:0px 5px}
.bb-editor textarea{margin-top:-1px}


/*--- DROP NENU ---*/
#dropmenudiv {font: 13px Arial; padding: 10px; display: none; background: var(--ui-bg); 
	border-radius: 8px;  box-shadow: 0 0 50px 0 rgba(0,0,0,0.22); z-index:200 !important;}
#dropmenudiv a {display: block; text-decoration: none; padding: 5px 8px; width: 154px;}


/*--- HIGHSLIDE GALLERY ---*/
.highslide-container {z-index: 1099 !important;}
.highslide-wrapper, .highslide-outline {background: #fff; color: #000;}
.highslide-image { border: 2px solid #fff }
.highslide-active-anchor { visibility: hidden } 
.highslide-active-anchor img { visibility: hidden }
.highslide-dimming { background-color: black }
.highslide-html { background-color: white }
.highslide-loading { display: block; color: white; font-size: 9px; font-weight: bold; text-decoration: none; padding: 3px; border: 1px solid white; background-color: black }
a.highslide-full-expand { background: url("../dleimages/fullexpand.gif") no-repeat; display: block; margin: 0 10px 10px 0; width: 34px; height: 34px }
.highslide-display-block { display: block }
.highslide-display-none { display: none }
.highslide-caption { display: none; padding: 5px; background: white }
.highslide-controls { width: 195px; height: 40px; background: url("../../../engine/classes/highslide/graphics/controlbar-black-border.gif") no-repeat 0 -90px; margin-right: 15px; margin-bottom: 10px; margin-top: 10px }
.highslide-controls ul { position: relative; left: 15px; height: 40px; list-style: none; margin: 0; padding: 0; background: url("../../../engine/classes/highslide/graphics/controlbar-black-border.gif") no-repeat 100% -90px }
.highslide-controls li { float: left; padding: 5px 0; }
.highslide-controls a { background: url("../../../engine/classes/highslide/graphics/controlbar-black-border.gif"); display: block; float: left; height: 30px; width: 30px; outline: none }
.highslide-controls a.disabled { cursor: default }
.highslide-controls a span { display: none }
.highslide-controls .highslide-previous a { background-position: 0 0 }
.highslide-controls .highslide-previous a:hover { background-position: 0 -30px }
.highslide-controls .highslide-previous a.disabled { background-position: 0 -60px !important }
.highslide-controls .highslide-play a { background-position: -30px 0 }
.highslide-controls .highslide-play a:hover { background-position: -30px -30px }
.highslide-controls .highslide-play a.disabled { background-position: -30px -60px !important }
.highslide-controls .highslide-pause a { background-position: -60px 0 }
.highslide-controls .highslide-pause a:hover { background-position: -60px -30px }
.highslide-controls .highslide-next a { background-position: -90px 0 }
.highslide-controls .highslide-next a:hover { background-position: -90px -30px }
.highslide-controls .highslide-next a.disabled { background-position: -90px -60px !important }
.highslide-controls .highslide-move a { background-position: -120px 0 }
.highslide-controls .highslide-move a:hover { background-position: -120px -30px }
.highslide-controls .highslide-full-expand a { background-position: -150px 0 }
.highslide-controls .highslide-full-expand a:hover { background-position: -150px -30px }
.highslide-controls .highslide-full-expand a.disabled { background-position: -150px -60px !important }
.highslide-controls .highslide-close a { background-position: -180px 0 }
.highslide-controls .highslide-close a:hover { background-position: -180px -30px }


/*--- TAGS CLOUD ---*/
.clouds_xsmall, .clouds_small, .clouds_medium, .clouds_large, .clouds_xlarge {display:inline-block; 
border-radius:6px; margin:0 3px 6px 0;}
.clouds_xsmall { font-size: 1em }
.clouds_small { font-size: 1.1em; font-weight: bold }
.clouds_medium { font-size: 1.2em; font-weight: bold }
.clouds_large { font-size: 1.3em }
.clouds_xlarge { font-size: 1.4em }
.cloud-tags span a {display:block; padding:5px 7px; border:1px solid var(--ui-bdc);}
.cloud-tags span a:hover {background-color:var(--ui-bg-accent); 
	box-shadow:0 0 10px 0 rgba(0,0,0,0.2); color:var(--ui-tt-on-accent);}
.tags_more {margin-top:10px;}


/*--- SEARCH SUGGESTIONS---*/
#searchsuggestions {z-index: 99998; font-size: 13px; word-wrap: break-word;
	background: var(--ui-bg); box-shadow: 0 10px 20px rgba(0,0,0,0.3); width: 400px;}
#searchsuggestions a, #searchsuggestions span {display: block;}
#searchsuggestions a, #searchsuggestions span.notfound {padding:10px 10px; border-bottom: 1px solid var(--ui-bdc);}
#searchsuggestions a:hover {background-color: var(--ui-bg-darker);}
#searchsuggestions span.searchheading {font-size: 14px;}
#searchsuggestions span.searchheading + span {color: var(--ui-tt-fade);}
#searchsuggestions span.seperator a {padding: 10px; text-align: center; background-color: var(--ui-bg-darker);}
#searchsuggestions span.notfound {padding: 15px;}
#searchsuggestions .break {display: none;}
@media screen and (max-width: 1220px) {
	#searchsuggestions {width: calc(100vw - 40px);}
}

/*--- UI DIALOG ---*/
.ui-front {z-index: 1000;}
.ui-widget-overlay {background: #000; opacity: 0.6; left: 0; top: 0; right: 0; bottom: 0; position: fixed;}
.ui-dialog {background-color: var(--ui-bg); border-radius: 10px; 
	box-shadow: var(--ui-bsh); width: 600px; position: absolute;}
.ui-dialog-titlebar {padding: 15px 30px; border-radius: 10px 10px 0 0;
	display: flex; align-items: center; gap: 10px; background-color: var(--ui-bg-black); color: #fff;}
.ui-dialog-title {font-size: 19px; font-weight: var(--ui-fw-bolder);}
.ui-dialog-titlebar-close {color: #fff; font-size: 24px; width: 40px; height: 40px; 
	overflow: hidden; text-indent: -200px; position: relative; margin-right: -10px; border-radius: 6px;}
.ui-icon-closethick {display: grid; place-items: center; position: absolute; left: 0; top: 0; width: 100%; height: 100%;}
.ui-icon-closethick::before {content:"\f00d"; font-family:'Font Awesome 5 Pro'; font-weight: var(--ui-fw-fa); text-indent: 0;}
.ui-dialog-content {padding: 20px 30px;}
.ui-dialog-buttonpane {padding: 0 30px 20px 30px;}
.ui-dialog-buttonset, .save-buttons {display: flex; justify-content: flex-end; flex-wrap: wrap; gap: 10px;}
.ui-dialog-buttonset button, .save-buttons input.bbcodes {height: 36px; padding: 0 15px; font-size: 14px; 
	flex: 1 1 0; max-width: 100%; min-width: auto; white-space: nowrap;}
.ui-dialog .ui-resizable-se {bottom: 3px; height: 14px; right: 3px; width: 14px;}
.ui-draggable .ui-dialog-titlebar {cursor: move;}
.dle-popup-complaint .ui-dialog-content textarea, .dle-popup-sendpm .ui-dialog-content textarea {margin: 10px 0 20px 0; height: 100px !important;}
.dle-popup-complaint .ui-dialog-content textarea:last-child {margin-bottom: 0;}
.ui-dialog-content br + input, .ui-dialog-content br + select {margin-top: 10px; width: 100% !important;}
@media screen and (max-width: 760px) {
	.ui-dialog-titlebar, .ui-dialog-content, .ui-dialog-buttonpane {padding-left: 20px; padding-right: 20px;}
}


/* ---  UI MENU --- */
.ui-autocomplete { position: absolute; cursor: default; }
.ui-menu { list-style:none; padding: 2px; margin: 0; display:block; float: left; background: #fff 50% bottom repeat-x; border: 1px solid #dedede; color: #222; }
.ui-menu .ui-menu { margin-top: -3px; }
.ui-menu .ui-menu-item { margin:0; padding: 0; float: left; clear: left; width: 100%; }
.ui-menu .ui-menu-item a { text-decoration:none; display:block; padding:.2em .4em; line-height:1.5;}
.ui-menu .ui-menu-item a.ui-state-hover,
.ui-menu .ui-menu-item a.ui-state-active { font-weight: normal; margin: -1px; border: 1px solid #a7a7a7; color: #4e4e4e; font-weight: bold; }


/*--- UPDATES TO NEW VERSIONS ---*/
.comments-tree-list .comments-tree-list {padding-left: 50px;}
.commentsreplyname, .commentsreplymail, #dlereplypopup textarea, #dlereplypopup .comments_subscribe {margin-top: 10px;}
.pollallvotes {text-align: center; margin-top: 10px;}
.comments-edit-area, #dlefastreplycomments {border: 1px solid var(--ui-bd-attention); padding: 10px; margin-bottom: 10px;}
.comments-edit-area .bb-editor textarea, #dlefastreplycomments textarea, #dlereplypopup textarea {height: 140px !important;}
#dlefastreplycomments textarea, #dlefastreplycomments .quick-edit-text {margin: 10px 0;}
#dlefastreplycomments .comments_subscribe {margin-bottom: 10px; margin-top: -5px;}

/*--- 11, 12 ---*/
.emoji {border: none;vertical-align: middle;width: 22px;height: 22px;}
.xfieldsrow {padding-top:5px;clear: both;}
.xfieldscolleft {float: left; width: 30%;}
.xfieldscolright {float: left;width: 70%;}
.file-box {width: 95%;max-width: 437px;border:1px solid #B3B3B3; border-radius: 3px;background-color: #F5F5F5;padding: 10px;margin-top: 10px;}
.qq-uploader {position:relative; width: 100%;}
.qq-upload-drop-area {position:absolute; top:0; left:0; width:100%; height:100%; z-index:2;max-width: 437px;background:#FF9797; text-align:center; }
.qq-upload-drop-area span {display:block; position:absolute; top: 50%; width:100%; margin-top:-8px; font-size:16px;}
.qq-upload-drop-area-active {background:#FF7171;}

div[id*=uploadedfile], .file-preview-box {display: grid !important; gap: 10px !important; padding: 0 !important;
	grid-template-columns: repeat(auto-fill,minmax(115px,1fr)); margin-bottom: 10px;}
.uploadedfile {background-color: var(--ui-bg); border: 1px solid var(--ui-bdc); font-size: 13px;
	box-shadow: 0px 1px 4px rgba(0,0,0,0.15); text-align: center; padding: 10px; border-radius: 4px;}
.uploadedfile .uploadimage {height: 90px; margin: 10px 0; cursor: move;}
.uploadedfile .uploadimage img {width: 100%; height: 100%; object-fit: contain;}
.sortable-ghost {opacity: 0.4;}
.uploadedfile .info {white-space: nowrap; overflow: hidden; text-overflow: ellipsis;}
.uploadedfile .info a {display: block; padding: 5px; background-color: var(--ui-bg-darker);}
.uploadedfile .info a + br + a {background-color: var(--ui-red); color: #fff;}
.btn.disabled, .btn[disabled], fieldset[disabled] .btn {cursor: not-allowed; pointer-events: none; opacity:0.66;}
span[id*=uploadedfile] {margin: 10px 0; display: block;}
.file-preview-card, .folder-preview-card {width: 100% !important; padding: 0 !important;}

.progress {overflow: hidden; margin-top: 10px; margin-bottom: 10px; height: 10px;
	border-radius: 4px; background:var(--ui-bg-darker); box-shadow: var(--ui-bsh-inset);}
.progress .progress-bar {float: left; width: 0%; font-size: 13px; line-height: 20px; color: #fff; 
	text-align: center; background-color:#428bca; transition: width 0.6s ease; border-radius: 4px; height: 8px;}
.progress-bar span{position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip: rect(0 0 0 0); border: 0;}
.progress-blue {background-image: linear-gradient(to bottom, #9bcff5 0%, #6db9f0 100%); 
	background-repeat: repeat-x; border: 1px solid #55aeee;}

.xfieldimagegallery, .comments-image-gallery {display: grid; gap: 10px; grid-template-columns: repeat(auto-fill,minmax(160px,1fr)); margin-bottom: 30px;}
.xfieldimagegallery a, .comments-image-gallery a {display: block; border: 5px solid var(--ui-bg); box-shadow: 0 0 0 1px var(--bdc); 
	position: relative; border-radius: 3px;}
.xfieldimagegallery img, .comments-image-gallery img {display: block; width: 100%; object-fit: cover;aspect-ratio: 3/2; border-radius: 3px;}
.xfieldimagegallery a::before, .comments-image-gallery a::before {content:"\f00e"; font-family:'Font Awesome 5 Pro'; font-weight: var(--ui-fw-fa); 
	position: absolute; right: 5px; top: 5px; border-radius: 3px; width: 30px; height: 30px; font-size: 16px; 
	background-color: rgba(0,0,0,0.6); color: #fff; backdrop-filter: blur(10px); display: grid; place-items: center;}
.dle-captcha { position: relative; }
.dle-captcha:after { clear: both; display: block; content: ""; }
.dle-captcha > a { float: left; margin-right: 5px; }
.dle-captcha img {position: relative; display: block; width: 130px; height: 46px; transition: all ease .2s;}
.dle-captcha > input { float: left; width: 130px; }
.instagram-media, .twitter-tweet {display: inline-block !important;}
.comments-image-gallery {margin-bottom: 15px;}

/*--- 13, 14, 15 ---*/
.emoji_box {width:100%; max-width: 390px;}
.emoji_category {padding:7px; clear:both;}
.emoji_list {margin-top:5px; margin-bottom:5px; width:100%;
	font-family:'Apple Color Emoji', 'Segoe UI Emoji', 'NotoColorEmoji', 'Segoe UI Symbol', 'Android Emoji', 'EmojiSymbols'; font-size:2em;}
.emoji_symbol {float:left; margin-bottom: 10px; width:12.5%; text-align:center;}
.emoji_symbol a,  .emoji_symbol a:hover {cursor: pointer; text-decoration:none;}
.native-emoji {font-size: 1.3em; font-family: 'Apple Color Emoji', 'Segoe UI Emoji', 'NotoColorEmoji', 'Segoe UI Symbol', 'Android Emoji', 'EmojiSymbols';}
.mce-toc {border-bottom: 1px solid var(--bdc); padding-bottom: 15px; margin-bottom: 30px; margin-top: -15px;}
.mce-toc h2 {font-size: 18px; margin-bottom: 10px;}
.mce-toc ul li {position: relative; padding-left: 36px; margin-bottom: 3px;}
.mce-toc a {text-decoration: none; color: var(--tt);}
.mce-toc ul li:before {content: ''; width: 8px; height: 8px; border-radius: 50%; 
	background-color: #fcc506; position: absolute; top: 10px; left: 15px;}
figure {margin: 0;}
figure.align-left {float: left;}
figure.align-right {float: right;}
figure.image.align-center {display: table; margin-left: auto; margin-right: auto;}
figure.image figcaption {padding: 10px; background-color: var(--ui-bg-darker); font-size: 13px;
	caption-side: bottom; word-break: break-word; text-align: center;}
figure.image.align-center figcaption {display: table-caption;}


/* --- ADAPTIVE --- */
@media screen and (max-width: 760px) {
	.serv__gap, .form__row--submit {gap: 10px;}
	.form__row {grid-template-columns: minmax(200px,1fr);}
	.form__table, .form__table tr, .form__table td, .form__table tbody {display: block; width: 100%; min-height: 22px; padding: 0 !important;}
	.form__table tr + tr {padding-top: 20px !important;}
	.form__table .addnews {width: 100%; padding: 0 0 10px 0 !important;}
	.form__find-related {position: static; width: 100%; border-radius: 4px;}
	.qq-upload-button {width: 100% !important;}
	.form__btn {width: 100%;}
}
@media screen and (max-width: 590px) {
	.form__sec-code img {height: 60px; width: 120px;}
	.form__sec-code > input {height: 60px; line-height: 60px;}
	.comments-tree-list .comments-tree-list {padding-left: 20px;}
	.xfieldimagegallery, .comments-image-gallery {grid-template-columns: repeat(auto-fill,minmax(140px,1fr));}

}


/* ==== fontawesome.css ==== */

/*!
 * Font Awesome Pro 5.12.0 by @fontawesome - https://fontawesome.com
 * License - https://fontawesome.com/license (Commercial License)
 */
 
.fa-pull-right:before {order: 10;}
.fa-w100 {width: 100%;}
.fa-dblock {display: block;}
.fa:before,.fab:before,.fad:before,.fal:before,.far:before,.fas:before{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-style:normal;font-variant:normal;text-rendering:auto;line-height:1}
@font-face{font-family:'Font Awesome 5 Brands';font-style:normal;font-weight:400;font-display:swap;
src:url(../webfonts/fa-brands-400.woff2) format("woff2"),url(../webfonts/fa-brands-400.woff) format("woff")}
.fab:before{font-family:'Font Awesome 5 Brands'}
@font-face{font-family:'Font Awesome 5 Pro';font-style:normal;font-weight:300;font-display:swap;
src:url(../webfonts/fa-light-300.woff2) format("woff2"),url(../webfonts/fa-light-300.woff) format("woff")}
.fal:before{font-family:'Font Awesome 5 Pro';font-weight:300}
@font-face{font-family:'Font Awesome 5 Pro';font-style:normal;font-weight:400;font-display:swap;
src:url(../webfonts/fa-regular-400.woff2) format("woff2"),url(../webfonts/fa-regular-400.woff) format("woff")}
.far:before{font-family:'Font Awesome 5 Pro';font-weight:400}
@font-face{font-family:'Font Awesome 5 Pro';font-style:normal;font-weight:900;font-display:swap;
src:url(../webfonts/fa-solid-900.woff2) format("woff2"),url(../webfonts/fa-solid-900.woff) format("woff")}
.fa:before,.fas:before{font-family:'Font Awesome 5 Pro';font-weight:900}


.fa-500px:before{content:"\f26e"}.fa-abacus:before{content:"\f640"}.fa-accessible-icon:before{content:"\f368"}.fa-accusoft:before{content:"\f369"}.fa-acorn:before{content:"\f6ae"}.fa-acquisitions-incorporated:before{content:"\f6af"}.fa-ad:before{content:"\f641"}.fa-address-book:before{content:"\f2b9"}.fa-address-card:before{content:"\f2bb"}.fa-adjust:before{content:"\f042"}.fa-adn:before{content:"\f170"}.fa-adobe:before{content:"\f778"}.fa-adversal:before{content:"\f36a"}.fa-affiliatetheme:before{content:"\f36b"}.fa-air-conditioner:before{content:"\f8f4"}.fa-air-freshener:before{content:"\f5d0"}.fa-airbnb:before{content:"\f834"}.fa-alarm-clock:before{content:"\f34e"}.fa-alarm-exclamation:before{content:"\f843"}.fa-alarm-plus:before{content:"\f844"}.fa-alarm-snooze:before{content:"\f845"}.fa-album:before{content:"\f89f"}.fa-album-collection:before{content:"\f8a0"}.fa-algolia:before{content:"\f36c"}.fa-alicorn:before{content:"\f6b0"}.fa-alien:before{content:"\f8f5"}.fa-alien-monster:before{content:"\f8f6"}.fa-align-center:before{content:"\f037"}.fa-align-justify:before{content:"\f039"}.fa-align-left:before{content:"\f036"}.fa-align-right:before{content:"\f038"}.fa-align-slash:before{content:"\f846"}.fa-alipay:before{content:"\f642"}.fa-allergies:before{content:"\f461"}.fa-amazon:before{content:"\f270"}.fa-amazon-pay:before{content:"\f42c"}.fa-ambulance:before{content:"\f0f9"}.fa-american-sign-language-interpreting:before{content:"\f2a3"}.fa-amilia:before{content:"\f36d"}.fa-amp-guitar:before{content:"\f8a1"}.fa-analytics:before{content:"\f643"}.fa-anchor:before{content:"\f13d"}.fa-android:before{content:"\f17b"}.fa-angel:before{content:"\f779"}.fa-angellist:before{content:"\f209"}.fa-angle-double-down:before{content:"\f103"}.fa-angle-double-left:before{content:"\f100"}.fa-angle-double-right:before{content:"\f101"}.fa-angle-double-up:before{content:"\f102"}.fa-angle-down:before{content:"\f107"}.fa-angle-left:before{content:"\f104"}.fa-angle-right:before{content:"\f105"}.fa-angle-up:before{content:"\f106"}.fa-angry:before{content:"\f556"}.fa-angrycreative:before{content:"\f36e"}.fa-angular:before{content:"\f420"}.fa-ankh:before{content:"\f644"}.fa-app-store:before{content:"\f36f"}.fa-app-store-ios:before{content:"\f370"}.fa-apper:before{content:"\f371"}.fa-apple:before{content:"\f179"}.fa-apple-alt:before{content:"\f5d1"}.fa-apple-crate:before{content:"\f6b1"}.fa-apple-pay:before{content:"\f415"}.fa-archive:before{content:"\f187"}.fa-archway:before{content:"\f557"}.fa-arrow-alt-circle-down:before{content:"\f358"}.fa-arrow-alt-circle-left:before{content:"\f359"}.fa-arrow-alt-circle-right:before{content:"\f35a"}.fa-arrow-alt-circle-up:before{content:"\f35b"}.fa-arrow-alt-down:before{content:"\f354"}.fa-arrow-alt-from-bottom:before{content:"\f346"}.fa-arrow-alt-from-left:before{content:"\f347"}.fa-arrow-alt-from-right:before{content:"\f348"}.fa-arrow-alt-from-top:before{content:"\f349"}.fa-arrow-alt-left:before{content:"\f355"}.fa-arrow-alt-right:before{content:"\f356"}.fa-arrow-alt-square-down:before{content:"\f350"}.fa-arrow-alt-square-left:before{content:"\f351"}.fa-arrow-alt-square-right:before{content:"\f352"}.fa-arrow-alt-square-up:before{content:"\f353"}.fa-arrow-alt-to-bottom:before{content:"\f34a"}.fa-arrow-alt-to-left:before{content:"\f34b"}.fa-arrow-alt-to-right:before{content:"\f34c"}.fa-arrow-alt-to-top:before{content:"\f34d"}.fa-arrow-alt-up:before{content:"\f357"}.fa-arrow-circle-down:before{content:"\f0ab"}.fa-arrow-circle-left:before{content:"\f0a8"}.fa-arrow-circle-right:before{content:"\f0a9"}.fa-arrow-circle-up:before{content:"\f0aa"}.fa-arrow-down:before{content:"\f063"}.fa-arrow-from-bottom:before{content:"\f342"}.fa-arrow-from-left:before{content:"\f343"}.fa-arrow-from-right:before{content:"\f344"}.fa-arrow-from-top:before{content:"\f345"}.fa-arrow-left:before{content:"\f060"}.fa-arrow-right:before{content:"\f061"}.fa-arrow-square-down:before{content:"\f339"}.fa-arrow-square-left:before{content:"\f33a"}.fa-arrow-square-right:before{content:"\f33b"}.fa-arrow-square-up:before{content:"\f33c"}.fa-arrow-to-bottom:before{content:"\f33d"}.fa-arrow-to-left:before{content:"\f33e"}.fa-arrow-to-right:before{content:"\f340"}.fa-arrow-to-top:before{content:"\f341"}.fa-arrow-up:before{content:"\f062"}.fa-arrows:before{content:"\f047"}.fa-arrows-alt:before{content:"\f0b2"}.fa-arrows-alt-h:before{content:"\f337"}.fa-arrows-alt-v:before{content:"\f338"}.fa-arrows-h:before{content:"\f07e"}.fa-arrows-v:before{content:"\f07d"}.fa-artstation:before{content:"\f77a"}.fa-assistive-listening-systems:before{content:"\f2a2"}.fa-asterisk:before{content:"\f069"}.fa-asymmetrik:before{content:"\f372"}.fa-at:before{content:"\f1fa"}.fa-atlas:before{content:"\f558"}.fa-atlassian:before{content:"\f77b"}.fa-atom:before{content:"\f5d2"}.fa-atom-alt:before{content:"\f5d3"}.fa-audible:before{content:"\f373"}.fa-audio-description:before{content:"\f29e"}.fa-autoprefixer:before{content:"\f41c"}.fa-avianex:before{content:"\f374"}.fa-aviato:before{content:"\f421"}.fa-award:before{content:"\f559"}.fa-aws:before{content:"\f375"}.fa-axe:before{content:"\f6b2"}.fa-axe-battle:before{content:"\f6b3"}.fa-baby:before{content:"\f77c"}.fa-baby-carriage:before{content:"\f77d"}.fa-backpack:before{content:"\f5d4"}.fa-backspace:before{content:"\f55a"}.fa-backward:before{content:"\f04a"}.fa-bacon:before{content:"\f7e5"}.fa-badge:before{content:"\f335"}.fa-badge-check:before{content:"\f336"}.fa-badge-dollar:before{content:"\f645"}.fa-badge-percent:before{content:"\f646"}.fa-badge-sheriff:before{content:"\f8a2"}.fa-badger-honey:before{content:"\f6b4"}.fa-bags-shopping:before{content:"\f847"}.fa-bahai:before{content:"\f666"}.fa-balance-scale:before{content:"\f24e"}.fa-balance-scale-left:before{content:"\f515"}.fa-balance-scale-right:before{content:"\f516"}.fa-ball-pile:before{content:"\f77e"}.fa-ballot:before{content:"\f732"}.fa-ballot-check:before{content:"\f733"}.fa-ban:before{content:"\f05e"}.fa-band-aid:before{content:"\f462"}.fa-bandcamp:before{content:"\f2d5"}.fa-banjo:before{content:"\f8a3"}.fa-barcode:before{content:"\f02a"}.fa-barcode-alt:before{content:"\f463"}.fa-barcode-read:before{content:"\f464"}.fa-barcode-scan:before{content:"\f465"}.fa-bars:before{content:"\f0c9"}.fa-baseball:before{content:"\f432"}.fa-baseball-ball:before{content:"\f433"}.fa-basketball-ball:before{content:"\f434"}.fa-basketball-hoop:before{content:"\f435"}.fa-bat:before{content:"\f6b5"}.fa-bath:before{content:"\f2cd"}.fa-battery-bolt:before{content:"\f376"}.fa-battery-empty:before{content:"\f244"}.fa-battery-full:before{content:"\f240"}.fa-battery-half:before{content:"\f242"}.fa-battery-quarter:before{content:"\f243"}.fa-battery-slash:before{content:"\f377"}.fa-battery-three-quarters:before{content:"\f241"}.fa-battle-net:before{content:"\f835"}.fa-bed:before{content:"\f236"}.fa-bed-alt:before{content:"\f8f7"}.fa-bed-bunk:before{content:"\f8f8"}.fa-bed-empty:before{content:"\f8f9"}.fa-beer:before{content:"\f0fc"}.fa-behance:before{content:"\f1b4"}.fa-behance-square:before{content:"\f1b5"}.fa-bell:before{content:"\f0f3"}.fa-bell-exclamation:before{content:"\f848"}.fa-bell-on:before{content:"\f8fa"}.fa-bell-plus:before{content:"\f849"}.fa-bell-school:before{content:"\f5d5"}.fa-bell-school-slash:before{content:"\f5d6"}.fa-bell-slash:before{content:"\f1f6"}.fa-bells:before{content:"\f77f"}.fa-betamax:before{content:"\f8a4"}.fa-bezier-curve:before{content:"\f55b"}.fa-bible:before{content:"\f647"}.fa-bicycle:before{content:"\f206"}.fa-biking:before{content:"\f84a"}.fa-biking-mountain:before{content:"\f84b"}.fa-bimobject:before{content:"\f378"}.fa-binoculars:before{content:"\f1e5"}.fa-biohazard:before{content:"\f780"}.fa-birthday-cake:before{content:"\f1fd"}.fa-bitbucket:before{content:"\f171"}.fa-bitcoin:before{content:"\f379"}.fa-bity:before{content:"\f37a"}.fa-black-tie:before{content:"\f27e"}.fa-blackberry:before{content:"\f37b"}.fa-blanket:before{content:"\f498"}.fa-blender:before{content:"\f517"}.fa-blender-phone:before{content:"\f6b6"}.fa-blind:before{content:"\f29d"}.fa-blinds:before{content:"\f8fb"}.fa-blinds-open:before{content:"\f8fc"}.fa-blinds-raised:before{content:"\f8fd"}.fa-blog:before{content:"\f781"}.fa-blogger:before{content:"\f37c"}.fa-blogger-b:before{content:"\f37d"}.fa-bluetooth:before{content:"\f293"}.fa-bluetooth-b:before{content:"\f294"}.fa-bold:before{content:"\f032"}.fa-bolt:before{content:"\f0e7"}.fa-bomb:before{content:"\f1e2"}.fa-bone:before{content:"\f5d7"}.fa-bone-break:before{content:"\f5d8"}.fa-bong:before{content:"\f55c"}.fa-book:before{content:"\f02d"}.fa-book-alt:before{content:"\f5d9"}.fa-book-dead:before{content:"\f6b7"}.fa-book-heart:before{content:"\f499"}.fa-book-medical:before{content:"\f7e6"}.fa-book-open:before{content:"\f518"}.fa-book-reader:before{content:"\f5da"}.fa-book-spells:before{content:"\f6b8"}.fa-book-user:before{content:"\f7e7"}.fa-bookmark:before{content:"\f02e"}.fa-books:before{content:"\f5db"}.fa-books-medical:before{content:"\f7e8"}.fa-boombox:before{content:"\f8a5"}.fa-boot:before{content:"\f782"}.fa-booth-curtain:before{content:"\f734"}.fa-bootstrap:before{content:"\f836"}.fa-border-all:before{content:"\f84c"}.fa-border-bottom:before{content:"\f84d"}.fa-border-center-h:before{content:"\f89c"}.fa-border-center-v:before{content:"\f89d"}.fa-border-inner:before{content:"\f84e"}.fa-border-left:before{content:"\f84f"}.fa-border-none:before{content:"\f850"}.fa-border-outer:before{content:"\f851"}.fa-border-right:before{content:"\f852"}.fa-border-style:before{content:"\f853"}.fa-border-style-alt:before{content:"\f854"}.fa-border-top:before{content:"\f855"}.fa-bow-arrow:before{content:"\f6b9"}.fa-bowling-ball:before{content:"\f436"}.fa-bowling-pins:before{content:"\f437"}.fa-box:before{content:"\f466"}.fa-box-alt:before{content:"\f49a"}.fa-box-ballot:before{content:"\f735"}.fa-box-check:before{content:"\f467"}.fa-box-fragile:before{content:"\f49b"}.fa-box-full:before{content:"\f49c"}.fa-box-heart:before{content:"\f49d"}.fa-box-open:before{content:"\f49e"}.fa-box-up:before{content:"\f49f"}.fa-box-usd:before{content:"\f4a0"}.fa-boxes:before{content:"\f468"}.fa-boxes-alt:before{content:"\f4a1"}.fa-boxing-glove:before{content:"\f438"}.fa-brackets:before{content:"\f7e9"}.fa-brackets-curly:before{content:"\f7ea"}.fa-braille:before{content:"\f2a1"}.fa-brain:before{content:"\f5dc"}.fa-bread-loaf:before{content:"\f7eb"}.fa-bread-slice:before{content:"\f7ec"}.fa-briefcase:before{content:"\f0b1"}.fa-briefcase-medical:before{content:"\f469"}.fa-bring-forward:before{content:"\f856"}.fa-bring-front:before{content:"\f857"}.fa-broadcast-tower:before{content:"\f519"}.fa-broom:before{content:"\f51a"}.fa-browser:before{content:"\f37e"}.fa-brush:before{content:"\f55d"}.fa-btc:before{content:"\f15a"}.fa-buffer:before{content:"\f837"}.fa-bug:before{content:"\f188"}.fa-building:before{content:"\f1ad"}.fa-bullhorn:before{content:"\f0a1"}.fa-bullseye:before{content:"\f140"}.fa-bullseye-arrow:before{content:"\f648"}.fa-bullseye-pointer:before{content:"\f649"}.fa-burger-soda:before{content:"\f858"}.fa-burn:before{content:"\f46a"}.fa-buromobelexperte:before{content:"\f37f"}.fa-burrito:before{content:"\f7ed"}.fa-bus:before{content:"\f207"}.fa-bus-alt:before{content:"\f55e"}.fa-bus-school:before{content:"\f5dd"}.fa-business-time:before{content:"\f64a"}.fa-buy-n-large:before{content:"\f8a6"}.fa-buysellads:before{content:"\f20d"}.fa-cabinet-filing:before{content:"\f64b"}.fa-cactus:before{content:"\f8a7"}.fa-calculator:before{content:"\f1ec"}.fa-calculator-alt:before{content:"\f64c"}.fa-calendar:before{content:"\f133"}.fa-calendar-alt:before{content:"\f073"}.fa-calendar-check:before{content:"\f274"}.fa-calendar-day:before{content:"\f783"}.fa-calendar-edit:before{content:"\f333"}.fa-calendar-exclamation:before{content:"\f334"}.fa-calendar-minus:before{content:"\f272"}.fa-calendar-plus:before{content:"\f271"}.fa-calendar-star:before{content:"\f736"}.fa-calendar-times:before{content:"\f273"}.fa-calendar-week:before{content:"\f784"}.fa-camcorder:before{content:"\f8a8"}.fa-camera:before{content:"\f030"}.fa-camera-alt:before{content:"\f332"}.fa-camera-home:before{content:"\f8fe"}.fa-camera-movie:before{content:"\f8a9"}.fa-camera-polaroid:before{content:"\f8aa"}.fa-camera-retro:before{content:"\f083"}.fa-campfire:before{content:"\f6ba"}.fa-campground:before{content:"\f6bb"}.fa-canadian-maple-leaf:before{content:"\f785"}.fa-candle-holder:before{content:"\f6bc"}.fa-candy-cane:before{content:"\f786"}.fa-candy-corn:before{content:"\f6bd"}.fa-cannabis:before{content:"\f55f"}.fa-capsules:before{content:"\f46b"}.fa-car:before{content:"\f1b9"}.fa-car-alt:before{content:"\f5de"}.fa-car-battery:before{content:"\f5df"}.fa-car-building:before{content:"\f859"}.fa-car-bump:before{content:"\f5e0"}.fa-car-bus:before{content:"\f85a"}.fa-car-crash:before{content:"\f5e1"}.fa-car-garage:before{content:"\f5e2"}.fa-car-mechanic:before{content:"\f5e3"}.fa-car-side:before{content:"\f5e4"}.fa-car-tilt:before{content:"\f5e5"}.fa-car-wash:before{content:"\f5e6"}.fa-caravan:before{content:"\f8ff"}.fa-caravan-alt:before{content:"\f900"}.fa-caret-circle-down:before{content:"\f32d"}.fa-caret-circle-left:before{content:"\f32e"}.fa-caret-circle-right:before{content:"\f330"}.fa-caret-circle-up:before{content:"\f331"}.fa-caret-down:before{content:"\f0d7"}.fa-caret-left:before{content:"\f0d9"}.fa-caret-right:before{content:"\f0da"}.fa-caret-square-down:before{content:"\f150"}.fa-caret-square-left:before{content:"\f191"}.fa-caret-square-right:before{content:"\f152"}.fa-caret-square-up:before{content:"\f151"}.fa-caret-up:before{content:"\f0d8"}.fa-carrot:before{content:"\f787"}.fa-cars:before{content:"\f85b"}.fa-cart-arrow-down:before{content:"\f218"}.fa-cart-plus:before{content:"\f217"}.fa-cash-register:before{content:"\f788"}.fa-cassette-tape:before{content:"\f8ab"}.fa-cat:before{content:"\f6be"}.fa-cat-space:before{content:"\f901"}.fa-cauldron:before{content:"\f6bf"}.fa-cc-amazon-pay:before{content:"\f42d"}.fa-cc-amex:before{content:"\f1f3"}.fa-cc-apple-pay:before{content:"\f416"}.fa-cc-diners-club:before{content:"\f24c"}.fa-cc-discover:before{content:"\f1f2"}.fa-cc-jcb:before{content:"\f24b"}.fa-cc-mastercard:before{content:"\f1f1"}.fa-cc-paypal:before{content:"\f1f4"}.fa-cc-stripe:before{content:"\f1f5"}.fa-cc-visa:before{content:"\f1f0"}.fa-cctv:before{content:"\f8ac"}.fa-centercode:before{content:"\f380"}.fa-centos:before{content:"\f789"}.fa-certificate:before{content:"\f0a3"}.fa-chair:before{content:"\f6c0"}.fa-chair-office:before{content:"\f6c1"}.fa-chalkboard:before{content:"\f51b"}.fa-chalkboard-teacher:before{content:"\f51c"}.fa-charging-station:before{content:"\f5e7"}.fa-chart-area:before{content:"\f1fe"}.fa-chart-bar:before{content:"\f080"}.fa-chart-line:before{content:"\f201"}.fa-chart-line-down:before{content:"\f64d"}.fa-chart-network:before{content:"\f78a"}.fa-chart-pie:before{content:"\f200"}.fa-chart-pie-alt:before{content:"\f64e"}.fa-chart-scatter:before{content:"\f7ee"}.fa-check:before{content:"\f00c"}.fa-check-circle:before{content:"\f058"}.fa-check-double:before{content:"\f560"}.fa-check-square:before{content:"\f14a"}.fa-cheese:before{content:"\f7ef"}.fa-cheese-swiss:before{content:"\f7f0"}.fa-cheeseburger:before{content:"\f7f1"}.fa-chess:before{content:"\f439"}.fa-chess-bishop:before{content:"\f43a"}.fa-chess-bishop-alt:before{content:"\f43b"}.fa-chess-board:before{content:"\f43c"}.fa-chess-clock:before{content:"\f43d"}.fa-chess-clock-alt:before{content:"\f43e"}.fa-chess-king:before{content:"\f43f"}.fa-chess-king-alt:before{content:"\f440"}.fa-chess-knight:before{content:"\f441"}.fa-chess-knight-alt:before{content:"\f442"}.fa-chess-pawn:before{content:"\f443"}.fa-chess-pawn-alt:before{content:"\f444"}.fa-chess-queen:before{content:"\f445"}.fa-chess-queen-alt:before{content:"\f446"}.fa-chess-rook:before{content:"\f447"}.fa-chess-rook-alt:before{content:"\f448"}.fa-chevron-circle-down:before{content:"\f13a"}.fa-chevron-circle-left:before{content:"\f137"}.fa-chevron-circle-right:before{content:"\f138"}.fa-chevron-circle-up:before{content:"\f139"}.fa-chevron-double-down:before{content:"\f322"}.fa-chevron-double-left:before{content:"\f323"}.fa-chevron-double-right:before{content:"\f324"}.fa-chevron-double-up:before{content:"\f325"}.fa-chevron-down:before{content:"\f078"}.fa-chevron-left:before{content:"\f053"}.fa-chevron-right:before{content:"\f054"}.fa-chevron-square-down:before{content:"\f329"}.fa-chevron-square-left:before{content:"\f32a"}.fa-chevron-square-right:before{content:"\f32b"}.fa-chevron-square-up:before{content:"\f32c"}.fa-chevron-up:before{content:"\f077"}.fa-child:before{content:"\f1ae"}.fa-chimney:before{content:"\f78b"}.fa-chrome:before{content:"\f268"}.fa-chromecast:before{content:"\f838"}.fa-church:before{content:"\f51d"}.fa-circle:before{content:"\f111"}.fa-circle-notch:before{content:"\f1ce"}.fa-city:before{content:"\f64f"}.fa-clarinet:before{content:"\f8ad"}.fa-claw-marks:before{content:"\f6c2"}.fa-clinic-medical:before{content:"\f7f2"}.fa-clipboard:before{content:"\f328"}.fa-clipboard-check:before{content:"\f46c"}.fa-clipboard-list:before{content:"\f46d"}.fa-clipboard-list-check:before{content:"\f737"}.fa-clipboard-prescription:before{content:"\f5e8"}.fa-clipboard-user:before{content:"\f7f3"}.fa-clock:before{content:"\f017"}.fa-clone:before{content:"\f24d"}.fa-closed-captioning:before{content:"\f20a"}.fa-cloud:before{content:"\f0c2"}.fa-cloud-download:before{content:"\f0ed"}.fa-cloud-download-alt:before{content:"\f381"}.fa-cloud-drizzle:before{content:"\f738"}.fa-cloud-hail:before{content:"\f739"}.fa-cloud-hail-mixed:before{content:"\f73a"}.fa-cloud-meatball:before{content:"\f73b"}.fa-cloud-moon:before{content:"\f6c3"}.fa-cloud-moon-rain:before{content:"\f73c"}.fa-cloud-music:before{content:"\f8ae"}.fa-cloud-rain:before{content:"\f73d"}.fa-cloud-rainbow:before{content:"\f73e"}.fa-cloud-showers:before{content:"\f73f"}.fa-cloud-showers-heavy:before{content:"\f740"}.fa-cloud-sleet:before{content:"\f741"}.fa-cloud-snow:before{content:"\f742"}.fa-cloud-sun:before{content:"\f6c4"}.fa-cloud-sun-rain:before{content:"\f743"}.fa-cloud-upload:before{content:"\f0ee"}.fa-cloud-upload-alt:before{content:"\f382"}.fa-clouds:before{content:"\f744"}.fa-clouds-moon:before{content:"\f745"}.fa-clouds-sun:before{content:"\f746"}.fa-cloudscale:before{content:"\f383"}.fa-cloudsmith:before{content:"\f384"}.fa-cloudversify:before{content:"\f385"}.fa-club:before{content:"\f327"}.fa-cocktail:before{content:"\f561"}.fa-code:before{content:"\f121"}.fa-code-branch:before{content:"\f126"}.fa-code-commit:before{content:"\f386"}.fa-code-merge:before{content:"\f387"}.fa-codepen:before{content:"\f1cb"}.fa-codiepie:before{content:"\f284"}.fa-coffee:before{content:"\f0f4"}.fa-coffee-pot:before{content:"\f902"}.fa-coffee-togo:before{content:"\f6c5"}.fa-coffin:before{content:"\f6c6"}.fa-cog:before{content:"\f013"}.fa-cogs:before{content:"\f085"}.fa-coin:before{content:"\f85c"}.fa-coins:before{content:"\f51e"}.fa-columns:before{content:"\f0db"}.fa-comet:before{content:"\f903"}.fa-comment:before{content:"\f075"}.fa-comment-alt:before{content:"\f27a"}.fa-comment-alt-check:before{content:"\f4a2"}.fa-comment-alt-dollar:before{content:"\f650"}.fa-comment-alt-dots:before{content:"\f4a3"}.fa-comment-alt-edit:before{content:"\f4a4"}.fa-comment-alt-exclamation:before{content:"\f4a5"}.fa-comment-alt-lines:before{content:"\f4a6"}.fa-comment-alt-medical:before{content:"\f7f4"}.fa-comment-alt-minus:before{content:"\f4a7"}.fa-comment-alt-music:before{content:"\f8af"}.fa-comment-alt-plus:before{content:"\f4a8"}.fa-comment-alt-slash:before{content:"\f4a9"}.fa-comment-alt-smile:before{content:"\f4aa"}.fa-comment-alt-times:before{content:"\f4ab"}.fa-comment-check:before{content:"\f4ac"}.fa-comment-dollar:before{content:"\f651"}.fa-comment-dots:before{content:"\f4ad"}.fa-comment-edit:before{content:"\f4ae"}.fa-comment-exclamation:before{content:"\f4af"}.fa-comment-lines:before{content:"\f4b0"}.fa-comment-medical:before{content:"\f7f5"}.fa-comment-minus:before{content:"\f4b1"}.fa-comment-music:before{content:"\f8b0"}.fa-comment-plus:before{content:"\f4b2"}.fa-comment-slash:before{content:"\f4b3"}.fa-comment-smile:before{content:"\f4b4"}.fa-comment-times:before{content:"\f4b5"}.fa-comments:before{content:"\f086"}.fa-comments-alt:before{content:"\f4b6"}.fa-comments-alt-dollar:before{content:"\f652"}.fa-comments-dollar:before{content:"\f653"}.fa-compact-disc:before{content:"\f51f"}.fa-compass:before{content:"\f14e"}.fa-compass-slash:before{content:"\f5e9"}.fa-compress:before{content:"\f066"}.fa-compress-alt:before{content:"\f422"}.fa-compress-arrows-alt:before{content:"\f78c"}.fa-compress-wide:before{content:"\f326"}.fa-computer-classic:before{content:"\f8b1"}.fa-computer-speaker:before{content:"\f8b2"}.fa-concierge-bell:before{content:"\f562"}.fa-confluence:before{content:"\f78d"}.fa-connectdevelop:before{content:"\f20e"}.fa-construction:before{content:"\f85d"}.fa-container-storage:before{content:"\f4b7"}.fa-contao:before{content:"\f26d"}.fa-conveyor-belt:before{content:"\f46e"}.fa-conveyor-belt-alt:before{content:"\f46f"}.fa-cookie:before{content:"\f563"}.fa-cookie-bite:before{content:"\f564"}.fa-copy:before{content:"\f0c5"}.fa-copyright:before{content:"\f1f9"}.fa-corn:before{content:"\f6c7"}.fa-cotton-bureau:before{content:"\f89e"}.fa-couch:before{content:"\f4b8"}.fa-cow:before{content:"\f6c8"}.fa-cowbell:before{content:"\f8b3"}.fa-cowbell-more:before{content:"\f8b4"}.fa-cpanel:before{content:"\f388"}.fa-creative-commons:before{content:"\f25e"}.fa-creative-commons-by:before{content:"\f4e7"}.fa-creative-commons-nc:before{content:"\f4e8"}.fa-creative-commons-nc-eu:before{content:"\f4e9"}.fa-creative-commons-nc-jp:before{content:"\f4ea"}.fa-creative-commons-nd:before{content:"\f4eb"}.fa-creative-commons-pd:before{content:"\f4ec"}.fa-creative-commons-pd-alt:before{content:"\f4ed"}.fa-creative-commons-remix:before{content:"\f4ee"}.fa-creative-commons-sa:before{content:"\f4ef"}.fa-creative-commons-sampling:before{content:"\f4f0"}.fa-creative-commons-sampling-plus:before{content:"\f4f1"}.fa-creative-commons-share:before{content:"\f4f2"}.fa-creative-commons-zero:before{content:"\f4f3"}.fa-credit-card:before{content:"\f09d"}.fa-credit-card-blank:before{content:"\f389"}.fa-credit-card-front:before{content:"\f38a"}.fa-cricket:before{content:"\f449"}.fa-critical-role:before{content:"\f6c9"}.fa-croissant:before{content:"\f7f6"}.fa-crop:before{content:"\f125"}.fa-crop-alt:before{content:"\f565"}.fa-cross:before{content:"\f654"}.fa-crosshairs:before{content:"\f05b"}.fa-crow:before{content:"\f520"}.fa-crown:before{content:"\f521"}.fa-crutch:before{content:"\f7f7"}.fa-crutches:before{content:"\f7f8"}.fa-css3:before{content:"\f13c"}.fa-css3-alt:before{content:"\f38b"}.fa-cube:before{content:"\f1b2"}.fa-cubes:before{content:"\f1b3"}.fa-curling:before{content:"\f44a"}.fa-cut:before{content:"\f0c4"}.fa-cuttlefish:before{content:"\f38c"}.fa-d-and-d:before{content:"\f38d"}.fa-d-and-d-beyond:before{content:"\f6ca"}.fa-dagger:before{content:"\f6cb"}.fa-dashcube:before{content:"\f210"}.fa-database:before{content:"\f1c0"}.fa-deaf:before{content:"\f2a4"}.fa-debug:before{content:"\f7f9"}.fa-deer:before{content:"\f78e"}.fa-deer-rudolph:before{content:"\f78f"}.fa-delicious:before{content:"\f1a5"}.fa-democrat:before{content:"\f747"}.fa-deploydog:before{content:"\f38e"}.fa-deskpro:before{content:"\f38f"}.fa-desktop:before{content:"\f108"}.fa-desktop-alt:before{content:"\f390"}.fa-dev:before{content:"\f6cc"}.fa-deviantart:before{content:"\f1bd"}.fa-dewpoint:before{content:"\f748"}.fa-dharmachakra:before{content:"\f655"}.fa-dhl:before{content:"\f790"}.fa-diagnoses:before{content:"\f470"}.fa-diamond:before{content:"\f219"}.fa-diaspora:before{content:"\f791"}.fa-dice:before{content:"\f522"}.fa-dice-d10:before{content:"\f6cd"}.fa-dice-d12:before{content:"\f6ce"}.fa-dice-d20:before{content:"\f6cf"}.fa-dice-d4:before{content:"\f6d0"}.fa-dice-d6:before{content:"\f6d1"}.fa-dice-d8:before{content:"\f6d2"}.fa-dice-five:before{content:"\f523"}.fa-dice-four:before{content:"\f524"}.fa-dice-one:before{content:"\f525"}.fa-dice-six:before{content:"\f526"}.fa-dice-three:before{content:"\f527"}.fa-dice-two:before{content:"\f528"}.fa-digg:before{content:"\f1a6"}.fa-digging:before{content:"\f85e"}.fa-digital-ocean:before{content:"\f391"}.fa-digital-tachograph:before{content:"\f566"}.fa-diploma:before{content:"\f5ea"}.fa-directions:before{content:"\f5eb"}.fa-disc-drive:before{content:"\f8b5"}.fa-discord:before{content:"\f392"}.fa-discourse:before{content:"\f393"}.fa-disease:before{content:"\f7fa"}.fa-divide:before{content:"\f529"}.fa-dizzy:before{content:"\f567"}.fa-dna:before{content:"\f471"}.fa-do-not-enter:before{content:"\f5ec"}.fa-dochub:before{content:"\f394"}.fa-docker:before{content:"\f395"}.fa-dog:before{content:"\f6d3"}.fa-dog-leashed:before{content:"\f6d4"}.fa-dollar-sign:before{content:"\f155"}.fa-dolly:before{content:"\f472"}.fa-dolly-empty:before{content:"\f473"}.fa-dolly-flatbed:before{content:"\f474"}.fa-dolly-flatbed-alt:before{content:"\f475"}.fa-dolly-flatbed-empty:before{content:"\f476"}.fa-donate:before{content:"\f4b9"}.fa-door-closed:before{content:"\f52a"}.fa-door-open:before{content:"\f52b"}.fa-dot-circle:before{content:"\f192"}.fa-dove:before{content:"\f4ba"}.fa-download:before{content:"\f019"}.fa-draft2digital:before{content:"\f396"}.fa-drafting-compass:before{content:"\f568"}.fa-dragon:before{content:"\f6d5"}.fa-draw-circle:before{content:"\f5ed"}.fa-draw-polygon:before{content:"\f5ee"}.fa-draw-square:before{content:"\f5ef"}.fa-dreidel:before{content:"\f792"}.fa-dribbble:before{content:"\f17d"}.fa-dribbble-square:before{content:"\f397"}.fa-drone:before{content:"\f85f"}.fa-drone-alt:before{content:"\f860"}.fa-dropbox:before{content:"\f16b"}.fa-drum:before{content:"\f569"}.fa-drum-steelpan:before{content:"\f56a"}.fa-drumstick:before{content:"\f6d6"}.fa-drumstick-bite:before{content:"\f6d7"}.fa-drupal:before{content:"\f1a9"}.fa-dryer:before{content:"\f861"}.fa-dryer-alt:before{content:"\f862"}.fa-duck:before{content:"\f6d8"}.fa-dumbbell:before{content:"\f44b"}.fa-dumpster:before{content:"\f793"}.fa-dumpster-fire:before{content:"\f794"}.fa-dungeon:before{content:"\f6d9"}.fa-dyalog:before{content:"\f399"}.fa-ear:before{content:"\f5f0"}.fa-ear-muffs:before{content:"\f795"}.fa-earlybirds:before{content:"\f39a"}.fa-ebay:before{content:"\f4f4"}.fa-eclipse:before{content:"\f749"}.fa-eclipse-alt:before{content:"\f74a"}.fa-edge:before{content:"\f282"}.fa-edit:before{content:"\f044"}.fa-egg:before{content:"\f7fb"}.fa-egg-fried:before{content:"\f7fc"}.fa-eject:before{content:"\f052"}.fa-elementor:before{content:"\f430"}.fa-elephant:before{content:"\f6da"}.fa-ellipsis-h:before{content:"\f141"}.fa-ellipsis-h-alt:before{content:"\f39b"}.fa-ellipsis-v:before{content:"\f142"}.fa-ellipsis-v-alt:before{content:"\f39c"}.fa-ello:before{content:"\f5f1"}.fa-ember:before{content:"\f423"}.fa-empire:before{content:"\f1d1"}.fa-empty-set:before{content:"\f656"}.fa-engine-warning:before{content:"\f5f2"}.fa-envelope:before{content:"\f0e0"}.fa-envelope-open:before{content:"\f2b6"}.fa-envelope-open-dollar:before{content:"\f657"}.fa-envelope-open-text:before{content:"\f658"}.fa-envelope-square:before{content:"\f199"}.fa-envira:before{content:"\f299"}.fa-equals:before{content:"\f52c"}.fa-eraser:before{content:"\f12d"}.fa-erlang:before{content:"\f39d"}.fa-ethereum:before{content:"\f42e"}.fa-ethernet:before{content:"\f796"}.fa-etsy:before{content:"\f2d7"}.fa-euro-sign:before{content:"\f153"}.fa-evernote:before{content:"\f839"}.fa-exchange:before{content:"\f0ec"}.fa-exchange-alt:before{content:"\f362"}.fa-exclamation:before{content:"\f12a"}.fa-exclamation-circle:before{content:"\f06a"}.fa-exclamation-square:before{content:"\f321"}.fa-exclamation-triangle:before{content:"\f071"}.fa-expand:before{content:"\f065"}.fa-expand-alt:before{content:"\f424"}.fa-expand-arrows:before{content:"\f31d"}.fa-expand-arrows-alt:before{content:"\f31e"}.fa-expand-wide:before{content:"\f320"}.fa-expeditedssl:before{content:"\f23e"}.fa-external-link:before{content:"\f08e"}.fa-external-link-alt:before{content:"\f35d"}.fa-external-link-square:before{content:"\f14c"}.fa-external-link-square-alt:before{content:"\f360"}.fa-eye:before{content:"\f06e"}.fa-eye-dropper:before{content:"\f1fb"}.fa-eye-evil:before{content:"\f6db"}.fa-eye-slash:before{content:"\f070"}.fa-facebook:before{content:"\f09a"}.fa-facebook-f:before{content:"\f39e"}.fa-facebook-messenger:before{content:"\f39f"}.fa-facebook-square:before{content:"\f082"}.fa-fan:before{content:"\f863"}.fa-fan-table:before{content:"\f904"}.fa-fantasy-flight-games:before{content:"\f6dc"}.fa-farm:before{content:"\f864"}.fa-fast-backward:before{content:"\f049"}.fa-fast-forward:before{content:"\f050"}.fa-faucet:before{content:"\f905"}.fa-faucet-drip:before{content:"\f906"}.fa-fax:before{content:"\f1ac"}.fa-feather:before{content:"\f52d"}.fa-feather-alt:before{content:"\f56b"}.fa-fedex:before{content:"\f797"}.fa-fedora:before{content:"\f798"}.fa-female:before{content:"\f182"}.fa-field-hockey:before{content:"\f44c"}.fa-fighter-jet:before{content:"\f0fb"}.fa-figma:before{content:"\f799"}.fa-file:before{content:"\f15b"}.fa-file-alt:before{content:"\f15c"}.fa-file-archive:before{content:"\f1c6"}.fa-file-audio:before{content:"\f1c7"}.fa-file-certificate:before{content:"\f5f3"}.fa-file-chart-line:before{content:"\f659"}.fa-file-chart-pie:before{content:"\f65a"}.fa-file-check:before{content:"\f316"}.fa-file-code:before{content:"\f1c9"}.fa-file-contract:before{content:"\f56c"}.fa-file-csv:before{content:"\f6dd"}.fa-file-download:before{content:"\f56d"}.fa-file-edit:before{content:"\f31c"}.fa-file-excel:before{content:"\f1c3"}.fa-file-exclamation:before{content:"\f31a"}.fa-file-export:before{content:"\f56e"}.fa-file-image:before{content:"\f1c5"}.fa-file-import:before{content:"\f56f"}.fa-file-invoice:before{content:"\f570"}.fa-file-invoice-dollar:before{content:"\f571"}.fa-file-medical:before{content:"\f477"}.fa-file-medical-alt:before{content:"\f478"}.fa-file-minus:before{content:"\f318"}.fa-file-music:before{content:"\f8b6"}.fa-file-pdf:before{content:"\f1c1"}.fa-file-plus:before{content:"\f319"}.fa-file-powerpoint:before{content:"\f1c4"}.fa-file-prescription:before{content:"\f572"}.fa-file-search:before{content:"\f865"}.fa-file-signature:before{content:"\f573"}.fa-file-spreadsheet:before{content:"\f65b"}.fa-file-times:before{content:"\f317"}.fa-file-upload:before{content:"\f574"}.fa-file-user:before{content:"\f65c"}.fa-file-video:before{content:"\f1c8"}.fa-file-word:before{content:"\f1c2"}.fa-files-medical:before{content:"\f7fd"}.fa-fill:before{content:"\f575"}.fa-fill-drip:before{content:"\f576"}.fa-film:before{content:"\f008"}.fa-film-alt:before{content:"\f3a0"}.fa-film-canister:before{content:"\f8b7"}.fa-filter:before{content:"\f0b0"}.fa-fingerprint:before{content:"\f577"}.fa-fire:before{content:"\f06d"}.fa-fire-alt:before{content:"\f7e4"}.fa-fire-extinguisher:before{content:"\f134"}.fa-fire-smoke:before{content:"\f74b"}.fa-firefox:before{content:"\f269"}.fa-firefox-browser:before{content:"\f907"}.fa-fireplace:before{content:"\f79a"}.fa-first-aid:before{content:"\f479"}.fa-first-order:before{content:"\f2b0"}.fa-first-order-alt:before{content:"\f50a"}.fa-firstdraft:before{content:"\f3a1"}.fa-fish:before{content:"\f578"}.fa-fish-cooked:before{content:"\f7fe"}.fa-fist-raised:before{content:"\f6de"}.fa-flag:before{content:"\f024"}.fa-flag-alt:before{content:"\f74c"}.fa-flag-checkered:before{content:"\f11e"}.fa-flag-usa:before{content:"\f74d"}.fa-flame:before{content:"\f6df"}.fa-flashlight:before{content:"\f8b8"}.fa-flask:before{content:"\f0c3"}.fa-flask-poison:before{content:"\f6e0"}.fa-flask-potion:before{content:"\f6e1"}.fa-flickr:before{content:"\f16e"}.fa-flipboard:before{content:"\f44d"}.fa-flower:before{content:"\f7ff"}.fa-flower-daffodil:before{content:"\f800"}.fa-flower-tulip:before{content:"\f801"}.fa-flushed:before{content:"\f579"}.fa-flute:before{content:"\f8b9"}.fa-flux-capacitor:before{content:"\f8ba"}.fa-fly:before{content:"\f417"}.fa-fog:before{content:"\f74e"}.fa-folder:before{content:"\f07b"}.fa-folder-minus:before{content:"\f65d"}.fa-folder-open:before{content:"\f07c"}.fa-folder-plus:before{content:"\f65e"}.fa-folder-times:before{content:"\f65f"}.fa-folder-tree:before{content:"\f802"}.fa-folders:before{content:"\f660"}.fa-font:before{content:"\f031"}.fa-font-awesome:before{content:"\f2b4"}.fa-font-awesome-alt:before{content:"\f35c"}.fa-font-awesome-flag:before{content:"\f425"}.fa-font-awesome-logo-full:before{content:"\f4e6"}.fa-font-case:before{content:"\f866"}.fa-fonticons:before{content:"\f280"}.fa-fonticons-fi:before{content:"\f3a2"}.fa-football-ball:before{content:"\f44e"}.fa-football-helmet:before{content:"\f44f"}.fa-forklift:before{content:"\f47a"}.fa-fort-awesome:before{content:"\f286"}.fa-fort-awesome-alt:before{content:"\f3a3"}.fa-forumbee:before{content:"\f211"}.fa-forward:before{content:"\f04e"}.fa-foursquare:before{content:"\f180"}.fa-fragile:before{content:"\f4bb"}.fa-free-code-camp:before{content:"\f2c5"}.fa-freebsd:before{content:"\f3a4"}.fa-french-fries:before{content:"\f803"}.fa-frog:before{content:"\f52e"}.fa-frosty-head:before{content:"\f79b"}.fa-frown:before{content:"\f119"}.fa-frown-open:before{content:"\f57a"}.fa-fulcrum:before{content:"\f50b"}.fa-function:before{content:"\f661"}.fa-funnel-dollar:before{content:"\f662"}.fa-futbol:before{content:"\f1e3"}.fa-galactic-republic:before{content:"\f50c"}.fa-galactic-senate:before{content:"\f50d"}.fa-galaxy:before{content:"\f908"}.fa-game-board:before{content:"\f867"}.fa-game-board-alt:before{content:"\f868"}.fa-game-console-handheld:before{content:"\f8bb"}.fa-gamepad:before{content:"\f11b"}.fa-gamepad-alt:before{content:"\f8bc"}.fa-garage:before{content:"\f909"}.fa-garage-car:before{content:"\f90a"}.fa-garage-open:before{content:"\f90b"}.fa-gas-pump:before{content:"\f52f"}.fa-gas-pump-slash:before{content:"\f5f4"}.fa-gavel:before{content:"\f0e3"}.fa-gem:before{content:"\f3a5"}.fa-genderless:before{content:"\f22d"}.fa-get-pocket:before{content:"\f265"}.fa-gg:before{content:"\f260"}.fa-gg-circle:before{content:"\f261"}.fa-ghost:before{content:"\f6e2"}.fa-gift:before{content:"\f06b"}.fa-gift-card:before{content:"\f663"}.fa-gifts:before{content:"\f79c"}.fa-gingerbread-man:before{content:"\f79d"}.fa-git:before{content:"\f1d3"}.fa-git-alt:before{content:"\f841"}.fa-git-square:before{content:"\f1d2"}.fa-github:before{content:"\f09b"}.fa-github-alt:before{content:"\f113"}.fa-github-square:before{content:"\f092"}.fa-gitkraken:before{content:"\f3a6"}.fa-gitlab:before{content:"\f296"}.fa-gitter:before{content:"\f426"}.fa-glass:before{content:"\f804"}.fa-glass-champagne:before{content:"\f79e"}.fa-glass-cheers:before{content:"\f79f"}.fa-glass-citrus:before{content:"\f869"}.fa-glass-martini:before{content:"\f000"}.fa-glass-martini-alt:before{content:"\f57b"}.fa-glass-whiskey:before{content:"\f7a0"}.fa-glass-whiskey-rocks:before{content:"\f7a1"}.fa-glasses:before{content:"\f530"}.fa-glasses-alt:before{content:"\f5f5"}.fa-glide:before{content:"\f2a5"}.fa-glide-g:before{content:"\f2a6"}.fa-globe:before{content:"\f0ac"}.fa-globe-africa:before{content:"\f57c"}.fa-globe-americas:before{content:"\f57d"}.fa-globe-asia:before{content:"\f57e"}.fa-globe-europe:before{content:"\f7a2"}.fa-globe-snow:before{content:"\f7a3"}.fa-globe-stand:before{content:"\f5f6"}.fa-gofore:before{content:"\f3a7"}.fa-golf-ball:before{content:"\f450"}.fa-golf-club:before{content:"\f451"}.fa-goodreads:before{content:"\f3a8"}.fa-goodreads-g:before{content:"\f3a9"}.fa-google:before{content:"\f1a0"}.fa-google-drive:before{content:"\f3aa"}.fa-google-play:before{content:"\f3ab"}.fa-google-plus:before{content:"\f2b3"}.fa-google-plus-g:before{content:"\f0d5"}.fa-google-plus-square:before{content:"\f0d4"}.fa-google-wallet:before{content:"\f1ee"}.fa-gopuram:before{content:"\f664"}.fa-graduation-cap:before{content:"\f19d"}.fa-gramophone:before{content:"\f8bd"}.fa-gratipay:before{content:"\f184"}.fa-grav:before{content:"\f2d6"}.fa-greater-than:before{content:"\f531"}.fa-greater-than-equal:before{content:"\f532"}.fa-grimace:before{content:"\f57f"}.fa-grin:before{content:"\f580"}.fa-grin-alt:before{content:"\f581"}.fa-grin-beam:before{content:"\f582"}.fa-grin-beam-sweat:before{content:"\f583"}.fa-grin-hearts:before{content:"\f584"}.fa-grin-squint:before{content:"\f585"}.fa-grin-squint-tears:before{content:"\f586"}.fa-grin-stars:before{content:"\f587"}.fa-grin-tears:before{content:"\f588"}.fa-grin-tongue:before{content:"\f589"}.fa-grin-tongue-squint:before{content:"\f58a"}.fa-grin-tongue-wink:before{content:"\f58b"}.fa-grin-wink:before{content:"\f58c"}.fa-grip-horizontal:before{content:"\f58d"}.fa-grip-lines:before{content:"\f7a4"}.fa-grip-lines-vertical:before{content:"\f7a5"}.fa-grip-vertical:before{content:"\f58e"}.fa-gripfire:before{content:"\f3ac"}.fa-grunt:before{content:"\f3ad"}.fa-guitar:before{content:"\f7a6"}.fa-guitar-electric:before{content:"\f8be"}.fa-guitars:before{content:"\f8bf"}.fa-gulp:before{content:"\f3ae"}.fa-h-square:before{content:"\f0fd"}.fa-h1:before{content:"\f313"}.fa-h2:before{content:"\f314"}.fa-h3:before{content:"\f315"}.fa-h4:before{content:"\f86a"}.fa-hacker-news:before{content:"\f1d4"}.fa-hacker-news-square:before{content:"\f3af"}.fa-hackerrank:before{content:"\f5f7"}.fa-hamburger:before{content:"\f805"}.fa-hammer:before{content:"\f6e3"}.fa-hammer-war:before{content:"\f6e4"}.fa-hamsa:before{content:"\f665"}.fa-hand-heart:before{content:"\f4bc"}.fa-hand-holding:before{content:"\f4bd"}.fa-hand-holding-box:before{content:"\f47b"}.fa-hand-holding-heart:before{content:"\f4be"}.fa-hand-holding-magic:before{content:"\f6e5"}.fa-hand-holding-seedling:before{content:"\f4bf"}.fa-hand-holding-usd:before{content:"\f4c0"}.fa-hand-holding-water:before{content:"\f4c1"}.fa-hand-lizard:before{content:"\f258"}.fa-hand-middle-finger:before{content:"\f806"}.fa-hand-paper:before{content:"\f256"}.fa-hand-peace:before{content:"\f25b"}.fa-hand-point-down:before{content:"\f0a7"}.fa-hand-point-left:before{content:"\f0a5"}.fa-hand-point-right:before{content:"\f0a4"}.fa-hand-point-up:before{content:"\f0a6"}.fa-hand-pointer:before{content:"\f25a"}.fa-hand-receiving:before{content:"\f47c"}.fa-hand-rock:before{content:"\f255"}.fa-hand-scissors:before{content:"\f257"}.fa-hand-spock:before{content:"\f259"}.fa-hands:before{content:"\f4c2"}.fa-hands-heart:before{content:"\f4c3"}.fa-hands-helping:before{content:"\f4c4"}.fa-hands-usd:before{content:"\f4c5"}.fa-handshake:before{content:"\f2b5"}.fa-handshake-alt:before{content:"\f4c6"}.fa-hanukiah:before{content:"\f6e6"}.fa-hard-hat:before{content:"\f807"}.fa-hashtag:before{content:"\f292"}.fa-hat-chef:before{content:"\f86b"}.fa-hat-cowboy:before{content:"\f8c0"}.fa-hat-cowboy-side:before{content:"\f8c1"}.fa-hat-santa:before{content:"\f7a7"}.fa-hat-winter:before{content:"\f7a8"}.fa-hat-witch:before{content:"\f6e7"}.fa-hat-wizard:before{content:"\f6e8"}.fa-hdd:before{content:"\f0a0"}.fa-head-side:before{content:"\f6e9"}.fa-head-side-brain:before{content:"\f808"}.fa-head-side-headphones:before{content:"\f8c2"}.fa-head-side-medical:before{content:"\f809"}.fa-head-vr:before{content:"\f6ea"}.fa-heading:before{content:"\f1dc"}.fa-headphones:before{content:"\f025"}.fa-headphones-alt:before{content:"\f58f"}.fa-headset:before{content:"\f590"}.fa-heart:before{content:"\f004"}.fa-heart-broken:before{content:"\f7a9"}.fa-heart-circle:before{content:"\f4c7"}.fa-heart-rate:before{content:"\f5f8"}.fa-heart-square:before{content:"\f4c8"}.fa-heartbeat:before{content:"\f21e"}.fa-heat:before{content:"\f90c"}.fa-helicopter:before{content:"\f533"}.fa-helmet-battle:before{content:"\f6eb"}.fa-hexagon:before{content:"\f312"}.fa-highlighter:before{content:"\f591"}.fa-hiking:before{content:"\f6ec"}.fa-hippo:before{content:"\f6ed"}.fa-hips:before{content:"\f452"}.fa-hire-a-helper:before{content:"\f3b0"}.fa-history:before{content:"\f1da"}.fa-hockey-mask:before{content:"\f6ee"}.fa-hockey-puck:before{content:"\f453"}.fa-hockey-sticks:before{content:"\f454"}.fa-holly-berry:before{content:"\f7aa"}.fa-home:before{content:"\f015"}.fa-home-alt:before{content:"\f80a"}.fa-home-heart:before{content:"\f4c9"}.fa-home-lg:before{content:"\f80b"}.fa-home-lg-alt:before{content:"\f80c"}.fa-hood-cloak:before{content:"\f6ef"}.fa-hooli:before{content:"\f427"}.fa-horizontal-rule:before{content:"\f86c"}.fa-hornbill:before{content:"\f592"}.fa-horse:before{content:"\f6f0"}.fa-horse-head:before{content:"\f7ab"}.fa-horse-saddle:before{content:"\f8c3"}.fa-hospital:before{content:"\f0f8"}.fa-hospital-alt:before{content:"\f47d"}.fa-hospital-symbol:before{content:"\f47e"}.fa-hospital-user:before{content:"\f80d"}.fa-hospitals:before{content:"\f80e"}.fa-hot-tub:before{content:"\f593"}.fa-hotdog:before{content:"\f80f"}.fa-hotel:before{content:"\f594"}.fa-hotjar:before{content:"\f3b1"}.fa-hourglass:before{content:"\f254"}.fa-hourglass-end:before{content:"\f253"}.fa-hourglass-half:before{content:"\f252"}.fa-hourglass-start:before{content:"\f251"}.fa-house:before{content:"\f90d"}.fa-house-damage:before{content:"\f6f1"}.fa-house-day:before{content:"\f90e"}.fa-house-flood:before{content:"\f74f"}.fa-house-leave:before{content:"\f90f"}.fa-house-night:before{content:"\f910"}.fa-house-return:before{content:"\f911"}.fa-house-signal:before{content:"\f912"}.fa-houzz:before{content:"\f27c"}.fa-hryvnia:before{content:"\f6f2"}.fa-html5:before{content:"\f13b"}.fa-hubspot:before{content:"\f3b2"}.fa-humidity:before{content:"\f750"}.fa-hurricane:before{content:"\f751"}.fa-i-cursor:before{content:"\f246"}.fa-ice-cream:before{content:"\f810"}.fa-ice-skate:before{content:"\f7ac"}.fa-icicles:before{content:"\f7ad"}.fa-icons:before{content:"\f86d"}.fa-icons-alt:before{content:"\f86e"}.fa-id-badge:before{content:"\f2c1"}.fa-id-card:before{content:"\f2c2"}.fa-id-card-alt:before{content:"\f47f"}.fa-ideal:before{content:"\f913"}.fa-igloo:before{content:"\f7ae"}.fa-image:before{content:"\f03e"}.fa-image-polaroid:before{content:"\f8c4"}.fa-images:before{content:"\f302"}.fa-imdb:before{content:"\f2d8"}.fa-inbox:before{content:"\f01c"}.fa-inbox-in:before{content:"\f310"}.fa-inbox-out:before{content:"\f311"}.fa-indent:before{content:"\f03c"}.fa-industry:before{content:"\f275"}.fa-industry-alt:before{content:"\f3b3"}.fa-infinity:before{content:"\f534"}.fa-info:before{content:"\f129"}.fa-info-circle:before{content:"\f05a"}.fa-info-square:before{content:"\f30f"}.fa-inhaler:before{content:"\f5f9"}.fa-instagram:before{content:"\f16d"}.fa-integral:before{content:"\f667"}.fa-intercom:before{content:"\f7af"}.fa-internet-explorer:before{content:"\f26b"}.fa-intersection:before{content:"\f668"}.fa-inventory:before{content:"\f480"}.fa-invision:before{content:"\f7b0"}.fa-ioxhost:before{content:"\f208"}.fa-island-tropical:before{content:"\f811"}.fa-italic:before{content:"\f033"}.fa-itch-io:before{content:"\f83a"}.fa-itunes:before{content:"\f3b4"}.fa-itunes-note:before{content:"\f3b5"}.fa-jack-o-lantern:before{content:"\f30e"}.fa-java:before{content:"\f4e4"}.fa-jedi:before{content:"\f669"}.fa-jedi-order:before{content:"\f50e"}.fa-jenkins:before{content:"\f3b6"}.fa-jira:before{content:"\f7b1"}.fa-joget:before{content:"\f3b7"}.fa-joint:before{content:"\f595"}.fa-joomla:before{content:"\f1aa"}.fa-journal-whills:before{content:"\f66a"}.fa-joystick:before{content:"\f8c5"}.fa-js:before{content:"\f3b8"}.fa-js-square:before{content:"\f3b9"}.fa-jsfiddle:before{content:"\f1cc"}.fa-jug:before{content:"\f8c6"}.fa-kaaba:before{content:"\f66b"}.fa-kaggle:before{content:"\f5fa"}.fa-kazoo:before{content:"\f8c7"}.fa-kerning:before{content:"\f86f"}.fa-key:before{content:"\f084"}.fa-key-skeleton:before{content:"\f6f3"}.fa-keybase:before{content:"\f4f5"}.fa-keyboard:before{content:"\f11c"}.fa-keycdn:before{content:"\f3ba"}.fa-keynote:before{content:"\f66c"}.fa-khanda:before{content:"\f66d"}.fa-kickstarter:before{content:"\f3bb"}.fa-kickstarter-k:before{content:"\f3bc"}.fa-kidneys:before{content:"\f5fb"}.fa-kiss:before{content:"\f596"}.fa-kiss-beam:before{content:"\f597"}.fa-kiss-wink-heart:before{content:"\f598"}.fa-kite:before{content:"\f6f4"}.fa-kiwi-bird:before{content:"\f535"}.fa-knife-kitchen:before{content:"\f6f5"}.fa-korvue:before{content:"\f42f"}.fa-lambda:before{content:"\f66e"}.fa-lamp:before{content:"\f4ca"}.fa-lamp-desk:before{content:"\f914"}.fa-lamp-floor:before{content:"\f915"}.fa-landmark:before{content:"\f66f"}.fa-landmark-alt:before{content:"\f752"}.fa-language:before{content:"\f1ab"}.fa-laptop:before{content:"\f109"}.fa-laptop-code:before{content:"\f5fc"}.fa-laptop-medical:before{content:"\f812"}.fa-laravel:before{content:"\f3bd"}.fa-lasso:before{content:"\f8c8"}.fa-lastfm:before{content:"\f202"}.fa-lastfm-square:before{content:"\f203"}.fa-laugh:before{content:"\f599"}.fa-laugh-beam:before{content:"\f59a"}.fa-laugh-squint:before{content:"\f59b"}.fa-laugh-wink:before{content:"\f59c"}.fa-layer-group:before{content:"\f5fd"}.fa-layer-minus:before{content:"\f5fe"}.fa-layer-plus:before{content:"\f5ff"}.fa-leaf:before{content:"\f06c"}.fa-leaf-heart:before{content:"\f4cb"}.fa-leaf-maple:before{content:"\f6f6"}.fa-leaf-oak:before{content:"\f6f7"}.fa-leanpub:before{content:"\f212"}.fa-lemon:before{content:"\f094"}.fa-less:before{content:"\f41d"}.fa-less-than:before{content:"\f536"}.fa-less-than-equal:before{content:"\f537"}.fa-level-down:before{content:"\f149"}.fa-level-down-alt:before{content:"\f3be"}.fa-level-up:before{content:"\f148"}.fa-level-up-alt:before{content:"\f3bf"}.fa-life-ring:before{content:"\f1cd"}.fa-light-ceiling:before{content:"\f916"}.fa-light-switch:before{content:"\f917"}.fa-light-switch-off:before{content:"\f918"}.fa-light-switch-on:before{content:"\f919"}.fa-lightbulb:before{content:"\f0eb"}.fa-lightbulb-dollar:before{content:"\f670"}.fa-lightbulb-exclamation:before{content:"\f671"}.fa-lightbulb-on:before{content:"\f672"}.fa-lightbulb-slash:before{content:"\f673"}.fa-lights-holiday:before{content:"\f7b2"}.fa-line:before{content:"\f3c0"}.fa-line-columns:before{content:"\f870"}.fa-line-height:before{content:"\f871"}.fa-link:before{content:"\f0c1"}.fa-linkedin:before{content:"\f08c"}.fa-linkedin-in:before{content:"\f0e1"}.fa-linode:before{content:"\f2b8"}.fa-linux:before{content:"\f17c"}.fa-lips:before{content:"\f600"}.fa-lira-sign:before{content:"\f195"}.fa-list:before{content:"\f03a"}.fa-list-alt:before{content:"\f022"}.fa-list-music:before{content:"\f8c9"}.fa-list-ol:before{content:"\f0cb"}.fa-list-ul:before{content:"\f0ca"}.fa-location:before{content:"\f601"}.fa-location-arrow:before{content:"\f124"}.fa-location-circle:before{content:"\f602"}.fa-location-slash:before{content:"\f603"}.fa-lock:before{content:"\f023"}.fa-lock-alt:before{content:"\f30d"}.fa-lock-open:before{content:"\f3c1"}.fa-lock-open-alt:before{content:"\f3c2"}.fa-long-arrow-alt-down:before{content:"\f309"}.fa-long-arrow-alt-left:before{content:"\f30a"}.fa-long-arrow-alt-right:before{content:"\f30b"}.fa-long-arrow-alt-up:before{content:"\f30c"}.fa-long-arrow-down:before{content:"\f175"}.fa-long-arrow-left:before{content:"\f177"}.fa-long-arrow-right:before{content:"\f178"}.fa-long-arrow-up:before{content:"\f176"}.fa-loveseat:before{content:"\f4cc"}.fa-low-vision:before{content:"\f2a8"}.fa-luchador:before{content:"\f455"}.fa-luggage-cart:before{content:"\f59d"}.fa-lungs:before{content:"\f604"}.fa-lyft:before{content:"\f3c3"}.fa-mace:before{content:"\f6f8"}.fa-magento:before{content:"\f3c4"}.fa-magic:before{content:"\f0d0"}.fa-magnet:before{content:"\f076"}.fa-mail-bulk:before{content:"\f674"}.fa-mailbox:before{content:"\f813"}.fa-mailchimp:before{content:"\f59e"}.fa-male:before{content:"\f183"}.fa-mandalorian:before{content:"\f50f"}.fa-mandolin:before{content:"\f6f9"}.fa-map:before{content:"\f279"}.fa-map-marked:before{content:"\f59f"}.fa-map-marked-alt:before{content:"\f5a0"}.fa-map-marker:before{content:"\f041"}.fa-map-marker-alt:before{content:"\f3c5"}.fa-map-marker-alt-slash:before{content:"\f605"}.fa-map-marker-check:before{content:"\f606"}.fa-map-marker-edit:before{content:"\f607"}.fa-map-marker-exclamation:before{content:"\f608"}.fa-map-marker-minus:before{content:"\f609"}.fa-map-marker-plus:before{content:"\f60a"}.fa-map-marker-question:before{content:"\f60b"}.fa-map-marker-slash:before{content:"\f60c"}.fa-map-marker-smile:before{content:"\f60d"}.fa-map-marker-times:before{content:"\f60e"}.fa-map-pin:before{content:"\f276"}.fa-map-signs:before{content:"\f277"}.fa-markdown:before{content:"\f60f"}.fa-marker:before{content:"\f5a1"}.fa-mars:before{content:"\f222"}.fa-mars-double:before{content:"\f227"}.fa-mars-stroke:before{content:"\f229"}.fa-mars-stroke-h:before{content:"\f22b"}.fa-mars-stroke-v:before{content:"\f22a"}.fa-mask:before{content:"\f6fa"}.fa-mastodon:before{content:"\f4f6"}.fa-maxcdn:before{content:"\f136"}.fa-mdb:before{content:"\f8ca"}.fa-meat:before{content:"\f814"}.fa-medal:before{content:"\f5a2"}.fa-medapps:before{content:"\f3c6"}.fa-medium:before{content:"\f23a"}.fa-medium-m:before{content:"\f3c7"}.fa-medkit:before{content:"\f0fa"}.fa-medrt:before{content:"\f3c8"}.fa-meetup:before{content:"\f2e0"}.fa-megaphone:before{content:"\f675"}.fa-megaport:before{content:"\f5a3"}.fa-meh:before{content:"\f11a"}.fa-meh-blank:before{content:"\f5a4"}.fa-meh-rolling-eyes:before{content:"\f5a5"}.fa-memory:before{content:"\f538"}.fa-mendeley:before{content:"\f7b3"}.fa-menorah:before{content:"\f676"}.fa-mercury:before{content:"\f223"}.fa-meteor:before{content:"\f753"}.fa-microblog:before{content:"\f91a"}.fa-microchip:before{content:"\f2db"}.fa-microphone:before{content:"\f130"}.fa-microphone-alt:before{content:"\f3c9"}.fa-microphone-alt-slash:before{content:"\f539"}.fa-microphone-slash:before{content:"\f131"}.fa-microphone-stand:before{content:"\f8cb"}.fa-microscope:before{content:"\f610"}.fa-microsoft:before{content:"\f3ca"}.fa-microwave:before{content:"\f91b"}.fa-mind-share:before{content:"\f677"}.fa-minus:before{content:"\f068"}.fa-minus-circle:before{content:"\f056"}.fa-minus-hexagon:before{content:"\f307"}.fa-minus-octagon:before{content:"\f308"}.fa-minus-square:before{content:"\f146"}.fa-mistletoe:before{content:"\f7b4"}.fa-mitten:before{content:"\f7b5"}.fa-mix:before{content:"\f3cb"}.fa-mixcloud:before{content:"\f289"}.fa-mizuni:before{content:"\f3cc"}.fa-mobile:before{content:"\f10b"}.fa-mobile-alt:before{content:"\f3cd"}.fa-mobile-android:before{content:"\f3ce"}.fa-mobile-android-alt:before{content:"\f3cf"}.fa-modx:before{content:"\f285"}.fa-monero:before{content:"\f3d0"}.fa-money-bill:before{content:"\f0d6"}.fa-money-bill-alt:before{content:"\f3d1"}.fa-money-bill-wave:before{content:"\f53a"}.fa-money-bill-wave-alt:before{content:"\f53b"}.fa-money-check:before{content:"\f53c"}.fa-money-check-alt:before{content:"\f53d"}.fa-money-check-edit:before{content:"\f872"}.fa-money-check-edit-alt:before{content:"\f873"}.fa-monitor-heart-rate:before{content:"\f611"}.fa-monkey:before{content:"\f6fb"}.fa-monument:before{content:"\f5a6"}.fa-moon:before{content:"\f186"}.fa-moon-cloud:before{content:"\f754"}.fa-moon-stars:before{content:"\f755"}.fa-mortar-pestle:before{content:"\f5a7"}.fa-mosque:before{content:"\f678"}.fa-motorcycle:before{content:"\f21c"}.fa-mountain:before{content:"\f6fc"}.fa-mountains:before{content:"\f6fd"}.fa-mouse:before{content:"\f8cc"}.fa-mouse-alt:before{content:"\f8cd"}.fa-mouse-pointer:before{content:"\f245"}.fa-mp3-player:before{content:"\f8ce"}.fa-mug:before{content:"\f874"}.fa-mug-hot:before{content:"\f7b6"}.fa-mug-marshmallows:before{content:"\f7b7"}.fa-mug-tea:before{content:"\f875"}.fa-music:before{content:"\f001"}.fa-music-alt:before{content:"\f8cf"}.fa-music-alt-slash:before{content:"\f8d0"}.fa-music-slash:before{content:"\f8d1"}.fa-napster:before{content:"\f3d2"}.fa-narwhal:before{content:"\f6fe"}.fa-neos:before{content:"\f612"}.fa-network-wired:before{content:"\f6ff"}.fa-neuter:before{content:"\f22c"}.fa-newspaper:before{content:"\f1ea"}.fa-nimblr:before{content:"\f5a8"}.fa-node:before{content:"\f419"}.fa-node-js:before{content:"\f3d3"}.fa-not-equal:before{content:"\f53e"}.fa-notes-medical:before{content:"\f481"}.fa-npm:before{content:"\f3d4"}.fa-ns8:before{content:"\f3d5"}.fa-nutritionix:before{content:"\f3d6"}.fa-object-group:before{content:"\f247"}.fa-object-ungroup:before{content:"\f248"}.fa-octagon:before{content:"\f306"}.fa-odnoklassniki:before{content:"\f263"}.fa-odnoklassniki-square:before{content:"\f264"}.fa-oil-can:before{content:"\f613"}.fa-oil-temp:before{content:"\f614"}.fa-old-republic:before{content:"\f510"}.fa-om:before{content:"\f679"}.fa-omega:before{content:"\f67a"}.fa-opencart:before{content:"\f23d"}.fa-openid:before{content:"\f19b"}.fa-opera:before{content:"\f26a"}.fa-optin-monster:before{content:"\f23c"}.fa-orcid:before{content:"\f8d2"}.fa-ornament:before{content:"\f7b8"}.fa-osi:before{content:"\f41a"}.fa-otter:before{content:"\f700"}.fa-outdent:before{content:"\f03b"}.fa-outlet:before{content:"\f91c"}.fa-oven:before{content:"\f91d"}.fa-overline:before{content:"\f876"}.fa-page-break:before{content:"\f877"}.fa-page4:before{content:"\f3d7"}.fa-pagelines:before{content:"\f18c"}.fa-pager:before{content:"\f815"}.fa-paint-brush:before{content:"\f1fc"}.fa-paint-brush-alt:before{content:"\f5a9"}.fa-paint-roller:before{content:"\f5aa"}.fa-palette:before{content:"\f53f"}.fa-palfed:before{content:"\f3d8"}.fa-pallet:before{content:"\f482"}.fa-pallet-alt:before{content:"\f483"}.fa-paper-plane:before{content:"\f1d8"}.fa-paperclip:before{content:"\f0c6"}.fa-parachute-box:before{content:"\f4cd"}.fa-paragraph:before{content:"\f1dd"}.fa-paragraph-rtl:before{content:"\f878"}.fa-parking:before{content:"\f540"}.fa-parking-circle:before{content:"\f615"}.fa-parking-circle-slash:before{content:"\f616"}.fa-parking-slash:before{content:"\f617"}.fa-passport:before{content:"\f5ab"}.fa-pastafarianism:before{content:"\f67b"}.fa-paste:before{content:"\f0ea"}.fa-patreon:before{content:"\f3d9"}.fa-pause:before{content:"\f04c"}.fa-pause-circle:before{content:"\f28b"}.fa-paw:before{content:"\f1b0"}.fa-paw-alt:before{content:"\f701"}.fa-paw-claws:before{content:"\f702"}.fa-paypal:before{content:"\f1ed"}.fa-peace:before{content:"\f67c"}.fa-pegasus:before{content:"\f703"}.fa-pen:before{content:"\f304"}.fa-pen-alt:before{content:"\f305"}.fa-pen-fancy:before{content:"\f5ac"}.fa-pen-nib:before{content:"\f5ad"}.fa-pen-square:before{content:"\f14b"}.fa-pencil:before{content:"\f040"}.fa-pencil-alt:before{content:"\f303"}.fa-pencil-paintbrush:before{content:"\f618"}.fa-pencil-ruler:before{content:"\f5ae"}.fa-pennant:before{content:"\f456"}.fa-penny-arcade:before{content:"\f704"}.fa-people-carry:before{content:"\f4ce"}.fa-pepper-hot:before{content:"\f816"}.fa-percent:before{content:"\f295"}.fa-percentage:before{content:"\f541"}.fa-periscope:before{content:"\f3da"}.fa-person-booth:before{content:"\f756"}.fa-person-carry:before{content:"\f4cf"}.fa-person-dolly:before{content:"\f4d0"}.fa-person-dolly-empty:before{content:"\f4d1"}.fa-person-sign:before{content:"\f757"}.fa-phabricator:before{content:"\f3db"}.fa-phoenix-framework:before{content:"\f3dc"}.fa-phoenix-squadron:before{content:"\f511"}.fa-phone:before{content:"\f095"}.fa-phone-alt:before{content:"\f879"}.fa-phone-laptop:before{content:"\f87a"}.fa-phone-office:before{content:"\f67d"}.fa-phone-plus:before{content:"\f4d2"}.fa-phone-rotary:before{content:"\f8d3"}.fa-phone-slash:before{content:"\f3dd"}.fa-phone-square:before{content:"\f098"}.fa-phone-square-alt:before{content:"\f87b"}.fa-phone-volume:before{content:"\f2a0"}.fa-photo-video:before{content:"\f87c"}.fa-php:before{content:"\f457"}.fa-pi:before{content:"\f67e"}.fa-piano:before{content:"\f8d4"}.fa-piano-keyboard:before{content:"\f8d5"}.fa-pie:before{content:"\f705"}.fa-pied-piper:before{content:"\f2ae"}.fa-pied-piper-alt:before{content:"\f1a8"}.fa-pied-piper-hat:before{content:"\f4e5"}.fa-pied-piper-pp:before{content:"\f1a7"}.fa-pied-piper-square:before{content:"\f91e"}.fa-pig:before{content:"\f706"}.fa-piggy-bank:before{content:"\f4d3"}.fa-pills:before{content:"\f484"}.fa-pinterest:before{content:"\f0d2"}.fa-pinterest-p:before{content:"\f231"}.fa-pinterest-square:before{content:"\f0d3"}.fa-pizza:before{content:"\f817"}.fa-pizza-slice:before{content:"\f818"}.fa-place-of-worship:before{content:"\f67f"}.fa-plane:before{content:"\f072"}.fa-plane-alt:before{content:"\f3de"}.fa-plane-arrival:before{content:"\f5af"}.fa-plane-departure:before{content:"\f5b0"}.fa-planet-moon:before{content:"\f91f"}.fa-planet-ringed:before{content:"\f920"}.fa-play:before{content:"\f04b"}.fa-play-circle:before{content:"\f144"}.fa-playstation:before{content:"\f3df"}.fa-plug:before{content:"\f1e6"}.fa-plus:before{content:"\f067"}.fa-plus-circle:before{content:"\f055"}.fa-plus-hexagon:before{content:"\f300"}.fa-plus-octagon:before{content:"\f301"}.fa-plus-square:before{content:"\f0fe"}.fa-podcast:before{content:"\f2ce"}.fa-podium:before{content:"\f680"}.fa-podium-star:before{content:"\f758"}.fa-police-box:before{content:"\f921"}.fa-poll:before{content:"\f681"}.fa-poll-h:before{content:"\f682"}.fa-poll-people:before{content:"\f759"}.fa-poo:before{content:"\f2fe"}.fa-poo-storm:before{content:"\f75a"}.fa-poop:before{content:"\f619"}.fa-popcorn:before{content:"\f819"}.fa-portal-enter:before{content:"\f922"}.fa-portal-exit:before{content:"\f923"}.fa-portrait:before{content:"\f3e0"}.fa-pound-sign:before{content:"\f154"}.fa-power-off:before{content:"\f011"}.fa-pray:before{content:"\f683"}.fa-praying-hands:before{content:"\f684"}.fa-prescription:before{content:"\f5b1"}.fa-prescription-bottle:before{content:"\f485"}.fa-prescription-bottle-alt:before{content:"\f486"}.fa-presentation:before{content:"\f685"}.fa-print:before{content:"\f02f"}.fa-print-search:before{content:"\f81a"}.fa-print-slash:before{content:"\f686"}.fa-procedures:before{content:"\f487"}.fa-product-hunt:before{content:"\f288"}.fa-project-diagram:before{content:"\f542"}.fa-projector:before{content:"\f8d6"}.fa-pumpkin:before{content:"\f707"}.fa-pushed:before{content:"\f3e1"}.fa-puzzle-piece:before{content:"\f12e"}.fa-python:before{content:"\f3e2"}.fa-qq:before{content:"\f1d6"}.fa-qrcode:before{content:"\f029"}.fa-question:before{content:"\f128"}.fa-question-circle:before{content:"\f059"}.fa-question-square:before{content:"\f2fd"}.fa-quidditch:before{content:"\f458"}.fa-quinscape:before{content:"\f459"}.fa-quora:before{content:"\f2c4"}.fa-quote-left:before{content:"\f10d"}.fa-quote-right:before{content:"\f10e"}.fa-quran:before{content:"\f687"}.fa-r-project:before{content:"\f4f7"}.fa-rabbit:before{content:"\f708"}.fa-rabbit-fast:before{content:"\f709"}.fa-racquet:before{content:"\f45a"}.fa-radar:before{content:"\f924"}.fa-radiation:before{content:"\f7b9"}.fa-radiation-alt:before{content:"\f7ba"}.fa-radio:before{content:"\f8d7"}.fa-radio-alt:before{content:"\f8d8"}.fa-rainbow:before{content:"\f75b"}.fa-raindrops:before{content:"\f75c"}.fa-ram:before{content:"\f70a"}.fa-ramp-loading:before{content:"\f4d4"}.fa-random:before{content:"\f074"}.fa-raspberry-pi:before{content:"\f7bb"}.fa-ravelry:before{content:"\f2d9"}.fa-raygun:before{content:"\f925"}.fa-react:before{content:"\f41b"}.fa-reacteurope:before{content:"\f75d"}.fa-readme:before{content:"\f4d5"}.fa-rebel:before{content:"\f1d0"}.fa-receipt:before{content:"\f543"}.fa-record-vinyl:before{content:"\f8d9"}.fa-rectangle-landscape:before{content:"\f2fa"}.fa-rectangle-portrait:before{content:"\f2fb"}.fa-rectangle-wide:before{content:"\f2fc"}.fa-recycle:before{content:"\f1b8"}.fa-red-river:before{content:"\f3e3"}.fa-reddit:before{content:"\f1a1"}.fa-reddit-alien:before{content:"\f281"}.fa-reddit-square:before{content:"\f1a2"}.fa-redhat:before{content:"\f7bc"}.fa-redo:before{content:"\f01e"}.fa-redo-alt:before{content:"\f2f9"}.fa-refrigerator:before{content:"\f926"}.fa-registered:before{content:"\f25d"}.fa-remove-format:before{content:"\f87d"}.fa-renren:before{content:"\f18b"}.fa-repeat:before{content:"\f363"}.fa-repeat-1:before{content:"\f365"}.fa-repeat-1-alt:before{content:"\f366"}.fa-repeat-alt:before{content:"\f364"}.fa-reply:before{content:"\f3e5"}.fa-reply-all:before{content:"\f122"}.fa-replyd:before{content:"\f3e6"}.fa-republican:before{content:"\f75e"}.fa-researchgate:before{content:"\f4f8"}.fa-resolving:before{content:"\f3e7"}.fa-restroom:before{content:"\f7bd"}.fa-retweet:before{content:"\f079"}.fa-retweet-alt:before{content:"\f361"}.fa-rev:before{content:"\f5b2"}.fa-ribbon:before{content:"\f4d6"}.fa-ring:before{content:"\f70b"}.fa-rings-wedding:before{content:"\f81b"}.fa-road:before{content:"\f018"}.fa-robot:before{content:"\f544"}.fa-rocket:before{content:"\f135"}.fa-rocket-launch:before{content:"\f927"}.fa-rocketchat:before{content:"\f3e8"}.fa-rockrms:before{content:"\f3e9"}.fa-route:before{content:"\f4d7"}.fa-route-highway:before{content:"\f61a"}.fa-route-interstate:before{content:"\f61b"}.fa-router:before{content:"\f8da"}.fa-rss:before{content:"\f09e"}.fa-rss-square:before{content:"\f143"}.fa-ruble-sign:before{content:"\f158"}.fa-ruler:before{content:"\f545"}.fa-ruler-combined:before{content:"\f546"}.fa-ruler-horizontal:before{content:"\f547"}.fa-ruler-triangle:before{content:"\f61c"}.fa-ruler-vertical:before{content:"\f548"}.fa-running:before{content:"\f70c"}.fa-rupee-sign:before{content:"\f156"}.fa-rv:before{content:"\f7be"}.fa-sack:before{content:"\f81c"}.fa-sack-dollar:before{content:"\f81d"}.fa-sad-cry:before{content:"\f5b3"}.fa-sad-tear:before{content:"\f5b4"}.fa-safari:before{content:"\f267"}.fa-salad:before{content:"\f81e"}.fa-salesforce:before{content:"\f83b"}.fa-sandwich:before{content:"\f81f"}.fa-sass:before{content:"\f41e"}.fa-satellite:before{content:"\f7bf"}.fa-satellite-dish:before{content:"\f7c0"}.fa-sausage:before{content:"\f820"}.fa-save:before{content:"\f0c7"}.fa-sax-hot:before{content:"\f8db"}.fa-saxophone:before{content:"\f8dc"}.fa-scalpel:before{content:"\f61d"}.fa-scalpel-path:before{content:"\f61e"}.fa-scanner:before{content:"\f488"}.fa-scanner-image:before{content:"\f8f3"}.fa-scanner-keyboard:before{content:"\f489"}.fa-scanner-touchscreen:before{content:"\f48a"}.fa-scarecrow:before{content:"\f70d"}.fa-scarf:before{content:"\f7c1"}.fa-schlix:before{content:"\f3ea"}.fa-school:before{content:"\f549"}.fa-screwdriver:before{content:"\f54a"}.fa-scribd:before{content:"\f28a"}.fa-scroll:before{content:"\f70e"}.fa-scroll-old:before{content:"\f70f"}.fa-scrubber:before{content:"\f2f8"}.fa-scythe:before{content:"\f710"}.fa-sd-card:before{content:"\f7c2"}.fa-search:before{content:"\f002"}.fa-search-dollar:before{content:"\f688"}.fa-search-location:before{content:"\f689"}.fa-search-minus:before{content:"\f010"}.fa-search-plus:before{content:"\f00e"}.fa-searchengin:before{content:"\f3eb"}.fa-seedling:before{content:"\f4d8"}.fa-sellcast:before{content:"\f2da"}.fa-sellsy:before{content:"\f213"}.fa-send-back:before{content:"\f87e"}.fa-send-backward:before{content:"\f87f"}.fa-sensor:before{content:"\f928"}.fa-sensor-alert:before{content:"\f929"}.fa-sensor-fire:before{content:"\f92a"}.fa-sensor-on:before{content:"\f92b"}.fa-sensor-smoke:before{content:"\f92c"}.fa-server:before{content:"\f233"}.fa-servicestack:before{content:"\f3ec"}.fa-shapes:before{content:"\f61f"}.fa-share:before{content:"\f064"}.fa-share-all:before{content:"\f367"}.fa-share-alt:before{content:"\f1e0"}.fa-share-alt-square:before{content:"\f1e1"}.fa-share-square:before{content:"\f14d"}.fa-sheep:before{content:"\f711"}.fa-shekel-sign:before{content:"\f20b"}.fa-shield:before{content:"\f132"}.fa-shield-alt:before{content:"\f3ed"}.fa-shield-check:before{content:"\f2f7"}.fa-shield-cross:before{content:"\f712"}.fa-ship:before{content:"\f21a"}.fa-shipping-fast:before{content:"\f48b"}.fa-shipping-timed:before{content:"\f48c"}.fa-shirtsinbulk:before{content:"\f214"}.fa-shish-kebab:before{content:"\f821"}.fa-shoe-prints:before{content:"\f54b"}.fa-shopping-bag:before{content:"\f290"}.fa-shopping-basket:before{content:"\f291"}.fa-shopping-cart:before{content:"\f07a"}.fa-shopware:before{content:"\f5b5"}.fa-shovel:before{content:"\f713"}.fa-shovel-snow:before{content:"\f7c3"}.fa-shower:before{content:"\f2cc"}.fa-shredder:before{content:"\f68a"}.fa-shuttle-van:before{content:"\f5b6"}.fa-shuttlecock:before{content:"\f45b"}.fa-sickle:before{content:"\f822"}.fa-sigma:before{content:"\f68b"}.fa-sign:before{content:"\f4d9"}.fa-sign-in:before{content:"\f090"}.fa-sign-in-alt:before{content:"\f2f6"}.fa-sign-language:before{content:"\f2a7"}.fa-sign-out:before{content:"\f08b"}.fa-sign-out-alt:before{content:"\f2f5"}.fa-signal:before{content:"\f012"}.fa-signal-1:before{content:"\f68c"}.fa-signal-2:before{content:"\f68d"}.fa-signal-3:before{content:"\f68e"}.fa-signal-4:before{content:"\f68f"}.fa-signal-alt:before{content:"\f690"}.fa-signal-alt-1:before{content:"\f691"}.fa-signal-alt-2:before{content:"\f692"}.fa-signal-alt-3:before{content:"\f693"}.fa-signal-alt-slash:before{content:"\f694"}.fa-signal-slash:before{content:"\f695"}.fa-signal-stream:before{content:"\f8dd"}.fa-signature:before{content:"\f5b7"}.fa-sim-card:before{content:"\f7c4"}.fa-simplybuilt:before{content:"\f215"}.fa-siren:before{content:"\f92d"}.fa-siren-on:before{content:"\f92e"}.fa-sistrix:before{content:"\f3ee"}.fa-sitemap:before{content:"\f0e8"}.fa-sith:before{content:"\f512"}.fa-skating:before{content:"\f7c5"}.fa-skeleton:before{content:"\f620"}.fa-sketch:before{content:"\f7c6"}.fa-ski-jump:before{content:"\f7c7"}.fa-ski-lift:before{content:"\f7c8"}.fa-skiing:before{content:"\f7c9"}.fa-skiing-nordic:before{content:"\f7ca"}.fa-skull:before{content:"\f54c"}.fa-skull-cow:before{content:"\f8de"}.fa-skull-crossbones:before{content:"\f714"}.fa-skyatlas:before{content:"\f216"}.fa-skype:before{content:"\f17e"}.fa-slack:before{content:"\f198"}.fa-slack-hash:before{content:"\f3ef"}.fa-slash:before{content:"\f715"}.fa-sledding:before{content:"\f7cb"}.fa-sleigh:before{content:"\f7cc"}.fa-sliders-h:before{content:"\f1de"}.fa-sliders-h-square:before{content:"\f3f0"}.fa-sliders-v:before{content:"\f3f1"}.fa-sliders-v-square:before{content:"\f3f2"}.fa-slideshare:before{content:"\f1e7"}.fa-smile:before{content:"\f118"}.fa-smile-beam:before{content:"\f5b8"}.fa-smile-plus:before{content:"\f5b9"}.fa-smile-wink:before{content:"\f4da"}.fa-smog:before{content:"\f75f"}.fa-smoke:before{content:"\f760"}.fa-smoking:before{content:"\f48d"}.fa-smoking-ban:before{content:"\f54d"}.fa-sms:before{content:"\f7cd"}.fa-snake:before{content:"\f716"}.fa-snapchat:before{content:"\f2ab"}.fa-snapchat-ghost:before{content:"\f2ac"}.fa-snapchat-square:before{content:"\f2ad"}.fa-snooze:before{content:"\f880"}.fa-snow-blowing:before{content:"\f761"}.fa-snowboarding:before{content:"\f7ce"}.fa-snowflake:before{content:"\f2dc"}.fa-snowflakes:before{content:"\f7cf"}.fa-snowman:before{content:"\f7d0"}.fa-snowmobile:before{content:"\f7d1"}.fa-snowplow:before{content:"\f7d2"}.fa-socks:before{content:"\f696"}.fa-solar-panel:before{content:"\f5ba"}.fa-solar-system:before{content:"\f92f"}.fa-sort:before{content:"\f0dc"}.fa-sort-alpha-down:before{content:"\f15d"}.fa-sort-alpha-down-alt:before{content:"\f881"}.fa-sort-alpha-up:before{content:"\f15e"}.fa-sort-alpha-up-alt:before{content:"\f882"}.fa-sort-alt:before{content:"\f883"}.fa-sort-amount-down:before{content:"\f160"}.fa-sort-amount-down-alt:before{content:"\f884"}.fa-sort-amount-up:before{content:"\f161"}.fa-sort-amount-up-alt:before{content:"\f885"}.fa-sort-circle:before{content:"\f930"}.fa-sort-circle-down:before{content:"\f931"}.fa-sort-circle-up:before{content:"\f932"}.fa-sort-down:before{content:"\f0dd"}.fa-sort-numeric-down:before{content:"\f162"}.fa-sort-numeric-down-alt:before{content:"\f886"}.fa-sort-numeric-up:before{content:"\f163"}.fa-sort-numeric-up-alt:before{content:"\f887"}.fa-sort-shapes-down:before{content:"\f888"}.fa-sort-shapes-down-alt:before{content:"\f889"}.fa-sort-shapes-up:before{content:"\f88a"}.fa-sort-shapes-up-alt:before{content:"\f88b"}.fa-sort-size-down:before{content:"\f88c"}.fa-sort-size-down-alt:before{content:"\f88d"}.fa-sort-size-up:before{content:"\f88e"}.fa-sort-size-up-alt:before{content:"\f88f"}.fa-sort-up:before{content:"\f0de"}.fa-soundcloud:before{content:"\f1be"}.fa-soup:before{content:"\f823"}.fa-sourcetree:before{content:"\f7d3"}.fa-spa:before{content:"\f5bb"}.fa-space-shuttle:before{content:"\f197"}.fa-space-station-moon:before{content:"\f933"}.fa-space-station-moon-alt:before{content:"\f934"}.fa-spade:before{content:"\f2f4"}.fa-sparkles:before{content:"\f890"}.fa-speakap:before{content:"\f3f3"}.fa-speaker:before{content:"\f8df"}.fa-speaker-deck:before{content:"\f83c"}.fa-speakers:before{content:"\f8e0"}.fa-spell-check:before{content:"\f891"}.fa-spider:before{content:"\f717"}.fa-spider-black-widow:before{content:"\f718"}.fa-spider-web:before{content:"\f719"}.fa-spinner:before{content:"\f110"}.fa-spinner-third:before{content:"\f3f4"}.fa-splotch:before{content:"\f5bc"}.fa-spotify:before{content:"\f1bc"}.fa-spray-can:before{content:"\f5bd"}.fa-sprinkler:before{content:"\f935"}.fa-square:before{content:"\f0c8"}.fa-square-full:before{content:"\f45c"}.fa-square-root:before{content:"\f697"}.fa-square-root-alt:before{content:"\f698"}.fa-squarespace:before{content:"\f5be"}.fa-squirrel:before{content:"\f71a"}.fa-stack-exchange:before{content:"\f18d"}.fa-stack-overflow:before{content:"\f16c"}.fa-stackpath:before{content:"\f842"}.fa-staff:before{content:"\f71b"}.fa-stamp:before{content:"\f5bf"}.fa-star:before{content:"\f005"}.fa-star-and-crescent:before{content:"\f699"}.fa-star-christmas:before{content:"\f7d4"}.fa-star-exclamation:before{content:"\f2f3"}.fa-star-half:before{content:"\f089"}.fa-star-half-alt:before{content:"\f5c0"}.fa-star-of-david:before{content:"\f69a"}.fa-star-of-life:before{content:"\f621"}.fa-star-shooting:before{content:"\f936"}.fa-starfighter:before{content:"\f937"}.fa-starfighter-alt:before{content:"\f938"}.fa-stars:before{content:"\f762"}.fa-starship:before{content:"\f939"}.fa-starship-freighter:before{content:"\f93a"}.fa-staylinked:before{content:"\f3f5"}.fa-steak:before{content:"\f824"}.fa-steam:before{content:"\f1b6"}.fa-steam-square:before{content:"\f1b7"}.fa-steam-symbol:before{content:"\f3f6"}.fa-steering-wheel:before{content:"\f622"}.fa-step-backward:before{content:"\f048"}.fa-step-forward:before{content:"\f051"}.fa-stethoscope:before{content:"\f0f1"}.fa-sticker-mule:before{content:"\f3f7"}.fa-sticky-note:before{content:"\f249"}.fa-stocking:before{content:"\f7d5"}.fa-stomach:before{content:"\f623"}.fa-stop:before{content:"\f04d"}.fa-stop-circle:before{content:"\f28d"}.fa-stopwatch:before{content:"\f2f2"}.fa-store:before{content:"\f54e"}.fa-store-alt:before{content:"\f54f"}.fa-strava:before{content:"\f428"}.fa-stream:before{content:"\f550"}.fa-street-view:before{content:"\f21d"}.fa-stretcher:before{content:"\f825"}.fa-strikethrough:before{content:"\f0cc"}.fa-stripe:before{content:"\f429"}.fa-stripe-s:before{content:"\f42a"}.fa-stroopwafel:before{content:"\f551"}.fa-studiovinari:before{content:"\f3f8"}.fa-stumbleupon:before{content:"\f1a4"}.fa-stumbleupon-circle:before{content:"\f1a3"}.fa-subscript:before{content:"\f12c"}.fa-subway:before{content:"\f239"}.fa-suitcase:before{content:"\f0f2"}.fa-suitcase-rolling:before{content:"\f5c1"}.fa-sun:before{content:"\f185"}.fa-sun-cloud:before{content:"\f763"}.fa-sun-dust:before{content:"\f764"}.fa-sun-haze:before{content:"\f765"}.fa-sunglasses:before{content:"\f892"}.fa-sunrise:before{content:"\f766"}.fa-sunset:before{content:"\f767"}.fa-superpowers:before{content:"\f2dd"}.fa-superscript:before{content:"\f12b"}.fa-supple:before{content:"\f3f9"}.fa-surprise:before{content:"\f5c2"}.fa-suse:before{content:"\f7d6"}.fa-swatchbook:before{content:"\f5c3"}.fa-swift:before{content:"\f8e1"}.fa-swimmer:before{content:"\f5c4"}.fa-swimming-pool:before{content:"\f5c5"}.fa-sword:before{content:"\f71c"}.fa-sword-laser:before{content:"\f93b"}.fa-sword-laser-alt:before{content:"\f93c"}.fa-swords:before{content:"\f71d"}.fa-swords-laser:before{content:"\f93d"}.fa-symfony:before{content:"\f83d"}.fa-synagogue:before{content:"\f69b"}.fa-sync:before{content:"\f021"}.fa-sync-alt:before{content:"\f2f1"}.fa-syringe:before{content:"\f48e"}.fa-table:before{content:"\f0ce"}.fa-table-tennis:before{content:"\f45d"}.fa-tablet:before{content:"\f10a"}.fa-tablet-alt:before{content:"\f3fa"}.fa-tablet-android:before{content:"\f3fb"}.fa-tablet-android-alt:before{content:"\f3fc"}.fa-tablet-rugged:before{content:"\f48f"}.fa-tablets:before{content:"\f490"}.fa-tachometer:before{content:"\f0e4"}.fa-tachometer-alt:before{content:"\f3fd"}.fa-tachometer-alt-average:before{content:"\f624"}.fa-tachometer-alt-fast:before{content:"\f625"}.fa-tachometer-alt-fastest:before{content:"\f626"}.fa-tachometer-alt-slow:before{content:"\f627"}.fa-tachometer-alt-slowest:before{content:"\f628"}.fa-tachometer-average:before{content:"\f629"}.fa-tachometer-fast:before{content:"\f62a"}.fa-tachometer-fastest:before{content:"\f62b"}.fa-tachometer-slow:before{content:"\f62c"}.fa-tachometer-slowest:before{content:"\f62d"}.fa-taco:before{content:"\f826"}.fa-tag:before{content:"\f02b"}.fa-tags:before{content:"\f02c"}.fa-tally:before{content:"\f69c"}.fa-tanakh:before{content:"\f827"}.fa-tape:before{content:"\f4db"}.fa-tasks:before{content:"\f0ae"}.fa-tasks-alt:before{content:"\f828"}.fa-taxi:before{content:"\f1ba"}.fa-teamspeak:before{content:"\f4f9"}.fa-teeth:before{content:"\f62e"}.fa-teeth-open:before{content:"\f62f"}.fa-telegram:before{content:"\f2c6"}.fa-telegram-plane:before{content:"\f3fe"}.fa-telescope:before{content:"\f93e"}.fa-temperature-down:before{content:"\f93f"}.fa-temperature-frigid:before{content:"\f768"}.fa-temperature-high:before{content:"\f769"}.fa-temperature-hot:before{content:"\f76a"}.fa-temperature-low:before{content:"\f76b"}.fa-temperature-up:before{content:"\f940"}.fa-tencent-weibo:before{content:"\f1d5"}.fa-tenge:before{content:"\f7d7"}.fa-tennis-ball:before{content:"\f45e"}.fa-terminal:before{content:"\f120"}.fa-text:before{content:"\f893"}.fa-text-height:before{content:"\f034"}.fa-text-size:before{content:"\f894"}.fa-text-width:before{content:"\f035"}.fa-th:before{content:"\f00a"}.fa-th-large:before{content:"\f009"}.fa-th-list:before{content:"\f00b"}.fa-the-red-yeti:before{content:"\f69d"}.fa-theater-masks:before{content:"\f630"}.fa-themeco:before{content:"\f5c6"}.fa-themeisle:before{content:"\f2b2"}.fa-thermometer:before{content:"\f491"}.fa-thermometer-empty:before{content:"\f2cb"}.fa-thermometer-full:before{content:"\f2c7"}.fa-thermometer-half:before{content:"\f2c9"}.fa-thermometer-quarter:before{content:"\f2ca"}.fa-thermometer-three-quarters:before{content:"\f2c8"}.fa-theta:before{content:"\f69e"}.fa-think-peaks:before{content:"\f731"}.fa-thumbs-down:before{content:"\f165"}.fa-thumbs-up:before{content:"\f164"}.fa-thumbtack:before{content:"\f08d"}.fa-thunderstorm:before{content:"\f76c"}.fa-thunderstorm-moon:before{content:"\f76d"}.fa-thunderstorm-sun:before{content:"\f76e"}.fa-ticket:before{content:"\f145"}.fa-ticket-alt:before{content:"\f3ff"}.fa-tilde:before{content:"\f69f"}.fa-times:before{content:"\f00d"}.fa-times-circle:before{content:"\f057"}.fa-times-hexagon:before{content:"\f2ee"}.fa-times-octagon:before{content:"\f2f0"}.fa-times-square:before{content:"\f2d3"}.fa-tint:before{content:"\f043"}.fa-tint-slash:before{content:"\f5c7"}.fa-tire:before{content:"\f631"}.fa-tire-flat:before{content:"\f632"}.fa-tire-pressure-warning:before{content:"\f633"}.fa-tire-rugged:before{content:"\f634"}.fa-tired:before{content:"\f5c8"}.fa-toggle-off:before{content:"\f204"}.fa-toggle-on:before{content:"\f205"}.fa-toilet:before{content:"\f7d8"}.fa-toilet-paper:before{content:"\f71e"}.fa-toilet-paper-alt:before{content:"\f71f"}.fa-tombstone:before{content:"\f720"}.fa-tombstone-alt:before{content:"\f721"}.fa-toolbox:before{content:"\f552"}.fa-tools:before{content:"\f7d9"}.fa-tooth:before{content:"\f5c9"}.fa-toothbrush:before{content:"\f635"}.fa-torah:before{content:"\f6a0"}.fa-torii-gate:before{content:"\f6a1"}.fa-tornado:before{content:"\f76f"}.fa-tractor:before{content:"\f722"}.fa-trade-federation:before{content:"\f513"}.fa-trademark:before{content:"\f25c"}.fa-traffic-cone:before{content:"\f636"}.fa-traffic-light:before{content:"\f637"}.fa-traffic-light-go:before{content:"\f638"}.fa-traffic-light-slow:before{content:"\f639"}.fa-traffic-light-stop:before{content:"\f63a"}.fa-trailer:before{content:"\f941"}.fa-train:before{content:"\f238"}.fa-tram:before{content:"\f7da"}.fa-transgender:before{content:"\f224"}.fa-transgender-alt:before{content:"\f225"}.fa-transporter:before{content:"\f942"}.fa-transporter-1:before{content:"\f943"}.fa-transporter-2:before{content:"\f944"}.fa-transporter-3:before{content:"\f945"}.fa-transporter-empty:before{content:"\f946"}.fa-trash:before{content:"\f1f8"}.fa-trash-alt:before{content:"\f2ed"}.fa-trash-restore:before{content:"\f829"}.fa-trash-restore-alt:before{content:"\f82a"}.fa-trash-undo:before{content:"\f895"}.fa-trash-undo-alt:before{content:"\f896"}.fa-treasure-chest:before{content:"\f723"}.fa-tree:before{content:"\f1bb"}.fa-tree-alt:before{content:"\f400"}.fa-tree-christmas:before{content:"\f7db"}.fa-tree-decorated:before{content:"\f7dc"}.fa-tree-large:before{content:"\f7dd"}.fa-tree-palm:before{content:"\f82b"}.fa-trees:before{content:"\f724"}.fa-trello:before{content:"\f181"}.fa-triangle:before{content:"\f2ec"}.fa-triangle-music:before{content:"\f8e2"}.fa-tripadvisor:before{content:"\f262"}.fa-trophy:before{content:"\f091"}.fa-trophy-alt:before{content:"\f2eb"}.fa-truck:before{content:"\f0d1"}.fa-truck-container:before{content:"\f4dc"}.fa-truck-couch:before{content:"\f4dd"}.fa-truck-loading:before{content:"\f4de"}.fa-truck-monster:before{content:"\f63b"}.fa-truck-moving:before{content:"\f4df"}.fa-truck-pickup:before{content:"\f63c"}.fa-truck-plow:before{content:"\f7de"}.fa-truck-ramp:before{content:"\f4e0"}.fa-trumpet:before{content:"\f8e3"}.fa-tshirt:before{content:"\f553"}.fa-tty:before{content:"\f1e4"}.fa-tumblr:before{content:"\f173"}.fa-tumblr-square:before{content:"\f174"}.fa-turkey:before{content:"\f725"}.fa-turntable:before{content:"\f8e4"}.fa-turtle:before{content:"\f726"}.fa-tv:before{content:"\f26c"}.fa-tv-alt:before{content:"\f8e5"}.fa-tv-music:before{content:"\f8e6"}.fa-tv-retro:before{content:"\f401"}.fa-twitch:before{content:"\f1e8"}.fa-twitter:before{content:"\f099"}.fa-twitter-square:before{content:"\f081"}.fa-typewriter:before{content:"\f8e7"}.fa-typo3:before{content:"\f42b"}.fa-uber:before{content:"\f402"}.fa-ubuntu:before{content:"\f7df"}.fa-ufo:before{content:"\f947"}.fa-ufo-beam:before{content:"\f948"}.fa-uikit:before{content:"\f403"}.fa-umbraco:before{content:"\f8e8"}.fa-umbrella:before{content:"\f0e9"}.fa-umbrella-beach:before{content:"\f5ca"}.fa-underline:before{content:"\f0cd"}.fa-undo:before{content:"\f0e2"}.fa-undo-alt:before{content:"\f2ea"}.fa-unicorn:before{content:"\f727"}.fa-union:before{content:"\f6a2"}.fa-uniregistry:before{content:"\f404"}.fa-unity:before{content:"\f949"}.fa-universal-access:before{content:"\f29a"}.fa-university:before{content:"\f19c"}.fa-unlink:before{content:"\f127"}.fa-unlock:before{content:"\f09c"}.fa-unlock-alt:before{content:"\f13e"}.fa-untappd:before{content:"\f405"}.fa-upload:before{content:"\f093"}.fa-ups:before{content:"\f7e0"}.fa-usb:before{content:"\f287"}.fa-usb-drive:before{content:"\f8e9"}.fa-usd-circle:before{content:"\f2e8"}.fa-usd-square:before{content:"\f2e9"}.fa-user:before{content:"\f007"}.fa-user-alien:before{content:"\f94a"}.fa-user-alt:before{content:"\f406"}.fa-user-alt-slash:before{content:"\f4fa"}.fa-user-astronaut:before{content:"\f4fb"}.fa-user-chart:before{content:"\f6a3"}.fa-user-check:before{content:"\f4fc"}.fa-user-circle:before{content:"\f2bd"}.fa-user-clock:before{content:"\f4fd"}.fa-user-cog:before{content:"\f4fe"}.fa-user-cowboy:before{content:"\f8ea"}.fa-user-crown:before{content:"\f6a4"}.fa-user-edit:before{content:"\f4ff"}.fa-user-friends:before{content:"\f500"}.fa-user-graduate:before{content:"\f501"}.fa-user-hard-hat:before{content:"\f82c"}.fa-user-headset:before{content:"\f82d"}.fa-user-injured:before{content:"\f728"}.fa-user-lock:before{content:"\f502"}.fa-user-md:before{content:"\f0f0"}.fa-user-md-chat:before{content:"\f82e"}.fa-user-minus:before{content:"\f503"}.fa-user-music:before{content:"\f8eb"}.fa-user-ninja:before{content:"\f504"}.fa-user-nurse:before{content:"\f82f"}.fa-user-plus:before{content:"\f234"}.fa-user-robot:before{content:"\f94b"}.fa-user-secret:before{content:"\f21b"}.fa-user-shield:before{content:"\f505"}.fa-user-slash:before{content:"\f506"}.fa-user-tag:before{content:"\f507"}.fa-user-tie:before{content:"\f508"}.fa-user-times:before{content:"\f235"}.fa-user-visor:before{content:"\f94c"}.fa-users:before{content:"\f0c0"}.fa-users-class:before{content:"\f63d"}.fa-users-cog:before{content:"\f509"}.fa-users-crown:before{content:"\f6a5"}.fa-users-medical:before{content:"\f830"}.fa-usps:before{content:"\f7e1"}.fa-ussunnah:before{content:"\f407"}.fa-utensil-fork:before{content:"\f2e3"}.fa-utensil-knife:before{content:"\f2e4"}.fa-utensil-spoon:before{content:"\f2e5"}.fa-utensils:before{content:"\f2e7"}.fa-utensils-alt:before{content:"\f2e6"}.fa-vaadin:before{content:"\f408"}.fa-vacuum:before{content:"\f94d"}.fa-vacuum-robot:before{content:"\f94e"}.fa-value-absolute:before{content:"\f6a6"}.fa-vector-square:before{content:"\f5cb"}.fa-venus:before{content:"\f221"}.fa-venus-double:before{content:"\f226"}.fa-venus-mars:before{content:"\f228"}.fa-vhs:before{content:"\f8ec"}.fa-viacoin:before{content:"\f237"}.fa-viadeo:before{content:"\f2a9"}.fa-viadeo-square:before{content:"\f2aa"}.fa-vial:before{content:"\f492"}.fa-vials:before{content:"\f493"}.fa-viber:before{content:"\f409"}.fa-video:before{content:"\f03d"}.fa-video-plus:before{content:"\f4e1"}.fa-video-slash:before{content:"\f4e2"}.fa-vihara:before{content:"\f6a7"}.fa-vimeo:before{content:"\f40a"}.fa-vimeo-square:before{content:"\f194"}.fa-vimeo-v:before{content:"\f27d"}.fa-vine:before{content:"\f1ca"}.fa-violin:before{content:"\f8ed"}.fa-vk:before{content:"\f189"}.fa-vnv:before{content:"\f40b"}.fa-voicemail:before{content:"\f897"}.fa-volcano:before{content:"\f770"}.fa-volleyball-ball:before{content:"\f45f"}.fa-volume:before{content:"\f6a8"}.fa-volume-down:before{content:"\f027"}.fa-volume-mute:before{content:"\f6a9"}.fa-volume-off:before{content:"\f026"}.fa-volume-slash:before{content:"\f2e2"}.fa-volume-up:before{content:"\f028"}.fa-vote-nay:before{content:"\f771"}.fa-vote-yea:before{content:"\f772"}.fa-vr-cardboard:before{content:"\f729"}.fa-vuejs:before{content:"\f41f"}.fa-wagon-covered:before{content:"\f8ee"}.fa-walker:before{content:"\f831"}.fa-walkie-talkie:before{content:"\f8ef"}.fa-walking:before{content:"\f554"}.fa-wallet:before{content:"\f555"}.fa-wand:before{content:"\f72a"}.fa-wand-magic:before{content:"\f72b"}.fa-warehouse:before{content:"\f494"}.fa-warehouse-alt:before{content:"\f495"}.fa-washer:before{content:"\f898"}.fa-watch:before{content:"\f2e1"}.fa-watch-calculator:before{content:"\f8f0"}.fa-watch-fitness:before{content:"\f63e"}.fa-water:before{content:"\f773"}.fa-water-lower:before{content:"\f774"}.fa-water-rise:before{content:"\f775"}.fa-wave-sine:before{content:"\f899"}.fa-wave-square:before{content:"\f83e"}.fa-wave-triangle:before{content:"\f89a"}.fa-waveform:before{content:"\f8f1"}.fa-waveform-path:before{content:"\f8f2"}.fa-waze:before{content:"\f83f"}.fa-webcam:before{content:"\f832"}.fa-webcam-slash:before{content:"\f833"}.fa-weebly:before{content:"\f5cc"}.fa-weibo:before{content:"\f18a"}.fa-weight:before{content:"\f496"}.fa-weight-hanging:before{content:"\f5cd"}.fa-weixin:before{content:"\f1d7"}.fa-whale:before{content:"\f72c"}.fa-whatsapp:before{content:"\f232"}.fa-whatsapp-square:before{content:"\f40c"}.fa-wheat:before{content:"\f72d"}.fa-wheelchair:before{content:"\f193"}.fa-whistle:before{content:"\f460"}.fa-whmcs:before{content:"\f40d"}.fa-wifi:before{content:"\f1eb"}.fa-wifi-1:before{content:"\f6aa"}.fa-wifi-2:before{content:"\f6ab"}.fa-wifi-slash:before{content:"\f6ac"}.fa-wikipedia-w:before{content:"\f266"}.fa-wind:before{content:"\f72e"}.fa-wind-turbine:before{content:"\f89b"}.fa-wind-warning:before{content:"\f776"}.fa-window:before{content:"\f40e"}.fa-window-alt:before{content:"\f40f"}.fa-window-close:before{content:"\f410"}.fa-window-frame:before{content:"\f94f"}.fa-window-frame-open:before{content:"\f950"}.fa-window-maximize:before{content:"\f2d0"}.fa-window-minimize:before{content:"\f2d1"}.fa-window-restore:before{content:"\f2d2"}.fa-windows:before{content:"\f17a"}.fa-windsock:before{content:"\f777"}.fa-wine-bottle:before{content:"\f72f"}.fa-wine-glass:before{content:"\f4e3"}.fa-wine-glass-alt:before{content:"\f5ce"}.fa-wix:before{content:"\f5cf"}.fa-wizards-of-the-coast:before{content:"\f730"}.fa-wolf-pack-battalion:before{content:"\f514"}.fa-won-sign:before{content:"\f159"}.fa-wordpress:before{content:"\f19a"}.fa-wordpress-simple:before{content:"\f411"}.fa-wpbeginner:before{content:"\f297"}.fa-wpexplorer:before{content:"\f2de"}.fa-wpforms:before{content:"\f298"}.fa-wpressr:before{content:"\f3e4"}.fa-wreath:before{content:"\f7e2"}.fa-wrench:before{content:"\f0ad"}.fa-x-ray:before{content:"\f497"}.fa-xbox:before{content:"\f412"}.fa-xing:before{content:"\f168"}.fa-xing-square:before{content:"\f169"}.fa-y-combinator:before{content:"\f23b"}.fa-yahoo:before{content:"\f19e"}.fa-yammer:before{content:"\f840"}.fa-yandex:before{content:"\f413"}.fa-yandex-international:before{content:"\f414"}.fa-yarn:before{content:"\f7e3"}.fa-yelp:before{content:"\f1e9"}.fa-yen-sign:before{content:"\f157"}.fa-yin-yang:before{content:"\f6ad"}.fa-yoast:before{content:"\f2b1"}.fa-youtube:before{content:"\f167"}.fa-youtube-square:before{content:"\f431"}.fa-zhihu:before{content:"\f63f"}.sr-only{border:0;clip:rect(0,0,0,0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.sr-only-focusable:active,.sr-only-focusable:focus{clip:auto;height:auto;margin:0;overflow:visible;position:static;width:auto}



/* ==== styles.css ==== */
/* ============================================================
   EuroNet White — styles.css (light theme)
   All component styles: header, hero-video, tariffs, TV,
   security, cards, article, shop, footer, responsive
   ============================================================ */

/* =========================
   TOP BAR
   ========================= */
.topbar {
    background: #e8f7f5;
    border-bottom: 1px solid #d0ede9;
    font-size: 0.8rem;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 101;
    transition: transform var(--speed-slow) var(--ease);
}

.topbar__inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    height: 36px;
}

.topbar__left,
.topbar__right {
    display: flex;
    align-items: center;
    gap: 6px;
}

.topbar__item {
    color: #3a5a7c;
    font-weight: 500;
    display: flex;
    align-items: center;
    gap: 5px;
    padding: 0 6px;
    transition: color var(--speed);
}
.topbar__item:hover { color: #00897B; }
.topbar__item i { color: #00BFA6; font-size: 0.75rem; }

.topbar__item--phone { display: none; }

.topbar__item--cabinet {
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    font-size: 0.75rem;
}

.topbar__sep {
    color: #b0d4cf;
    font-size: 0.75rem;
}

.topbar__btn {
    display: inline-flex;
    align-items: center;
    padding: 5px 18px;
    background: #00BFA6;
    color: var(--tt);
    font-size: 0.75rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    border-radius: 4px;
    margin-left: 10px;
    transition: all var(--speed);
}
.topbar__btn:hover {
    background: #00897B;
    color: var(--tt);
}

/* Hide topbar on scroll */
.topbar--hidden { transform: translateY(-100%); }


/* =========================
   HEADER
   ========================= */
.header {
    position: fixed;
    top: 36px;
    left: 0;
    right: 0;
    z-index: 100;
    background: var(--glass-bg);
    backdrop-filter: blur(var(--glass-blur));
    border-bottom: 1px solid var(--glass-border);
    transition: all var(--speed-slow) var(--ease);
}

.header--transparent {
    background: transparent;
    backdrop-filter: none;
    border-bottom-color: transparent;
}

.header--scrolled {
    top: 0;
    background: rgba(255, 255, 255, 0.95);
    backdrop-filter: blur(20px);
    border-bottom-color: var(--bdc);
    box-shadow: 0 2px 15px rgba(0, 0, 0, 0.08);
}
.header--scrolled .header__nav a { color: var(--tt-secondary); }
.header--scrolled .header__nav a:hover { color: var(--tt); }
.header--scrolled .header__auth-btn { color: var(--tt-secondary); border-color: var(--bdc); }
.header--scrolled .header__auth-btn:hover { color: var(--accent); border-color: var(--accent); }
.header--scrolled .header__cart-icon { color: var(--tt-secondary); border-color: var(--bdc); }
.header--scrolled .header__cart-icon:hover { color: var(--accent); border-color: var(--accent); }

.header__inner {
    display: flex;
    align-items: center;
    gap: 24px;
    height: 70px;
}

.header__logo {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-shrink: 0;
    color: var(--tt);
}
.header__logo:hover { color: var(--tt); }

.header__logo-img {
    height: 32px;
    width: auto;
}

/* Nav */
.header__nav {
    display: flex;
    align-items: center;
    gap: 4px;
    flex: 1;
}
.header__nav a {
    padding: 6px 14px;
    font-size: 0.9rem;
    font-weight: 500;
    color: #cbd5e1;
    border-radius: var(--radius);
    transition: all var(--speed) var(--ease);
    white-space: nowrap;
}
.header__nav a:hover {
    color: var(--tt);
    background: var(--bg-hover);
}

.header__right {
    display: flex;
    align-items: center;
    gap: 12px;
    flex-shrink: 0;
}

/* Search */
.header__search {
    position: relative;
    display: flex;
    align-items: center;
}
.header__search input {
    width: 160px;
    padding: 7px 36px 7px 14px;
    font-size: 0.85rem;
    background: var(--bg-elevated);
    border: 1px solid var(--bdc);
    border-radius: 50px;
    color: var(--tt);
    transition: width var(--speed), border-color var(--speed);
}
.header__search input:focus {
    width: 220px;
    border-color: var(--accent);
}
.header__search button {
    position: absolute;
    right: 10px;
    background: none;
    border: none;
    color: var(--tt-fade);
    cursor: pointer;
    font-size: 0.85rem;
}

/* Auth button */
.header__auth-btn {
    background: none;
    border: 2px solid rgba(203, 213, 225, 0.4);
    width: 36px;
    height: 36px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    color: #cbd5e1;
    overflow: hidden;
    transition: border-color var(--speed), color var(--speed);
}
.header__auth-btn:hover { border-color: var(--accent); color: var(--accent); }
.header__auth-btn img,
.header__auth-avatar { width: 100%; height: 100%; object-fit: cover; border-radius: 50%; }

/* Cart icon */
.header__cart-icon {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #cbd5e1;
    border: 2px solid rgba(203, 213, 225, 0.4);
    transition: all var(--speed);
    font-size: 0.85rem;
}
.header__cart-icon:hover { border-color: var(--accent); color: var(--accent); }

/* Phone */
.header__phone-btn {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 8px 16px;
    background: var(--accent);
    color: var(--bg);
    border-radius: 50px;
    font-size: 0.85rem;
    font-weight: 600;
    transition: all var(--speed);
    white-space: nowrap;
}
.header__phone-btn:hover {
    background: var(--accent-hover);
    color: var(--bg);
    box-shadow: var(--accent-glow);
}

/* Burger */
.header__burger {
    display: none;
    flex-direction: column;
    gap: 5px;
    padding: 8px;
    background: none;
    border: none;
    cursor: pointer;
}
.header__burger span {
    width: 22px;
    height: 2px;
    background: var(--tt);
    border-radius: 2px;
    transition: 0.3s;
}
.header__burger.is-active span:nth-child(1) { transform: rotate(45deg) translate(5px, 5px); }
.header__burger.is-active span:nth-child(2) { opacity: 0; }
.header__burger.is-active span:nth-child(3) { transform: rotate(-45deg) translate(5px, -5px); }

/* Mobile menu overlay */
.mobile-menu-overlay {
    display: none;
    position: fixed;
    inset: 0;
    z-index: 98;
    background: rgba(0, 0, 0, 0.6);
    backdrop-filter: blur(4px);
}
body.mobile-menu-is-opened .mobile-menu-overlay { display: block; }

/* Mobile menu panel */
@media (max-width: 992px) {
    .header__nav {
        display: flex;
        flex-direction: column;
        position: fixed;
        top: 0;
        right: -300px;
        width: 280px;
        height: 100vh;
        background: var(--bg-card);
        border-left: 1px solid var(--bdc);
        z-index: 102;
        padding: 80px 24px 24px;
        gap: 0;
        transition: right 0.35s var(--ease);
        overflow-y: auto;
    }
    body.mobile-menu-is-opened .header__nav {
        right: 0;
    }
    .header__nav a {
        padding: 14px 16px;
        font-size: 1rem;
        border-bottom: 1px solid var(--bdc);
        border-radius: 0;
        color: var(--tt);
    }
    .header__nav a:hover {
        background: var(--bg-hover);
        color: var(--accent);
    }
    .header__nav a:last-child {
        border-bottom: none;
    }
}


/* =========================
   VIDEO HERO
   ========================= */
.hero-video {
    position: relative;
    height: 100vh;
    min-height: 600px;
    max-height: 1000px;
    overflow: hidden;
    display: flex;
    align-items: center;
}

.hero-video__media {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    z-index: 0;
}

.hero-video__overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(
        135deg,
        rgba(10, 14, 26, 0.9) 0%,
        rgba(10, 14, 26, 0.7) 40%,
        rgba(10, 14, 26, 0.5) 100%
    );
    z-index: 1;
}

.hero-video__content {
    position: relative;
    z-index: 2;
    width: 100%;
    padding-top: 70px;
}

.hero-video__inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 60px;
}

.hero-video__text {
    max-width: 650px;
}

.hero-video__title {
    font-family: var(--font-display);
    font-size: 3.2rem;
    font-weight: 800;
    line-height: 1.1;
    color: #fff;
    margin-bottom: 20px;
}

.hero-video__accent {
    color: var(--accent);
    position: relative;
}

.hero-video__subtitle {
    font-size: 1.15rem;
    color: var(--tt-secondary);
    line-height: 1.7;
    margin-bottom: 28px;
    max-width: 520px;
}

/* Badges */
.hero-video__badges {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-bottom: 36px;
}

.hero-badge {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 10px 18px;
    background: var(--glass-bg);
    backdrop-filter: blur(10px);
    border: 1px solid var(--glass-border);
    border-radius: 50px;
    font-size: 0.85rem;
    font-weight: 500;
    color: var(--tt);
    transition: all var(--speed);
}
.hero-badge:hover {
    border-color: var(--accent);
    background: var(--accent-soft);
}
.hero-badge i {
    color: var(--accent);
    font-size: 1rem;
}

/* CTA */
.hero-video__actions {
    display: flex;
    gap: 16px;
    flex-wrap: wrap;
}

/* Stats */
.hero-video__stats {
    display: flex;
    flex-direction: column;
    gap: 32px;
}

.hero-stat {
    text-align: center;
    padding: 24px 32px;
    background: var(--glass-bg);
    backdrop-filter: blur(12px);
    border: 1px solid var(--glass-border);
    border-radius: var(--radius-lg);
    min-width: 160px;
}

.hero-stat__number {
    font-family: var(--font-display);
    font-size: 2.5rem;
    font-weight: 800;
    color: var(--accent);
    line-height: 1;
}
.hero-stat__number small {
    font-size: 0.5em;
}

.hero-stat__label {
    font-size: 0.85rem;
    color: var(--tt-secondary);
    margin-top: 6px;
}

/* Toggle & Scroll hint */
.hero-video__toggle {
    position: absolute;
    bottom: 100px;
    right: 30px;
    z-index: 3;
    width: 44px;
    height: 44px;
    border-radius: 50%;
    background: var(--glass-bg);
    border: 1px solid var(--glass-border);
    color: var(--tt);
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all var(--speed);
}
.hero-video__toggle:hover {
    background: var(--accent);
    color: var(--bg);
}

.hero-video__scroll-hint {
    position: absolute;
    bottom: 30px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 3;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
    color: var(--tt-fade);
    font-size: 0.8rem;
    animation: bounce-down 2s ease-in-out infinite;
}

@keyframes bounce-down {
    0%, 100% { transform: translateX(-50%) translateY(0); }
    50% { transform: translateX(-50%) translateY(8px); }
}


/* =========================
   SECTIONS
   ========================= */
.section {
    padding: 80px 0;
}

.section--alt {
    background: var(--bg-card);
}

.section-head {
    text-align: center;
    margin-bottom: 48px;
}

.section-head__label {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: 0.8rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    color: var(--accent);
    margin-bottom: 12px;
}

.section-head__title {
    font-family: var(--font-display);
    font-size: 2rem;
    font-weight: 700;
    color: var(--tt);
    margin-bottom: 12px;
}

.section-head__subtitle {
    font-size: 1.05rem;
    color: var(--tt-secondary);
    max-width: 500px;
    margin: 0 auto;
}

.section-head__line {
    flex: 1;
    height: 1px;
    background: var(--bdc);
}

/* For DarkPulse-style inline section heads (article, product) */
.article__comments .section-head,
.product-page .section-head {
    display: flex;
    align-items: center;
    gap: 16px;
    text-align: left;
    margin-bottom: 24px;
}


/* =========================
   PAGE HERO (inner pages)
   ========================= */
.page-hero {
    padding: 140px 0 40px;
    background: linear-gradient(135deg, var(--bg) 0%, var(--bg-card) 100%);
    border-bottom: 1px solid var(--bdc);
}

.page-hero--sm {
    padding: 120px 0 30px;
}

.page-hero__title {
    font-family: var(--font-display);
    font-size: 2rem;
    font-weight: 700;
    color: var(--tt);
    margin-bottom: 8px;
}

.page-hero__crumbs {
    font-size: 0.85rem;
    color: var(--tt-fade);
}
.page-hero__crumbs a { color: var(--tt-secondary); }
.page-hero__crumbs a:hover { color: var(--accent); }


/* =========================
   TARIFFS
   ========================= */
.tariff-toggle {
    display: flex;
    justify-content: center;
    gap: 4px;
    padding: 4px;
    background: var(--bg-elevated);
    border-radius: 50px;
    width: fit-content;
    margin: 0 auto 40px;
    border: 1px solid var(--bdc);
}

.tariff-toggle__btn {
    padding: 10px 24px;
    font-size: 0.9rem;
    font-weight: 600;
    color: var(--tt-secondary);
    background: none;
    border: none;
    border-radius: 50px;
    cursor: pointer;
    transition: all var(--speed);
    display: flex;
    align-items: center;
    gap: 8px;
}
.tariff-toggle__btn.is-active {
    background: var(--accent);
    color: var(--bg);
}

.tariff-toggle__badge {
    font-size: 0.7rem;
    padding: 2px 8px;
    background: var(--success);
    color: var(--tt);
    border-radius: 50px;
    font-weight: 700;
}

.tariffs-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
}

.tariff-card {
    position: relative;
    background: var(--bg-card);
    border: 1px solid var(--bdc);
    border-radius: var(--radius-lg);
    padding: 32px 24px;
    display: flex;
    flex-direction: column;
    transition: all var(--speed-slow) var(--ease);
}
.tariff-card:hover {
    transform: translateY(-6px);
    border-color: var(--accent);
    box-shadow: 0 12px 40px rgba(0, 191, 166, 0.1);
}

.tariff-card--popular {
    border-color: var(--accent);
    background: linear-gradient(135deg, var(--bg-card) 0%, rgba(0, 191, 166, 0.05) 100%);
    box-shadow: 0 0 30px rgba(0, 191, 166, 0.1);
}

.tariff-card__badge {
    position: absolute;
    top: -12px;
    left: 50%;
    transform: translateX(-50%);
    padding: 4px 20px;
    background: var(--accent);
    color: var(--bg);
    font-size: 0.75rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    border-radius: 50px;
    white-space: nowrap;
}

.tariff-card__header {
    text-align: center;
    margin-bottom: 24px;
}

.tariff-card__icon {
    width: 56px;
    height: 56px;
    margin: 0 auto 16px;
    border-radius: var(--radius-lg);
    background: var(--accent-soft);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.4rem;
    color: var(--accent);
}

.tariff-card__name {
    font-family: var(--font-display);
    font-size: 1.2rem;
    font-weight: 700;
    color: var(--tt);
    margin-bottom: 4px;
}

.tariff-card__speed {
    font-size: 0.9rem;
    color: var(--tt-secondary);
}

.tariff-card__pricing {
    text-align: center;
    margin-bottom: 24px;
    padding-bottom: 24px;
    border-bottom: 1px solid var(--bdc);
}

.tariff-card__price-value {
    font-family: var(--font-display);
    font-size: 2.8rem;
    font-weight: 800;
    color: var(--accent);
    line-height: 1;
    transition: opacity 0.2s, transform 0.2s;
}

.tariff-card__currency {
    font-size: 1.1rem;
    font-weight: 600;
    color: var(--tt-secondary);
    margin-left: 4px;
}

.tariff-card__period {
    font-size: 0.9rem;
    color: var(--tt-fade);
}

.tariff-card__features {
    list-style: none;
    margin-bottom: 24px;
    flex: 1;
}
.tariff-card__features li {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 8px 0;
    font-size: 0.9rem;
    color: var(--tt);
    border-bottom: 1px solid rgba(255, 255, 255, 0.04);
}
.tariff-card__features li:last-child { border-bottom: none; }
.tariff-card__features li i { color: var(--accent); font-size: 0.8rem; width: 16px; text-align: center; }
.tariff-card__feature--muted { color: var(--tt-fade) !important; }
.tariff-card__feature--muted i { color: var(--tt-fade) !important; }

.tariff-card__btn { width: 100%; }

.tariffs-promo {
    margin-top: 32px;
}
.tariffs-promo__text {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 14px 28px;
    background: var(--accent-soft);
    border: 1px solid rgba(0, 191, 166, 0.2);
    border-radius: 50px;
    color: var(--accent);
    font-size: 0.95rem;
    font-weight: 500;
}


/* =========================
   TV PACKAGES
   ========================= */
.tv-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
}

.tv-card {
    position: relative;
    background: var(--bg-elevated);
    border: 1px solid var(--bdc);
    border-radius: var(--radius-lg);
    padding: 32px 24px;
    text-align: center;
    display: flex;
    flex-direction: column;
    transition: all var(--speed-slow) var(--ease);
}
.tv-card:hover {
    transform: translateY(-4px);
    border-color: var(--accent);
}

.tv-card--popular {
    border-color: var(--accent);
    background: linear-gradient(135deg, var(--bg-elevated) 0%, rgba(0, 191, 166, 0.05) 100%);
}

.tv-card__badge {
    position: absolute;
    top: -10px;
    right: 20px;
    padding: 4px 16px;
    background: var(--warning);
    color: var(--tt);
    font-size: 0.7rem;
    font-weight: 700;
    text-transform: uppercase;
    border-radius: 50px;
}

.tv-card__icon {
    font-size: 2rem;
    color: var(--accent);
    margin-bottom: 16px;
}

.tv-card__name {
    font-family: var(--font-display);
    font-size: 1.15rem;
    font-weight: 700;
    color: var(--tt);
    margin-bottom: 8px;
}

.tv-card__channels {
    font-size: 0.9rem;
    color: var(--tt-secondary);
    margin-bottom: 16px;
}
.tv-card__num {
    font-family: var(--font-display);
    font-size: 1.8rem;
    font-weight: 800;
    color: var(--accent);
}

.tv-card__pricing {
    margin-bottom: 20px;
    padding-bottom: 20px;
    border-bottom: 1px solid var(--bdc);
}
.tv-card__price {
    font-family: var(--font-display);
    font-size: 2rem;
    font-weight: 800;
    color: var(--tt);
}
.tv-card__currency {
    font-size: 0.85rem;
    color: var(--tt-fade);
    margin-left: 4px;
}

.tv-card__features {
    list-style: none;
    text-align: left;
    margin-bottom: 24px;
    flex: 1;
}
.tv-card__features li {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 6px 0;
    font-size: 0.9rem;
    color: var(--tt);
}
.tv-card__features li i { color: var(--accent); font-size: 0.8rem; }


/* =========================
   SECURITY
   ========================= */
.security-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
}

.security-card {
    background: var(--bg-card);
    border: 1px solid var(--bdc);
    border-radius: var(--radius-lg);
    padding: 32px;
    transition: all var(--speed-slow) var(--ease);
}
.security-card:hover {
    transform: translateY(-4px);
    border-color: var(--accent);
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.2);
}

.security-card__icon {
    width: 56px;
    height: 56px;
    border-radius: var(--radius);
    background: var(--accent-soft);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.3rem;
    color: var(--accent);
    margin-bottom: 20px;
}

.security-card__title {
    font-family: var(--font-display);
    font-size: 1.1rem;
    font-weight: 600;
    color: var(--tt);
    margin-bottom: 10px;
}

.security-card__text {
    font-size: 0.9rem;
    color: var(--tt-secondary);
    line-height: 1.6;
    margin-bottom: 16px;
}

.security-card__link {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 0.85rem;
    font-weight: 600;
    color: var(--accent);
}
.security-card__link:hover {
    gap: 10px;
    color: var(--accent-hover);
}


/* =========================
   NEWS GRID (short.tpl cards)
   ========================= */
.news-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: var(--gap);
}

.card {
    background: var(--bg-card);
    border-radius: var(--radius-lg);
    overflow: hidden;
    border: 1px solid var(--bdc);
    transition: all var(--speed-slow) var(--ease);
    display: flex;
    flex-direction: column;
}
.card:hover {
    border-color: rgba(0, 191, 166, 0.3);
    transform: translateY(-4px);
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.2);
}
.card .img-responsive { padding-top: 56%; }
.card img { transition: transform 0.5s var(--ease); }
.card:hover img { transform: scale(1.05); }

.card__body {
    padding: 20px;
    flex: 1;
    display: flex;
    flex-direction: column;
}

.card__meta {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 10px;
    font-size: 0.8rem;
}

.card__category {
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: var(--accent);
    font-size: 0.7rem;
}

.card__date { color: var(--tt-fade); }
.card__date i { margin-right: 3px; }

.card__title {
    font-family: var(--font-display);
    font-size: 1.05rem;
    font-weight: 600;
    line-height: 1.35;
    margin-bottom: 8px;
}
.card__title a { color: var(--tt); }
.card__title a:hover { color: var(--accent); }

.card__text {
    font-size: 0.9rem;
    color: var(--tt-secondary);
    line-height: 1.6;
    flex: 1;
}

.card__footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-top: 16px;
    padding-top: 16px;
    border-top: 1px solid var(--bdc);
}

.card__author {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 0.8rem;
    color: var(--tt-secondary);
}
.card__author img {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    object-fit: cover;
}

.card__stats {
    display: flex;
    gap: 12px;
    font-size: 0.8rem;
    color: var(--tt-fade);
}
.card__stats i { margin-right: 3px; }


/* =========================
   FEATURED CARD (custom-featured.tpl)
   ========================= */
.featured-card {
    display: block;
    position: relative;
    border-radius: var(--radius-lg);
    overflow: hidden;
}
.featured-card .img-responsive { padding-top: 45%; }
.featured-card__overlay {
    position: absolute;
    inset: 0;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    padding: 40px;
    background: linear-gradient(to top, rgba(10, 14, 26, 0.95) 0%, transparent 60%);
    z-index: 2;
}
.featured-card__category {
    font-size: 0.75rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: var(--accent);
    background: var(--accent-soft);
    padding: 4px 12px;
    border-radius: 4px;
    width: fit-content;
    margin-bottom: 12px;
}
.featured-card__title {
    font-family: var(--font-display);
    font-size: 1.6rem;
    font-weight: 700;
    color: var(--tt);
    margin-bottom: 10px;
}
.featured-card__meta {
    display: flex;
    gap: 16px;
    font-size: 0.85rem;
    color: var(--tt-fade);
}
.featured-card__meta i { margin-right: 4px; }
.featured-card:hover .featured-card__title { color: var(--accent); }
.featured-card:hover img { transform: scale(1.03); }
.featured-card img { transition: transform 0.5s var(--ease); }


/* =========================
   ARTICLE (full.tpl)
   ========================= */
.article {
    max-width: 800px;
    margin: 0 auto;
}

.article__header {
    margin-bottom: 32px;
}

.article__meta {
    display: flex;
    align-items: center;
    gap: 16px;
    margin-bottom: 16px;
    font-size: 0.85rem;
}
.article__category {
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: var(--accent);
    font-size: 0.75rem;
}
.article__date, .article__views { color: var(--tt-fade); }
.article__date i, .article__views i { margin-right: 4px; }

.article__title {
    font-family: var(--font-display);
    font-size: 2rem;
    font-weight: 700;
    color: var(--tt);
    line-height: 1.2;
    margin-bottom: 20px;
}

.article__author-bar {
    display: flex;
    align-items: center;
    gap: 12px;
}
.article__author-bar img {
    width: 44px;
    height: 44px;
    border-radius: 50%;
    object-fit: cover;
}
.article__author-name {
    font-weight: 600;
    color: var(--tt);
    display: block;
}
.article__author-role {
    font-size: 0.8rem;
    color: var(--tt-fade);
}

.article__poster {
    margin-bottom: 32px;
    border-radius: var(--radius-lg);
    overflow: hidden;
}
.article__poster img {
    width: 100%;
    display: block;
}

.article__intro {
    font-size: 1.15rem;
    color: var(--tt);
    line-height: 1.8;
    margin-bottom: 24px;
    padding-bottom: 24px;
    border-bottom: 1px solid var(--bdc);
    font-weight: 500;
}

.article__gallery {
    margin: 24px 0;
}

.article__footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 24px 0;
    margin-top: 32px;
    border-top: 1px solid var(--bdc);
    border-bottom: 1px solid var(--bdc);
    gap: 16px;
    flex-wrap: wrap;
}

.article__tags {
    font-size: 0.85rem;
    color: var(--tt-secondary);
}
.article__tags a { color: var(--accent); margin-right: 8px; }

/* Prev/Next Nav */
.article__nav {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
    margin: 32px 0;
}
.article__nav-link {
    display: flex;
    flex-direction: column;
    gap: 6px;
    padding: 20px;
    background: var(--bg-card);
    border: 1px solid var(--bdc);
    border-radius: var(--radius);
    transition: all var(--speed);
    color: var(--tt);
}
.article__nav-link:hover {
    border-color: var(--accent);
    color: var(--tt);
}
.article__nav-link--next { text-align: right; }
.article__nav-label {
    font-size: 0.8rem;
    color: var(--tt-fade);
}
.article__nav-title {
    font-weight: 600;
    font-size: 0.9rem;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}


/* =========================
   COMMENTS
   ========================= */
.article__comments { margin-top: 40px; }

.comm {
    display: flex;
    gap: 16px;
    padding: 20px 0;
    border-bottom: 1px solid var(--bdc);
}
.comm:last-child { border-bottom: none; }

.comm__avatar {
    width: 44px;
    height: 44px;
    border-radius: 50%;
    overflow: hidden;
    flex-shrink: 0;
}
.comm__avatar img { width: 100%; height: 100%; object-fit: cover; }

.comm__author {
    font-weight: 600;
    color: var(--tt);
    font-size: 0.9rem;
}
.comm__date {
    font-size: 0.8rem;
    color: var(--tt-fade);
    margin-top: 2px;
}
.comm__date i { margin-right: 3px; }
.comm__body { margin-top: 8px; font-size: 0.95rem; color: var(--tt-secondary); line-height: 1.6; }

/* Comment widget */
.comm-widget {
    padding: 14px;
    background: var(--bg-card);
    border-radius: var(--radius);
    border: 1px solid var(--bdc);
    margin-bottom: 12px;
}
.comm-widget__header { display: flex; align-items: center; gap: 10px; margin-bottom: 8px; }
.comm-widget__avatar { width: 32px; height: 32px; border-radius: 50%; overflow: hidden; }
.comm-widget__avatar img { width: 100%; height: 100%; object-fit: cover; }
.comm-widget__author { font-weight: 600; font-size: 0.85rem; color: var(--tt); }
.comm-widget__date { font-size: 0.75rem; color: var(--tt-fade); }
.comm-widget__text { font-size: 0.85rem; color: var(--tt-secondary); }
.comm-widget__link { font-size: 0.8rem; color: var(--accent); margin-top: 6px; display: inline-block; }

/* Add comment form */
.ac-form {
    margin-bottom: 24px;
    padding: 24px;
    background: var(--bg-card);
    border: 1px solid var(--bdc);
    border-radius: var(--radius-lg);
}
.ac-form__heading {
    font-family: var(--font-display);
    font-size: 1rem;
    font-weight: 600;
    color: var(--tt);
    margin-bottom: 16px;
}
.ac-form__row { margin-bottom: 12px; }
.ac-form__editor { margin-bottom: 12px; }
.ac-form__editor textarea { min-height: 80px; }
.ac-form__actions { margin-top: 12px; }


/* =========================
   SHOP — PRODUCT CARDS
   ========================= */
.prod-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: var(--gap);
}

.prod-card__img { display: block; }
.prod-slide__img { display: block; }
.prod-mini__img { display: block; }
.prod-new__img { display: block; }
.card__img { display: block; }

.prod-card {
    background: var(--bg-card);
    border: 1px solid var(--bdc);
    border-radius: var(--radius-lg);
    overflow: hidden;
    transition: all var(--speed-slow) var(--ease);
}
.prod-card:hover {
    border-color: var(--accent);
    transform: translateY(-4px);
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.2);
}
.prod-card .img-responsive { padding-top: 70%; }
.prod-card img { transition: transform 0.5s var(--ease); }
.prod-card:hover img { transform: scale(1.05); }

.prod-card__badge {
    position: absolute;
    top: 12px;
    left: 12px;
    z-index: 2;
    padding: 4px 12px;
    background: var(--danger);
    color: var(--tt);
    font-size: 0.75rem;
    font-weight: 700;
    border-radius: 50px;
}

.prod-card__body { padding: 16px; }

.prod-card__category {
    font-size: 0.7rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: var(--tt-fade);
    margin-bottom: 6px;
}

.prod-card__title {
    font-family: var(--font-display);
    font-size: 0.95rem;
    font-weight: 600;
    line-height: 1.35;
    margin-bottom: 8px;
}
.prod-card__title a { color: var(--tt); }
.prod-card__title a:hover { color: var(--accent); }

.prod-card__rating { margin-bottom: 10px; }

.prod-card__price-wrap {
    display: flex;
    align-items: baseline;
    gap: 8px;
    margin-bottom: 12px;
}
.prod-card__old-price {
    font-size: 0.85rem;
    color: var(--tt-fade);
    text-decoration: line-through;
}
.prod-card__price {
    font-family: var(--font-display);
    font-size: 1.2rem;
    font-weight: 700;
    color: var(--accent);
}

.prod-card__actions {
    display: flex;
    align-items: center;
    gap: 8px;
}
.prod-card__quick {
    width: 38px;
    height: 38px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--bdc);
    border-radius: var(--radius);
    color: var(--tt-secondary);
    transition: all var(--speed);
}
.prod-card__quick:hover {
    border-color: var(--accent);
    color: var(--accent);
}

/* Product slider card */
.prod-slide {
    background: var(--bg-card);
    border: 1px solid var(--bdc);
    border-radius: var(--radius-lg);
    overflow: hidden;
    transition: all var(--speed-slow) var(--ease);
}
.prod-slide:hover {
    border-color: var(--accent);
    transform: translateY(-4px);
}
.prod-slide .img-responsive { padding-top: 70%; }
.prod-slide img { transition: transform 0.5s var(--ease); }
.prod-slide:hover img { transform: scale(1.05); }

.prod-slide__badge {
    position: absolute;
    top: 12px;
    left: 12px;
    z-index: 2;
    padding: 4px 12px;
    background: var(--danger);
    color: var(--tt);
    font-size: 0.75rem;
    font-weight: 700;
    border-radius: 50px;
}

.prod-slide__body { padding: 16px; }
.prod-slide__category { font-size: 0.7rem; text-transform: uppercase; color: var(--tt-fade); margin-bottom: 4px; }
.prod-slide__title { font-size: 0.9rem; font-weight: 600; margin-bottom: 10px; }
.prod-slide__title a { color: var(--tt); }
.prod-slide__title a:hover { color: var(--accent); }
.prod-slide__price-wrap { display: flex; align-items: baseline; gap: 8px; margin-bottom: 12px; }
.prod-slide__old-price { font-size: 0.85rem; color: var(--tt-fade); text-decoration: line-through; }
.prod-slide__price { font-family: var(--font-display); font-size: 1.1rem; font-weight: 700; color: var(--accent); }

/* Mini product card */
.prod-mini {
    display: flex;
    background: var(--bg-card);
    border: 1px solid var(--bdc);
    border-radius: var(--radius);
    overflow: hidden;
    transition: all var(--speed);
}
.prod-mini:hover { border-color: var(--accent); color: inherit; }
.prod-mini__img { width: 80px; flex-shrink: 0; }
.prod-mini__img .img-responsive { padding-top: 100%; }
.prod-mini__badge { position: absolute; top: 4px; left: 4px; z-index: 2; padding: 2px 8px; background: var(--danger); color: #fff; font-size: 0.65rem; font-weight: 700; border-radius: 50px; }
.prod-mini__body { padding: 10px; display: flex; flex-direction: column; justify-content: center; }
.prod-mini__title { font-size: 0.85rem; font-weight: 600; color: var(--tt); line-clamp: 2; }
.prod-mini__price-wrap { display: flex; align-items: baseline; gap: 6px; margin-top: 4px; }
.prod-mini__old-price { font-size: 0.75rem; color: var(--tt-fade); text-decoration: line-through; }
.prod-mini__price { font-size: 0.9rem; font-weight: 700; color: var(--accent); }

/* New product card */
.prod-new {
    display: block;
    background: var(--bg-card);
    border: 1px solid var(--bdc);
    border-radius: var(--radius);
    overflow: hidden;
    transition: all var(--speed);
}
.prod-new:hover { border-color: var(--accent); color: inherit; }
.prod-new__img .img-responsive { padding-top: 70%; }
.prod-new__badge { position: absolute; top: 8px; left: 8px; z-index: 2; padding: 2px 10px; background: var(--danger); color: #fff; font-size: 0.7rem; font-weight: 700; border-radius: 50px; }
.prod-new__body { padding: 12px; }
.prod-new__category { font-size: 0.65rem; text-transform: uppercase; color: var(--tt-fade); margin-bottom: 4px; }
.prod-new__title { font-size: 0.85rem; font-weight: 600; color: var(--tt); }
.prod-new__price-wrap { display: flex; align-items: baseline; gap: 6px; margin-top: 6px; }
.prod-new__old-price { font-size: 0.75rem; color: var(--tt-fade); text-decoration: line-through; }
.prod-new__price { font-size: 0.95rem; font-weight: 700; color: var(--accent); }


/* =========================
   PRODUCT PAGE (product.tpl)
   ========================= */
.product-page__top {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 40px;
    margin-bottom: 40px;
}

.product-page__poster {
    border-radius: var(--radius-lg);
    overflow: hidden;
}
.product-page__poster img { width: 100%; display: block; }
.product-page__gallery-items { display: grid; grid-template-columns: repeat(4, 1fr); gap: 10px; margin-top: 12px; }
.product-page__gallery-items img { border-radius: var(--radius); cursor: pointer; transition: opacity var(--speed); }
.product-page__gallery-items img:hover { opacity: 0.8; }

.product-page__category { font-size: 0.8rem; color: var(--tt-fade); text-transform: uppercase; margin-bottom: 8px; }
.product-page__title { font-family: var(--font-display); font-size: 1.8rem; font-weight: 700; color: var(--tt); margin-bottom: 16px; }

.product-page__meta { display: flex; gap: 16px; flex-wrap: wrap; font-size: 0.85rem; color: var(--tt-secondary); margin-bottom: 16px; }
.product-page__meta i { margin-right: 4px; color: var(--accent); }

.product-page__rating-bar { display: flex; align-items: center; gap: 12px; margin-bottom: 20px; }
.product-page__reviews-count { font-size: 0.85rem; color: var(--tt-fade); }

.product-page__price-box {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 20px;
    background: var(--bg-elevated);
    border-radius: var(--radius);
    margin-bottom: 20px;
}
.product-page__price-wrap { display: flex; align-items: baseline; gap: 10px; }
.product-page__old-price { font-size: 1rem; color: var(--tt-fade); text-decoration: line-through; }
.product-page__price { font-family: var(--font-display); font-size: 2rem; font-weight: 800; color: var(--accent); }
.product-page__sale-badge { padding: 4px 12px; background: var(--danger); color: #fff; font-size: 0.8rem; font-weight: 700; border-radius: 50px; }

.product-page__short { font-size: 0.95rem; color: var(--tt-secondary); line-height: 1.6; margin-bottom: 20px; }

.product-page__option { margin-bottom: 16px; }
.product-page__option-label { font-size: 0.85rem; font-weight: 600; color: var(--tt); margin-bottom: 8px; }

.product-page__cart-row { display: flex; align-items: center; gap: 16px; margin-top: 24px; }

.product-page__content { margin-bottom: 40px; }
.product-page__reviews { margin-bottom: 40px; }


/* =========================
   QUICK VIEW
   ========================= */
.quick-view {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 30px;
    padding: 30px;
}

.quick-view__poster { border-radius: var(--radius); overflow: hidden; }
.quick-view__poster img { width: 100%; display: block; }

.quick-view__category { font-size: 0.75rem; text-transform: uppercase; color: var(--tt-fade); margin-bottom: 8px; }
.quick-view__title { font-family: var(--font-display); font-size: 1.3rem; font-weight: 700; color: var(--tt); margin-bottom: 12px; }

.quick-view__price-wrap { display: flex; align-items: baseline; gap: 10px; margin-bottom: 8px; }
.quick-view__old-price { font-size: 0.9rem; color: var(--tt-fade); text-decoration: line-through; }
.quick-view__price { font-family: var(--font-display); font-size: 1.5rem; font-weight: 800; color: var(--accent); }
.quick-view__sale-badge { display: inline-block; padding: 3px 10px; background: var(--danger); color: #fff; font-size: 0.75rem; font-weight: 700; border-radius: 50px; margin-bottom: 12px; }

.quick-view__meta { display: flex; gap: 16px; font-size: 0.8rem; color: var(--tt-fade); margin-bottom: 12px; }
.quick-view__meta i { margin-right: 4px; }

.quick-view__short { font-size: 0.9rem; color: var(--tt-secondary); line-height: 1.6; margin-bottom: 16px; }

.quick-view__option { margin-bottom: 12px; }
.quick-view__option-label { font-size: 0.8rem; font-weight: 600; color: var(--tt); margin-bottom: 4px; display: block; }

.quick-view__cart-row { display: flex; align-items: center; gap: 12px; margin-bottom: 16px; }
.quick-view__full-link { font-size: 0.85rem; color: var(--accent); font-weight: 600; }


/* =========================
   REVIEWS
   ========================= */
.review {
    padding: 20px 0;
    border-bottom: 1px solid var(--bdc);
}
.review:last-child { border-bottom: none; }

.review__header {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 10px;
}
.review__avatar { width: 40px; height: 40px; border-radius: 50%; overflow: hidden; }
.review__avatar img { width: 100%; height: 100%; object-fit: cover; }
.review__author { font-weight: 600; color: var(--tt); font-size: 0.9rem; }
.review__date { font-size: 0.8rem; color: var(--tt-fade); }
.review__date i { margin-right: 3px; }
.review__rating { margin-left: auto; }
.review__body { font-size: 0.9rem; color: var(--tt-secondary); line-height: 1.6; }

/* Add review form */
.add-review {
    padding: 24px;
    background: var(--bg-card);
    border: 1px solid var(--bdc);
    border-radius: var(--radius-lg);
    margin-bottom: 24px;
}
.add-review__heading { font-family: var(--font-display); font-size: 1rem; font-weight: 600; color: var(--tt); margin-bottom: 16px; }
.add-review__row { margin-bottom: 12px; }
.add-review__actions { margin-top: 16px; }


/* =========================
   CART
   ========================= */
.cart-page__title {
    font-family: var(--font-display);
    font-size: 1.8rem;
    font-weight: 700;
    color: var(--tt);
    margin-bottom: 24px;
}

.cart-page__content { margin-bottom: 32px; }

.cart-page__promo { margin: 16px 0; }

.cart-page__summary {
    padding: 20px;
    background: var(--bg-card);
    border-radius: var(--radius);
    border: 1px solid var(--bdc);
}

.cart-page__total-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-size: 1.1rem;
    font-weight: 600;
}
.cart-page__total-val {
    font-family: var(--font-display);
    font-size: 1.4rem;
    font-weight: 800;
    color: var(--accent);
}

.cart-page__order { margin-top: 32px; }

.cart-page__fields {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
    margin-bottom: 16px;
}

.cart-page__field { margin-bottom: 12px; }

.cart-page__delivery,
.cart-page__payment { margin-bottom: 16px; }

.cart-page__submit { margin-top: 24px; }


/* =========================
   ORDERS
   ========================= */
.orders-page__title {
    font-family: var(--font-display);
    font-size: 1.8rem;
    font-weight: 700;
    color: var(--tt);
    margin-bottom: 24px;
}


/* =========================
   PAYMENT
   ========================= */
.payment-page__title {
    font-family: var(--font-display);
    font-size: 1.8rem;
    font-weight: 700;
    color: var(--tt);
    margin-bottom: 24px;
}

.payment-page__card {
    background: var(--bg-card);
    border: 1px solid var(--bdc);
    border-radius: var(--radius-lg);
    padding: 24px;
    margin-bottom: 24px;
}

.payment-page__info-row {
    display: flex;
    justify-content: space-between;
    padding: 8px 0;
    border-bottom: 1px solid var(--bdc);
}
.payment-page__info-row:last-child { border-bottom: none; }
.payment-page__label { color: var(--tt-secondary); }
.payment-page__val { font-weight: 600; color: var(--tt); }
.payment-page__total { font-family: var(--font-display); font-size: 1.2rem; color: var(--accent); }

.payment-page__status {
    margin-top: 16px;
    padding: 16px;
    border-radius: var(--radius);
    font-weight: 600;
    display: flex;
    align-items: center;
    gap: 10px;
}
.payment-page__status--pending { background: var(--ui-bg-attention); color: var(--warning); }
.payment-page__status--paid { background: rgba(34, 197, 94, 0.1); color: var(--success); }
.payment-page__timeout { font-size: 0.85rem; color: var(--tt-fade); margin-left: auto; }

.payment-page__promo {
    margin-top: 12px;
    padding: 12px;
    background: var(--accent-soft);
    border-radius: var(--radius);
    color: var(--accent);
    font-size: 0.9rem;
}
.payment-page__promo i { margin-right: 6px; }

.payment-page__items { margin: 24px 0; }
.payment-page__methods { margin: 24px 0; }


/* =========================
   PAGINATION
   ========================= */

/* CMS-generated pagination: <ul class="navigation"> */
.navigation {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    margin-top: 48px;
    padding: 20px 0;
    list-style: none;
    flex-wrap: wrap;
}

.navigation li a,
.navigation li span {
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 44px;
    height: 44px;
    padding: 0 14px;
    border-radius: var(--radius);
    font-size: 0.9rem;
    font-weight: 500;
    color: var(--tt-secondary);
    background: var(--bg-card);
    border: 1px solid var(--bdc);
    transition: all var(--speed) var(--ease);
    text-decoration: none;
}

.navigation li a:hover {
    background: var(--bg-hover);
    border-color: var(--accent);
    color: var(--tt);
}

/* Active page */
.navigation li a.active,
.navigation li.active a,
.navigation li.active span {
    background: var(--accent);
    border-color: var(--accent);
    color: var(--bg);
    font-weight: 700;
    pointer-events: none;
}

/* Edge buttons (first/last, prev/next) */
.navigation li.pagination_edge a {
    font-size: 1.1rem;
    color: var(--tt-fade);
}
.navigation li.pagination_edge a:hover {
    color: var(--accent);
}
/* Hide empty edge link (first page indicator) */
.navigation li.pagination_edge a:empty {
    display: none;
}

/* Template-based pagination (fallback) */
.pagination {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    margin-top: 40px;
    flex-wrap: wrap;
}

.pagination__btn-loader { margin-bottom: 20px; }

.pagination__pages {
    display: flex;
    gap: 4px;
}
.pagination__pages a,
.pagination__pages span {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    border-radius: var(--radius);
    font-size: 0.9rem;
    font-weight: 500;
    color: var(--tt-secondary);
    background: var(--bg-card);
    border: 1px solid var(--bdc);
    transition: all var(--speed);
}
.pagination__pages a:hover {
    background: var(--bg-hover);
    border-color: var(--accent);
    color: var(--tt);
}
.pagination__pages span.active,
.pagination__pages .nav_ext {
    background: var(--accent);
    border-color: var(--accent);
    color: var(--bg);
    font-weight: 700;
}

.pagination__btn {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border-radius: var(--radius);
    color: var(--tt-secondary);
    transition: all var(--speed);
    cursor: pointer;
}
.pagination__btn:hover { background: var(--bg-hover); color: var(--tt); }


/* =========================
   SEARCH
   ========================= */
.search-page__title {
    font-family: var(--font-display);
    font-size: 1.8rem;
    font-weight: 700;
    color: var(--tt);
    margin-bottom: 24px;
}

.search-page__form { margin-bottom: 24px; }

.search-page__field {
    display: flex;
    gap: 12px;
}
.search-page__field input { flex: 1; }

.search-page__options {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
    margin-top: 16px;
    padding: 20px;
    background: var(--bg-card);
    border-radius: var(--radius);
    border: 1px solid var(--bdc);
}

.search-page__row { margin-bottom: 8px; }

.search-page__msg {
    padding: 16px;
    background: var(--bg-card);
    border-radius: var(--radius);
    color: var(--tt-secondary);
}

.search-result {
    padding: 16px;
    margin-bottom: 12px;
    background: var(--bg-card);
    border: 1px solid var(--bdc);
    border-radius: var(--radius);
    transition: border-color var(--speed);
}
.search-result:hover { border-color: var(--accent); }
.search-result__title { font-size: 1.05rem; margin-bottom: 6px; }
.search-result__title a { color: var(--tt); }
.search-result__title a:hover { color: var(--accent); }
.search-result__text { font-size: 0.9rem; color: var(--tt-secondary); margin-bottom: 8px; }
.search-result__meta { font-size: 0.8rem; color: var(--tt-fade); display: flex; gap: 16px; }
.search-result__meta i { margin-right: 4px; }

/* Fast search */
.fast-search__item {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 10px 14px;
    color: var(--tt);
    transition: background var(--speed);
}
.fast-search__item:hover { background: var(--bg-hover); }
.fast-search__title { font-weight: 500; }
.fast-search__date { font-size: 0.8rem; color: var(--tt-fade); }


/* =========================
   LOGIN / REGISTRATION
   ========================= */
.login {
    display: none;
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 1000;
    width: 380px;
    max-width: 90vw;
    background: var(--bg-card);
    border: 1px solid var(--bdc);
    border-radius: var(--radius-xl);
    overflow: hidden;
}

.login__header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 20px 24px;
    border-bottom: 1px solid var(--bdc);
}
.login__title {
    font-family: var(--font-display);
    font-size: 1.1rem;
    font-weight: 600;
    color: var(--tt);
}
.login__close {
    font-size: 1.2rem;
    color: var(--tt-fade);
    cursor: pointer;
    transition: color var(--speed);
}
.login__close:hover { color: var(--danger); }

.login__avatar-big {
    width: 80px;
    height: 80px;
    margin: 20px auto;
    border-radius: 50%;
    overflow: hidden;
    border: 3px solid var(--accent);
}
.login__avatar-big img { width: 100%; height: 100%; object-fit: cover; }

.login__content {
    padding: 20px 24px 24px;
}

.login__row { margin-bottom: 16px; }
.login__row-caption {
    display: flex;
    justify-content: space-between;
    margin-bottom: 6px;
    font-size: 0.85rem;
    color: var(--tt-secondary);
}
.login__row-caption a { color: var(--accent); font-size: 0.8rem; }

.login__admin-link {
    display: block;
    padding: 12px;
    text-align: center;
    background: var(--accent-soft);
    color: var(--accent);
    border-radius: var(--radius);
    font-weight: 600;
    margin-bottom: 16px;
}

.login__menu { list-style: none; }
.login__menu li { border-bottom: 1px solid var(--bdc); }
.login__menu li:last-child { border-bottom: none; }
.login__menu a {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 12px 0;
    color: var(--tt);
    font-size: 0.9rem;
    transition: color var(--speed);
}
.login__menu a:hover { color: var(--accent); }
.login__menu a i { width: 20px; text-align: center; color: var(--tt-fade); }

.btn--full { width: 100%; }

.registration {
    display: none;
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 1000;
    width: 380px;
    max-width: 90vw;
    background: var(--bg-card);
    border: 1px solid var(--bdc);
    border-radius: var(--radius-xl);
    overflow: hidden;
}
.registration .login__content input { margin-bottom: 12px; }


/* =========================
   SYSTEM PAGES
   ========================= */
.not-found {
    text-align: center;
    padding: 80px 20px;
}
.not-found__code {
    font-family: var(--font-display);
    font-size: 8rem;
    font-weight: 800;
    color: var(--accent);
    line-height: 1;
    position: relative;
}
.not-found__glitch {
    font-family: var(--font-display);
    font-size: 8rem;
    font-weight: 800;
    color: transparent;
    -webkit-text-stroke: 2px var(--accent-soft);
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    animation: glitch 3s ease-in-out infinite;
}
@keyframes glitch {
    0%, 100% { clip-path: inset(0 0 0 0); }
    20% { clip-path: inset(20% 0 60% 0); transform: translateX(-48%) skew(2deg); }
    40% { clip-path: inset(60% 0 10% 0); transform: translateX(-52%) skew(-1deg); }
    60% { clip-path: inset(30% 0 30% 0); transform: translateX(-50%) skew(0.5deg); }
}
.not-found__title {
    font-size: 1.5rem;
    margin: 16px 0;
    color: var(--tt);
}
.not-found__text {
    color: var(--tt-secondary);
    margin-bottom: 24px;
}

.message-info {
    text-align: center;
    padding: 60px 20px;
    max-width: 500px;
    margin: 0 auto;
}
.message-info__icon {
    font-size: 3rem;
    color: var(--accent);
    margin-bottom: 16px;
}
.message-info__title {
    font-family: var(--font-display);
    font-size: 1.3rem;
    font-weight: 600;
    color: var(--tt);
    margin-bottom: 12px;
}
.message-info__content { color: var(--tt-secondary); line-height: 1.6; }


/* =========================
   FOOTER
   ========================= */
.footer {
    background: var(--bg-card);
    border-top: 1px solid var(--bdc);
    padding: 60px 0 0;
}

.footer__top {
    display: grid;
    grid-template-columns: 1fr 2fr;
    gap: 60px;
    padding-bottom: 40px;
}

.footer__logo {
    display: inline-block;
    margin-bottom: 16px;
}
.footer__logo:hover { opacity: 0.85; }
.footer__logo-img {
    height: 28px;
    width: auto;
}

.footer__desc {
    font-size: 0.9rem;
    color: var(--tt-secondary);
    line-height: 1.6;
    margin-bottom: 20px;
}

.footer__social {
    display: flex;
    gap: 10px;
}
.footer__social a {
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: var(--radius);
    background: var(--bg-elevated);
    color: var(--tt-secondary);
    font-size: 1rem;
    transition: all var(--speed);
}
.footer__social a:hover {
    background: var(--accent);
    color: var(--bg);
}

.footer__links {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
}

.footer__col-title {
    font-family: var(--font-display);
    font-size: 0.9rem;
    font-weight: 600;
    color: var(--tt);
    margin-bottom: 16px;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.footer__col a {
    display: block;
    padding: 4px 0;
    font-size: 0.9rem;
    color: var(--tt-secondary);
    transition: color var(--speed);
}
.footer__col a:hover { color: var(--accent); }

.footer__contact {
    display: flex;
    gap: 10px;
    margin-bottom: 12px;
    font-size: 0.9rem;
    color: var(--tt-secondary);
}
.footer__contact i {
    color: var(--accent);
    margin-top: 3px;
    width: 16px;
    text-align: center;
}
.footer__contact a { color: var(--tt-secondary); }
.footer__contact a:hover { color: var(--accent); }

.footer__payments {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 20px;
    padding: 20px 0;
    border-top: 1px solid var(--bdc);
}
.footer__payments a { display: flex; opacity: 0.5; transition: opacity var(--speed); }
.footer__payments a:hover { opacity: 1; }
.footer__payments img { height: 28px; width: auto; }

.footer__bottom {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 20px 0;
    border-top: 1px solid var(--bdc);
    font-size: 0.85rem;
    color: var(--tt-fade);
}
.footer__bottom a { color: var(--accent); }


/* =========================
   RESPONSIVE
   ========================= */
@media (max-width: 1200px) {
    .tariffs-grid { grid-template-columns: repeat(2, 1fr); }
    .hero-video__title { font-size: 2.5rem; }
    .hero-video__stats { flex-direction: row; gap: 16px; }
    .hero-stat { min-width: auto; padding: 16px 20px; }
    .hero-stat__number { font-size: 2rem; }
}

@media (max-width: 992px) {
    .topbar__left { display: none; }
    .topbar__item--phone { display: flex; }
    .topbar__right { gap: 8px; }
    .topbar__item--cabinet { font-size: 0.7rem; }
    .topbar__btn { font-size: 0.7rem; padding: 5px 12px; }
    .header { top: 36px; }
    .header__burger { display: flex; }
    .header__search { display: none; }
    .header__phone-text { display: none; }
    .header__phone-btn { width: 36px; height: 36px; padding: 0; justify-content: center; border-radius: 50%; }
    .header__phone-btn i { margin: 0; }

    .hero-video__inner { flex-direction: column; text-align: center; }
    .hero-video__text { max-width: 100%; }
    .hero-video__subtitle { margin-left: auto; margin-right: auto; }
    .hero-video__badges { justify-content: center; }
    .hero-video__actions { justify-content: center; }
    .hero-video__stats { flex-direction: row; justify-content: center; }

    .news-grid { grid-template-columns: repeat(2, 1fr); }
    .prod-grid { grid-template-columns: repeat(2, 1fr); }
    .security-grid { grid-template-columns: repeat(2, 1fr); }

    .product-page__top { grid-template-columns: 1fr; }
    .quick-view { grid-template-columns: 1fr; }

    .article__nav { grid-template-columns: 1fr; }

    .footer__top { grid-template-columns: 1fr; gap: 30px; }
}

@media (max-width: 768px) {
    .hero-video {
        min-height: 500px;
    }
    .hero-video__title { font-size: 2rem; }
    .hero-video__subtitle { font-size: 1rem; }
    .hero-video__badges { gap: 8px; }
    .hero-badge { padding: 8px 14px; font-size: 0.8rem; }
    .hero-video__stats { flex-wrap: wrap; }
    .hero-video__scroll-hint { display: none; }

    .section { padding: 60px 0; }
    .section-head__title { font-size: 1.5rem; }

    .tariffs-grid { grid-template-columns: 1fr; max-width: 400px; margin-left: auto; margin-right: auto; }
    .tv-grid { grid-template-columns: 1fr; max-width: 400px; margin-left: auto; margin-right: auto; }
    .security-grid { grid-template-columns: 1fr; }

    .news-grid { grid-template-columns: 1fr; }
    .prod-grid { grid-template-columns: repeat(2, 1fr); }

    .footer__links { grid-template-columns: 1fr 1fr; }

    .cart-page__fields { grid-template-columns: 1fr; }
    .search-page__options { grid-template-columns: 1fr; }
}

@media (max-width: 576px) {
    .hero-video__title { font-size: 1.6rem; }
    .hero-video__actions { flex-direction: column; }
    .hero-video__actions .btn { width: 100%; }
    .hero-video__stats { gap: 10px; }
    .hero-stat { padding: 12px 16px; }
    .hero-stat__number { font-size: 1.5rem; }

    .section { padding: 40px 0; }

    .prod-grid { grid-template-columns: 1fr; }

    .article__title { font-size: 1.5rem; }

    .page-hero__title { font-size: 1.5rem; }

    .footer__links { grid-template-columns: 1fr; }
    .footer__bottom { flex-direction: column; gap: 8px; text-align: center; }

    .tariff-toggle { flex-direction: column; border-radius: var(--radius); }
}


/* =========================
   VIDEO SURVEILLANCE PAGE
   ========================= */

/* VS Hero */
.vs-hero {
    position: relative;
    height: 70vh;
    min-height: 450px;
    max-height: 700px;
    overflow: hidden;
    display: flex;
    align-items: center;
}
.vs-hero__media {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    z-index: 0;
}
.vs-hero__overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(135deg, rgba(10,14,26,0.92) 0%, rgba(10,14,26,0.6) 100%);
    z-index: 1;
}
.vs-hero__content {
    position: relative;
    z-index: 2;
    width: 100%;
    padding-top: 70px;
}
.vs-hero__content .page-hero__crumbs {
    margin-bottom: 20px;
}
.vs-hero__title {
    font-family: var(--font-display);
    font-size: 2.8rem;
    font-weight: 800;
    color: var(--tt);
    line-height: 1.15;
    margin-bottom: 16px;
}
.vs-hero__subtitle {
    font-size: 1.1rem;
    color: var(--tt-secondary);
    max-width: 520px;
    line-height: 1.7;
    margin-bottom: 28px;
}
.vs-hero__actions {
    display: flex;
    gap: 16px;
    flex-wrap: wrap;
}

/* VS Features grid */
.vs-features {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
}
.vs-feature {
    background: var(--bg-card);
    border: 1px solid var(--bdc);
    border-radius: var(--radius-lg);
    padding: 28px;
    transition: all var(--speed-slow) var(--ease);
}
.vs-feature:hover {
    transform: translateY(-4px);
    border-color: var(--accent);
}
.vs-feature__icon {
    width: 50px;
    height: 50px;
    border-radius: var(--radius);
    background: var(--accent-soft);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.2rem;
    color: var(--accent);
    margin-bottom: 16px;
}
.vs-feature__title {
    font-family: var(--font-display);
    font-size: 1.05rem;
    font-weight: 600;
    color: var(--tt);
    margin-bottom: 8px;
}
.vs-feature__text {
    font-size: 0.9rem;
    color: var(--tt-secondary);
    line-height: 1.6;
}

/* VS Cameras grid */
.vs-cameras {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
}
.vs-camera {
    background: var(--bg-card);
    border: 1px solid var(--bdc);
    border-radius: var(--radius-lg);
    overflow: hidden;
    transition: all var(--speed-slow) var(--ease);
}
.vs-camera:hover {
    transform: translateY(-4px);
    border-color: var(--accent);
    box-shadow: 0 8px 30px rgba(0,0,0,0.2);
}
.vs-camera__img {
    position: relative;
    padding-top: 65%;
    overflow: hidden;
}
.vs-camera__img img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.5s var(--ease);
}
.vs-camera:hover .vs-camera__img img {
    transform: scale(1.05);
}
.vs-camera__body {
    padding: 20px;
}
.vs-camera__title {
    font-family: var(--font-display);
    font-size: 1rem;
    font-weight: 600;
    color: var(--tt);
    margin-bottom: 8px;
}
.vs-camera__text {
    font-size: 0.9rem;
    color: var(--tt-secondary);
    line-height: 1.6;
}

/* VS Steps */
.vs-steps {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
}
.vs-step {
    display: flex;
    gap: 16px;
    padding: 24px;
    background: var(--bg-card);
    border: 1px solid var(--bdc);
    border-radius: var(--radius-lg);
    transition: all var(--speed);
}
.vs-step:hover {
    border-color: var(--accent);
}
.vs-step__num {
    font-family: var(--font-display);
    font-size: 2rem;
    font-weight: 800;
    color: var(--accent);
    line-height: 1;
    flex-shrink: 0;
    opacity: 0.6;
}
.vs-step__title {
    font-family: var(--font-display);
    font-size: 0.95rem;
    font-weight: 600;
    color: var(--tt);
    margin-bottom: 6px;
}
.vs-step__text {
    font-size: 0.85rem;
    color: var(--tt-secondary);
    line-height: 1.5;
}

/* VS Advantages */
.vs-advantages {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 24px;
}
.vs-advantage {
    text-align: center;
    padding: 32px 20px;
    background: var(--bg-elevated);
    border: 1px solid var(--bdc);
    border-radius: var(--radius-lg);
    transition: all var(--speed-slow) var(--ease);
}
.vs-advantage:hover {
    transform: translateY(-4px);
    border-color: var(--accent);
}
.vs-advantage__icon {
    width: 60px;
    height: 60px;
    margin: 0 auto 16px;
    border-radius: 50%;
    background: var(--accent-soft);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.4rem;
    color: var(--accent);
}
.vs-advantage__title {
    font-family: var(--font-display);
    font-size: 1rem;
    font-weight: 600;
    color: var(--tt);
    margin-bottom: 8px;
}
.vs-advantage__text {
    font-size: 0.85rem;
    color: var(--tt-secondary);
    line-height: 1.5;
}

/* VS Coverage */
.vs-coverage__list {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 10px;
}
.vs-coverage__city {
    padding: 8px 18px;
    background: var(--bg-card);
    border: 1px solid var(--bdc);
    border-radius: 50px;
    font-size: 0.9rem;
    color: var(--tt-secondary);
    transition: all var(--speed);
}
.vs-coverage__city:hover {
    border-color: var(--accent);
    color: var(--accent);
}
.vs-coverage__city--main {
    background: var(--accent-soft);
    border-color: rgba(0, 191, 166, 0.2);
    color: var(--accent);
    font-weight: 600;
}

/* VS CTA */
.vs-cta {
    text-align: center;
    padding: 40px;
    background: linear-gradient(135deg, var(--bg-elevated) 0%, rgba(0,191,166,0.05) 100%);
    border: 1px solid rgba(0, 191, 166, 0.2);
    border-radius: var(--radius-xl);
}
.vs-cta__title {
    font-family: var(--font-display);
    font-size: 1.8rem;
    font-weight: 700;
    color: var(--tt);
    margin-bottom: 12px;
}
.vs-cta__text {
    font-size: 1rem;
    color: var(--tt-secondary);
    max-width: 500px;
    margin: 0 auto 24px;
}
.vs-cta__contacts {
    display: flex;
    justify-content: center;
    gap: 24px;
    flex-wrap: wrap;
    margin-bottom: 24px;
}
.vs-cta__phone,
.vs-cta__email {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 1.05rem;
    font-weight: 600;
    color: var(--tt);
}
.vs-cta__phone i,
.vs-cta__email i {
    color: var(--accent);
}
.vs-cta__phone:hover,
.vs-cta__email:hover {
    color: var(--accent);
}

/* VS Responsive */
@media (max-width: 992px) {
    .vs-hero__title { font-size: 2.2rem; }
    .vs-features { grid-template-columns: repeat(2, 1fr); }
    .vs-cameras { grid-template-columns: repeat(2, 1fr); }
    .vs-steps { grid-template-columns: repeat(2, 1fr); }
    .vs-advantages { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 768px) {
    .vs-hero { height: 60vh; min-height: 400px; }
    .vs-hero__title { font-size: 1.8rem; }
    .vs-features { grid-template-columns: 1fr; }
    .vs-cameras { grid-template-columns: 1fr; }
    .vs-steps { grid-template-columns: 1fr; }
    .vs-advantages { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 576px) {
    .vs-hero__title { font-size: 1.5rem; }
    .vs-hero__actions { flex-direction: column; }
    .vs-hero__actions .btn { width: 100%; }
    .vs-advantages { grid-template-columns: 1fr; }
    .vs-cta { padding: 24px; }
    .vs-cta__title { font-size: 1.3rem; }
    .vs-cta__contacts { flex-direction: column; align-items: center; gap: 12px; }
}


/* =========================
   TARIFFS PAGE (tariffs.tpl)
   ========================= */
.tariffs-page, .tv-page, .conn-page, .map-page {
    padding-bottom: 40px;
    padding-top: 0;
    margin-top: 0;
}

/* Feedback page */
.feedback-page {
    max-width: 600px;
    margin: 0 auto;
}
.feedback-page__header {
    text-align: center;
    margin-bottom: 32px;
}
.feedback-page__title {
    font-family: var(--font-display);
    font-size: 1.8rem;
    font-weight: 700;
    color: var(--tt);
    margin-bottom: 8px;
}
.feedback-page__subtitle {
    font-size: 1rem;
    color: var(--tt-secondary);
}
.feedback-page__form {
    background: var(--bg-card);
    border: 1px solid var(--bdc);
    border-radius: var(--radius-xl);
    padding: 32px;
}

/* Plugin form styles */
.cf_field {
    display: block;
    margin-bottom: 16px;
}
.cf_field label {
    display: block;
    margin-bottom: 6px;
    font-size: 0.9rem;
    font-weight: 500;
    color: var(--tt-secondary);
}
.cf_field input[type="text"],
.cf_field input[type="email"],
.cf_field input[type="tel"],
.cf_field input[type="number"],
.cf_field textarea,
.cf_field select {
    width: 100%;
}
input[type="submit"][data-s="Forms"] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    padding: 14px 32px;
    margin-top: 8px;
    font-family: var(--font-body);
    font-size: 0.95rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    color: var(--tt-btn);
    background: var(--bg-btn);
    border: none;
    border-radius: var(--radius);
    cursor: pointer;
    transition: all var(--speed) var(--ease);
}
input[type="submit"][data-s="Forms"]:hover {
    background: var(--bg-btn-hover);
    transform: translateY(-1px);
    box-shadow: var(--accent-glow);
}
/* Убедиться что перед hero нет отступов */
.main, #celena_content {
    padding-top: 0;
    margin-top: 0;
}

/* Mini-cart widget override */
#cart {
    background: var(--bg-card) !important;
    border: 1px solid var(--bdc);
    border-right: none;
    border-radius: var(--radius-lg) 0 0 var(--radius-lg) !important;
    padding: 12px 16px !important;
    top: 50% !important;
    transform: translateY(-50%);
    display: flex !important;
    flex-direction: column;
    align-items: center;
    gap: 4px;
    font-size: 0.8rem !important;
    color: var(--tt) !important;
    text-decoration: none;
    box-shadow: -4px 0 20px rgba(0, 0, 0, 0.3);
    transition: all var(--speed);
}
#cart::before {
    content: '\f290';
    font-family: 'Font Awesome 5 Pro';
    font-weight: 900;
    font-size: 1.2rem;
    color: var(--accent);
    display: block;
    margin-bottom: 2px;
}
#cart:hover {
    background: var(--bg-elevated) !important;
    border-color: var(--accent);
}
.count_in_cart {
    background: var(--accent) !important;
    color: var(--bg) !important;
    font-size: 0.7rem !important;
    font-weight: 700;
    width: 20px !important;
    height: 20px !important;
    top: -8px !important;
    right: -8px !important;
    left: auto !important;
}
.cart_separate {
    display: none;
}
.cat_total_price {
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--tt-secondary);
    white-space: nowrap;
}
/* page-hero скрывается JS-ом если на странице есть .tp-hero */

.tp-hero {
    position: relative;
    padding: 200px 0 80px;
    overflow: hidden;
    margin-bottom: 48px;
    /* Вырваться из любого контейнера на полную ширину */
    width: 100vw;
    margin-left: calc(-50vw + 50%);
}


.tp-hero__video {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    z-index: 0;
}

.tp-hero__overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(
        135deg,
        rgba(10, 14, 26, 0.92) 0%,
        rgba(10, 14, 26, 0.75) 50%,
        rgba(10, 14, 26, 0.6) 100%
    );
    z-index: 1;
}

.tp-hero__content {
    position: relative;
    z-index: 2;
    text-align: center;
}

.tp-hero__title {
    font-family: var(--font-display);
    font-size: 2.5rem;
    font-weight: 800;
    color: var(--tt);
    margin-bottom: 12px;
}

.tp-hero__subtitle {
    font-size: 1.1rem;
    color: var(--tt-secondary);
    max-width: 550px;
    margin: 0 auto;
    line-height: 1.7;
}

.tp-hero .section-head__label {
    justify-content: center;
    margin-bottom: 14px;
}

.tp-section {
    margin-bottom: 48px;
}

.tp-section__head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 12px;
    margin-bottom: 24px;
    padding-bottom: 16px;
    border-bottom: 1px solid var(--bdc);
}

.tp-section__title {
    font-family: var(--font-display);
    font-size: 1.3rem;
    font-weight: 700;
    color: var(--tt);
    display: flex;
    align-items: center;
    gap: 10px;
}
.tp-section__title i { color: var(--accent); }

.tp-section__badge {
    font-size: 0.9rem;
    color: var(--tt-secondary);
    padding: 8px 18px;
    background: var(--bg-card);
    border: 1px solid var(--bdc);
    border-radius: 50px;
}

.tp-promo {
    color: var(--accent);
    font-weight: 600;
}

/* Tariff Table */
.tp-table-wrap {
    overflow-x: auto;
    border-radius: var(--radius-lg);
    border: 1px solid var(--bdc);
}

.tp-table {
    width: 100%;
    border-collapse: collapse;
    background: var(--bg-card);
}

.tp-table thead th {
    padding: 14px 20px;
    font-size: 0.8rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: var(--tt-fade);
    background: var(--bg-elevated);
    border-bottom: 1px solid var(--bdc);
    text-align: left;
    white-space: nowrap;
}

.tp-table tbody td {
    padding: 16px 20px;
    font-size: 0.95rem;
    color: var(--tt);
    border-bottom: 1px solid var(--bdc);
    white-space: nowrap;
}

.tp-table tbody tr:last-child td {
    border-bottom: none;
}

.tp-table tbody tr {
    transition: background var(--speed);
}
.tp-table tbody tr:hover {
    background: var(--bg-elevated);
}

.tp-table__row--popular {
    background: rgba(0, 191, 166, 0.04);
}
.tp-table__row--popular td {
    border-bottom-color: rgba(0, 191, 166, 0.15);
}

.tp-table__price {
    font-family: var(--font-display);
    font-weight: 700;
    color: var(--accent);
    font-size: 1.05rem;
}

.tp-popular-badge {
    display: inline-block;
    padding: 2px 10px;
    background: var(--accent);
    color: var(--bg);
    font-size: 0.65rem;
    font-weight: 700;
    text-transform: uppercase;
    border-radius: 50px;
    margin-left: 8px;
    vertical-align: middle;
}

.tp-extra {
    margin: 32px 0;
}
.tp-extra:empty { display: none; }

.tp-cta {
    margin-top: 48px;
}


/* =========================
   TV PAGE (tv-tariff.tpl)
   ========================= */
.tv-page-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
}

.tv-page-card {
    position: relative;
    background: var(--bg-card);
    border: 1px solid var(--bdc);
    border-radius: var(--radius-lg);
    padding: 32px 24px;
    text-align: center;
    display: flex;
    flex-direction: column;
    transition: all var(--speed-slow) var(--ease);
}
.tv-page-card:hover {
    transform: translateY(-4px);
    border-color: var(--accent);
}
.tv-page-card--popular {
    border-color: var(--accent);
    background: linear-gradient(135deg, var(--bg-card) 0%, rgba(0,191,166,0.05) 100%);
}
.tv-page-card__badge {
    position: absolute;
    top: -10px;
    left: 50%;
    transform: translateX(-50%);
    padding: 4px 16px;
    background: var(--accent);
    color: var(--bg);
    font-size: 0.7rem;
    font-weight: 700;
    text-transform: uppercase;
    border-radius: 50px;
    white-space: nowrap;
}
.tv-page-card__header { margin-bottom: 16px; }
.tv-page-card__icon { font-size: 2rem; color: var(--accent); margin-bottom: 12px; }
.tv-page-card__name { font-family: var(--font-display); font-size: 1.3rem; font-weight: 700; color: var(--tt); }
.tv-page-card__pricing { margin-bottom: 16px; }
.tv-page-card__price { font-family: var(--font-display); font-size: 2.5rem; font-weight: 800; color: var(--accent); }
.tv-page-card__currency { font-size: 0.9rem; color: var(--tt-fade); margin-left: 4px; }
.tv-page-card__desc { font-size: 0.9rem; color: var(--tt-secondary); line-height: 1.6; margin-bottom: 24px; flex: 1; }
.tv-page-card__btn { width: 100%; }

/* TV Addons */
.tv-addons {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 16px;
}
.tv-addon {
    background: var(--bg-card);
    border: 1px solid var(--bdc);
    border-radius: var(--radius-lg);
    padding: 24px;
    text-align: center;
    transition: all var(--speed);
}
.tv-addon:hover { border-color: var(--accent); transform: translateY(-2px); }
.tv-addon__icon { font-size: 1.5rem; color: var(--accent); margin-bottom: 10px; }
.tv-addon__name { font-weight: 600; color: var(--tt); margin-bottom: 6px; }
.tv-addon__price { font-family: var(--font-display); font-weight: 700; color: var(--accent); }

/* TV Special */
.tv-special__card {
    display: flex;
    align-items: center;
    gap: 24px;
    padding: 24px;
    background: var(--bg-card);
    border: 1px solid var(--bdc);
    border-radius: var(--radius-lg);
}
.tv-special__icon { font-size: 2rem; color: var(--accent); flex-shrink: 0; }
.tv-special__info { flex: 1; }
.tv-special__name { font-family: var(--font-display); font-size: 1.1rem; font-weight: 700; color: var(--tt); margin-bottom: 4px; }
.tv-special__desc { font-size: 0.9rem; color: var(--tt-secondary); }
.tv-special__price { font-family: var(--font-display); font-size: 1.2rem; font-weight: 700; color: var(--accent); white-space: nowrap; flex-shrink: 0; }


/* =========================
   CONNECTION PAGE
   ========================= */

/* Tabs */
.conn-tabs {
    display: flex;
    gap: 4px;
    padding: 4px;
    background: var(--bg-elevated);
    border-radius: var(--radius-lg);
    border: 1px solid var(--bdc);
    width: fit-content;
    margin: 0 auto 32px;
}
.conn-tabs__btn {
    padding: 12px 28px;
    font-size: 0.95rem;
    font-weight: 600;
    color: var(--tt-secondary);
    background: none;
    border: none;
    border-radius: var(--radius);
    cursor: pointer;
    transition: all var(--speed);
    display: flex;
    align-items: center;
    gap: 8px;
}
.conn-tabs__btn:hover { color: var(--tt); }
.conn-tabs__btn.is-active {
    background: var(--accent);
    color: var(--bg);
}
.conn-tabs__btn i { font-size: 0.9rem; }

/* Tab content */
.conn-tab-content { display: none; }
.conn-tab-content.is-active { display: block; }

/* Layout */
.conn-layout {
    display: grid;
    grid-template-columns: 1.4fr 0.6fr;
    gap: 32px;
    align-items: start;
}

/* Notice */
.conn-notice {
    display: flex;
    gap: 14px;
    padding: 18px 20px;
    background: rgba(0, 191, 166, 0.06);
    border: 1px solid rgba(0, 191, 166, 0.15);
    border-radius: var(--radius-lg);
    margin-bottom: 24px;
    font-size: 0.9rem;
    color: var(--tt-secondary);
    line-height: 1.6;
}
.conn-notice i { color: var(--accent); font-size: 1.1rem; margin-top: 2px; flex-shrink: 0; }

/* Price banners */
.conn-price-banner {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 18px 24px;
    background: var(--bg-card);
    border: 1px solid var(--bdc);
    border-radius: var(--radius-lg);
    margin-bottom: 24px;
}
.conn-price-banner--primary {
    background: linear-gradient(135deg, var(--bg-card) 0%, rgba(0,191,166,0.06) 100%);
    border-color: rgba(0,191,166,0.2);
}
.conn-price-banner__icon {
    width: 48px;
    height: 48px;
    border-radius: var(--radius);
    background: var(--accent-soft);
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--accent);
    font-size: 1.2rem;
    flex-shrink: 0;
}
.conn-price-banner__text strong {
    display: block;
    color: var(--tt);
    font-size: 0.95rem;
    margin-bottom: 2px;
}
.conn-price-banner__text span { font-size: 0.9rem; color: var(--tt-secondary); }
.conn-price-banner__text em { color: var(--accent); font-style: normal; font-weight: 700; font-size: 1.1rem; }

/* Details columns */
.conn-details {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 24px;
}
.conn-details__title {
    font-family: var(--font-display);
    font-size: 1rem;
    font-weight: 600;
    color: var(--tt);
    margin-bottom: 14px;
    display: flex;
    align-items: center;
    gap: 8px;
}
.conn-details__title i { color: var(--accent); }
.conn-details__title--muted { color: var(--tt-fade); }
.conn-details__title--muted i { color: var(--tt-fade); }

.conn-details__list { list-style: none; }
.conn-details__list li {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    padding: 6px 0;
    font-size: 0.88rem;
    color: var(--tt);
    line-height: 1.45;
}
.conn-details__list li i { color: var(--accent); width: 14px; text-align: center; font-size: 0.75rem; margin-top: 4px; flex-shrink: 0; }
.conn-details__list--muted li { color: var(--tt-fade); }
.conn-details__list--muted li i { color: var(--tt-fade); }

/* Pause info */
.conn-pause-info {
    margin-top: 20px;
    padding: 16px;
    background: var(--bg-elevated);
    border-radius: var(--radius);
    border: 1px solid var(--bdc);
}
.conn-pause-info h4 {
    font-size: 0.85rem;
    font-weight: 600;
    color: var(--tt-secondary);
    margin-bottom: 6px;
    display: flex;
    align-items: center;
    gap: 6px;
}
.conn-pause-info h4 i { color: var(--accent); }
.conn-pause-info p { font-size: 0.82rem; color: var(--tt-fade); line-height: 1.5; }

/* Form */
.conn-form-wrap {
    background: var(--bg-card);
    border: 1px solid var(--bdc);
    border-radius: var(--radius-xl);
    padding: 28px;
    position: sticky;
    top: 120px;
}
.conn-form__title {
    font-family: var(--font-display);
    font-size: 1.1rem;
    font-weight: 700;
    color: var(--tt);
    margin-bottom: 20px;
    display: flex;
    align-items: center;
    gap: 8px;
}
.conn-form__title i { color: var(--accent); }
.conn-form__row { margin-bottom: 14px; }
.conn-form__submit { width: 100%; margin-top: 8px; }

/* Contact blocks */
.conn-contacts-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
}
.conn-contact-block {
    background: var(--bg-card);
    border: 1px solid var(--bdc);
    border-radius: var(--radius-lg);
    padding: 24px;
}
.conn-contact-block--promo {
    background: linear-gradient(135deg, var(--bg-card) 0%, rgba(0,191,166,0.06) 100%);
    border-color: rgba(0,191,166,0.2);
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.conn-contact-block--promo p { color: var(--tt-secondary); font-size: 0.95rem; margin-bottom: 16px; line-height: 1.6; }

.conn-contact-block__title {
    font-family: var(--font-display);
    font-size: 1rem;
    font-weight: 600;
    color: var(--tt);
    margin-bottom: 14px;
    display: flex;
    align-items: center;
    gap: 8px;
}
.conn-contact-block__title i { color: var(--accent); }

.conn-contact-block__list {
    display: flex;
    flex-direction: column;
    gap: 6px;
}
.conn-contact-block__list a,
.conn-contact-block__list span {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 0.9rem;
    color: var(--tt-secondary);
    transition: color var(--speed);
}
.conn-contact-block__list a:hover { color: var(--accent); }
.conn-contact-block__list i { color: var(--accent); width: 16px; text-align: center; }
.conn-contact-block__carrier { font-size: 0.75rem; color: var(--tt-fade); min-width: 55px; }


/* =========================
   MAP PAGE
   ========================= */
.map-page__map {
    margin-bottom: 40px;
}
.map-page__map iframe {
    display: block;
    width: 100%;
    border-radius: var(--radius-xl);
}

.map-coverage {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 32px;
}
.map-coverage__subtitle {
    font-family: var(--font-display);
    font-size: 1rem;
    font-weight: 600;
    color: var(--tt);
    margin-bottom: 16px;
    display: flex;
    align-items: center;
    gap: 8px;
}
.map-coverage__subtitle i { color: var(--accent); }
.map-coverage__list {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}
.map-coverage__item {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 8px 16px;
    background: var(--bg-card);
    border: 1px solid var(--bdc);
    border-radius: 50px;
    font-size: 0.9rem;
    color: var(--tt-secondary);
}
.map-coverage__item i { color: var(--accent); font-size: 0.75rem; }
.map-coverage__item--main {
    background: var(--accent-soft);
    border-color: rgba(0,191,166,0.2);
    color: var(--accent);
    font-weight: 600;
}

.map-contacts {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
}
.map-contact-card {
    background: var(--bg-card);
    border: 1px solid var(--bdc);
    border-radius: var(--radius-lg);
    padding: 24px;
    text-align: center;
}
.map-contact-card__icon { font-size: 1.5rem; color: var(--accent); margin-bottom: 12px; }
.map-contact-card__title { font-family: var(--font-display); font-size: 0.95rem; font-weight: 600; color: var(--tt); margin-bottom: 10px; }
.map-contact-card p { font-size: 0.9rem; color: var(--tt-secondary); line-height: 1.6; }
.map-contact-card a { color: var(--tt-secondary); }
.map-contact-card a:hover { color: var(--accent); }


/* Pages responsive */
@media (max-width: 992px) {
    .tp-hero { padding: 140px 0 60px; }
    .tp-hero__title { font-size: 2rem; }
    .conn-layout { grid-template-columns: 1fr; }
    .conn-form-wrap { position: static; }
    .conn-contacts-grid { grid-template-columns: 1fr; }
    .map-contacts { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 768px) {
    .conn-details { grid-template-columns: 1fr; }
    .conn-tabs { width: 100%; }
    .conn-tabs__btn { flex: 1; justify-content: center; }
    .tv-page-grid { grid-template-columns: 1fr; max-width: 400px; margin: 0 auto; }
    .tv-addons { grid-template-columns: repeat(2, 1fr); }
    .tv-special__card { flex-direction: column; text-align: center; }
    .map-coverage { grid-template-columns: 1fr; }
    .tp-section__head { flex-direction: column; align-items: flex-start; }
}

@media (max-width: 576px) {
    .tp-hero { padding: 110px 0 50px; margin-bottom: 32px; }
    .tp-hero__title { font-size: 1.5rem; }
    .tp-hero__subtitle { font-size: 0.95rem; }
    .tv-addons { grid-template-columns: 1fr; }
    .map-contacts { grid-template-columns: 1fr; }
}


/* =========================
   LIGHT THEME: elements on dark video overlays must stay white
   ========================= */
/* Text on video overlays — white for contrast */
.hero-video__title,
.hero-video__content h1,
.hero-video__content h2,
.hero-stat__label,
.hero-video__scroll-hint,
.vs-hero__title,
.tp-hero__title,
.featured-card__title { color: #fff; }

.hero-video__subtitle,
.vs-hero__subtitle,
.tp-hero__subtitle { color: rgba(255,255,255,0.75); }

.hero-stat__number { color: var(--accent); }

.hero-video__content .section-head__label,
.tp-hero__content .section-head__label,
.vs-hero__content .section-head__label { color: var(--accent); }

/* Hero badges — glassmorphism on dark video */
.hero-badge {
    background: rgba(255, 255, 255, 0.15);
    border-color: rgba(255, 255, 255, 0.2);
    color: #fff;
    backdrop-filter: blur(10px);
}
.hero-badge:hover {
    background: rgba(255, 255, 255, 0.25);
    border-color: rgba(255, 255, 255, 0.4);
}
.hero-badge i { color: var(--accent); }

/* Hero stat cards — glass style */
.hero-stat {
    background: rgba(255, 255, 255, 0.1);
    border-color: rgba(255, 255, 255, 0.15);
    backdrop-filter: blur(12px);
}
.hero-stat__label { color: rgba(255, 255, 255, 0.8); }

/* Hero CTA buttons — contrast on dark video */
.hero-video__actions .btn {
    background: var(--accent);
    color: #fff;
    border-color: var(--accent);
}
.hero-video__actions .btn:hover {
    background: var(--accent-hover);
    color: #fff;
    border-color: var(--accent-hover);
}
.hero-video__actions .btn--outline {
    background: rgba(255, 255, 255, 0.12);
    color: #fff;
    border-color: rgba(255, 255, 255, 0.4);
}
.hero-video__actions .btn--outline:hover {
    background: rgba(255, 255, 255, 0.25);
    color: #fff;
    border-color: #fff;
}

/* VS hero CTA */
.vs-hero__actions .btn {
    background: var(--accent);
    color: #fff;
}
.vs-hero__actions .btn--outline {
    background: rgba(255, 255, 255, 0.12);
    color: #fff;
    border-color: rgba(255, 255, 255, 0.4);
}
.vs-hero__actions .btn--outline:hover {
    background: rgba(255, 255, 255, 0.25);
    color: #fff;
}

/* Video play/pause toggle */
.hero-video__toggle {
    background: rgba(255, 255, 255, 0.15);
    border-color: rgba(255, 255, 255, 0.2);
    color: #fff;
}
.hero-video__toggle:hover {
    background: var(--accent);
    color: #fff;
}

/* Badges on colored backgrounds */
.prod-card__badge,
.prod-slide__badge,
.tariff-card__badge,
.tv-page-card__badge,
.tv-card__badge,
.tp-popular-badge { color: #fff; }

/* Footer stays dark */
.footer {
    background: #1a2332;
    color: #c8d4e0;
}
.footer h3, .footer h4,
.footer .footer__col-title { color: #fff; }
.footer .footer__desc { color: #94a3b8; }
.footer .footer__contact { color: #94a3b8; }
.footer .footer__contact a { color: #94a3b8; }
.footer .footer__contact a:hover { color: var(--accent); }
.footer .footer__col a { color: #94a3b8; }
.footer .footer__col a:hover { color: var(--accent); }
.footer .footer__bottom { color: #64748b; border-top-color: #2a3545; }
.footer .footer__payments { border-top-color: #2a3545; }
.footer .footer__social a { background: #2a3545; color: #94a3b8; }
.footer .footer__social a:hover { background: var(--accent); color: #fff; }

/* Mini-cart on light theme */
#cart { box-shadow: -4px 0 20px rgba(0,0,0,0.08) !important; }
.count_in_cart { color: #fff !important; }


/* ==== extra.css ==== */
/* ============================================================
   EuroNet — extra.css
   Стили для элементов, которых нет в оригинальном styles.css:
   комментарии (движок Celena), пагинация, share, empty-state,
   узкий контейнер статьи. Палитра — из common.css (:root).
   ============================================================ */

/* Узкий контейнер для статьи/страницы */
.container--narrow { max-width: 860px; }

/* Left-выравненный section-head (для блока комментариев) */
.section-head--left { text-align: left; align-items: flex-start; margin-bottom: 24px; }
.section-head--left .section-head__title { margin: 0; }

/* ===== Article share / tags ===== */
.article__share {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    color: var(--tt-secondary);
    font-size: .9rem;
}
.article__share a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 38px; height: 38px;
    border-radius: 50%;
    background: var(--bg-elevated);
    color: var(--tt-secondary);
    transition: all var(--speed) var(--ease);
}
.article__share a:hover { background: var(--accent); color: #fff; transform: translateY(-2px); }
.article__tags .tag {
    display: inline-block;
    padding: 6px 14px;
    background: var(--accent-soft);
    color: var(--accent);
    border-radius: 100px;
    font-size: .85rem;
    font-weight: 600;
}

/* ===== Comments (движок Celena) ===== */
.comments-block { margin-top: 48px; padding-top: 32px; border-top: 1px solid var(--bdc); }
.cm-list { display: flex; flex-direction: column; gap: 18px; margin-bottom: 32px; }
.cm-item { display: flex; gap: 14px; }
.cm-avatar {
    flex: 0 0 44px;
    width: 44px; height: 44px;
    border-radius: 50%;
    background: var(--accent-soft);
    color: var(--accent);
    display: grid; place-items: center;
    font-size: 1rem;
}
.cm-body {
    flex: 1;
    background: var(--bg-card);
    border: 1px solid var(--bdc);
    border-radius: var(--radius-lg);
    padding: 14px 18px;
    box-shadow: var(--bsh);
}
.cm-head { display: flex; align-items: baseline; gap: 10px; margin-bottom: 4px; }
.cm-head b { font-family: var(--font-display); color: var(--tt); }
.cm-head .text-muted { font-size: .8rem; }
.cm-text { color: var(--tt-secondary); line-height: 1.6; }

.cm-form { margin-top: 8px; }
.cm-form__row { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; margin-bottom: 14px; }
.cm-form textarea { margin-bottom: 14px; }
@media (max-width: 640px) { .cm-form__row { grid-template-columns: 1fr; } }

.cm-alert {
    padding: 12px 18px;
    border-radius: var(--radius);
    margin-bottom: 18px;
    font-size: .92rem;
    border: 1px solid transparent;
}
.cm-alert--success { background: #e8f8f0; color: #0f7a52; border-color: #b7e6cf; }
.cm-alert--info    { background: #e8f2fe; color: #1c5fb0; border-color: #bcd8f7; }
.cm-alert--error   { background: #fdecec; color: #b42323; border-color: #f6c6c6; }

/* ===== Pagination ===== */
.pagination {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 14px;
    margin-top: 40px;
}
.pagination__btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 46px; height: 46px;
    border-radius: var(--radius);
    background: var(--bg-card);
    border: 1px solid var(--bdc);
    color: var(--tt);
    box-shadow: var(--bsh);
    transition: all var(--speed) var(--ease);
}
.pagination__btn:hover { background: var(--accent); border-color: var(--accent); color: #fff; }
.pagination__info { font-weight: 600; color: var(--tt-secondary); }

/* ===== Empty state ===== */
.empty-state { padding: 60px 20px; }
.empty-state__icon {
    width: 80px; height: 80px;
    margin: 0 auto 20px;
    border-radius: 50%;
    background: var(--accent-soft);
    color: var(--accent);
    display: grid; place-items: center;
    font-size: 2rem;
}
.empty-state h3 { margin-bottom: 8px; }

/* ===== Search page form ===== */
.search-page-form {
    display: flex;
    gap: 12px;
    max-width: 640px;
    margin-top: 20px;
}
.search-page-form input { flex: 1; }
.search-page-form .btn { flex: 0 0 auto; }
@media (max-width: 520px) { .search-page-form { flex-direction: column; } }

/* ============================================================
   МОБИЛЬНАЯ АДАПТАЦИЯ — фиксы (переопределяют styles.css)
   ============================================================ */

/* Шапка на мобилке — всегда непрозрачная: контент не просвечивает
   и не налезает под полупрозрачную glass-шапку (и на главной, и внутри) */
@media (max-width: 992px) {
    .header,
    .header.header--transparent,
    .header.header--scrolled {
        background: #ffffff !important;
        backdrop-filter: none !important;
        border-bottom: 1px solid var(--bdc) !important;
        box-shadow: 0 2px 12px rgba(0, 0, 0, .06);
    }
    /* при скролле шапка прижимается к самому верху (styles.css .header{top:36px}
       на мобилке перебивал .header--scrolled{top:0} → оставался зазор сверху) */
    .header.header--scrolled { top: 0 !important; }
    /* пункты меню в выезжающей панели и так тёмные — оставляем */
}

@media (max-width: 768px) {
    /* --- Топбар: убрать переполнение (номер ломался в столбик) --- */
    .topbar__inner { justify-content: flex-end; }      /* прижать к правому краю */
    .topbar__item--phone { display: none !important; } /* дублирует кнопку-телефон в шапке */
    .topbar__btn { margin-left: 8px; }

    /* --- Hero: не центрировать по вертикали (иначе высокий контент
       обрезается сверху под фикс-шапкой), а раскладывать сверху вниз --- */
    .hero-video {
        height: auto;
        min-height: 100vh;
        min-height: 100svh;      /* корректная высота на мобилках с адресной строкой */
        align-items: flex-start;
    }
    .hero-video__content {
        padding-top: 116px;      /* топбар 36 + шапка 70 + запас */
        padding-bottom: 44px;
    }
}

@media (max-width: 480px) {
    /* На узких экранах в топбаре оставляем только кнопку CTA */
    .topbar__item--cabinet { display: none; }
}

/* ============================================================
   Hero-статистика: белый текст на тёмном hero (карточки — тёмное стекло)
   ============================================================ */
.hero-video__stats .hero-stat {
    background: rgba(255, 255, 255, 0.10);
    border-color: rgba(255, 255, 255, 0.20);
}
.hero-video__stats .hero-stat__number { color: #ffffff; }
.hero-video__stats .hero-stat__label  { color: rgba(255, 255, 255, 0.85); }


/* ============================================================
   SHOP — магазин (плагин Celena Shop)
   Дополняет .prod-card / .product-page / .cart-page из styles.css
   ============================================================ */

/* --- Подзаголовок в page-hero (используется каталогом и списком новостей) --- */
.page-hero__subtitle { color: var(--tt-secondary); font-size: .95rem; margin-top: 4px; }

/* --- Утилита .muted (использует shop.js в сводке заказа) --- */
.muted { color: var(--tt-fade); }

/* --- Иконка корзины в шапке: бейдж-счётчик --- */
.header__cart-icon { position: relative; }
.header__cart-count {
    position: absolute;
    top: -6px; right: -6px;
    min-width: 18px; height: 18px;
    padding: 0 5px;
    display: flex; align-items: center; justify-content: center;
    background: var(--danger); color: #fff;
    font-size: .68rem; font-weight: 700; line-height: 1;
    border-radius: 50px;
}

/* --- Карточка товара: дополнения к styles.css --- */
.prod-card { position: relative; display: flex; flex-direction: column; }
.prod-card__body { display: flex; flex-direction: column; flex: 1; }
.prod-card__desc { font-size: .82rem; color: var(--tt-secondary); margin-bottom: 10px; }
.prod-card__price-wrap { margin-top: auto; }
.prod-card__buy { flex: 1; }

/* --- Тулбар каталога (сортировка) --- */
.shop-toolbar {
    display: flex; align-items: center; justify-content: space-between;
    gap: 16px; flex-wrap: wrap; margin-bottom: 24px;
}
.shop-toolbar__count { color: var(--tt-fade); font-size: .9rem; }
.shop-sort { display: flex; align-items: center; gap: 10px; }
.shop-sort__label { margin: 0; white-space: nowrap; font-size: .88rem; }
.shop-sort select { width: auto; min-width: 190px; }

/* --- Сайдбар каталогу: дерево категорій + фільтри за атрибутами товару --- */
.shop-layout { display: flex; align-items: flex-start; gap: var(--gap); }
.shop-layout__main { flex: 1; min-width: 0; }
.shop-sidebar-col { flex: 0 0 260px; width: 260px; display: flex; flex-direction: column; gap: var(--gap); }

.shop-categories {
    background: var(--bg-card);
    border: 1px solid var(--bdc);
    border-radius: var(--radius-lg);
    padding: 18px;
}
.shop-categories__title { font-weight: 700; font-size: 1rem; color: var(--tt); margin-bottom: 12px; }
.shop-cat-tree { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 2px; }
.shop-cat-tree__item a {
    display: block;
    padding: 7px 10px;
    border-radius: var(--radius);
    color: var(--tt-secondary);
    font-size: .88rem;
    line-height: 1.3;
    transition: all var(--speed) var(--ease);
}
.shop-cat-tree__item a:hover { background: var(--surface-2, rgba(127,127,127,.08)); color: var(--accent); }
.shop-cat-tree__item.is-active > a { background: var(--accent); color: #fff; font-weight: 600; }
.shop-cat-tree__item.is-ancestor > a { color: var(--accent); font-weight: 600; }
.shop-cat-tree__item--d1 a { padding-left: 22px; font-size: .85rem; }
.shop-cat-tree__item--d2 a { padding-left: 36px; font-size: .82rem; color: var(--tt-fade); }
.shop-cat-tree__item--d2.is-active > a, .shop-cat-tree__item--d2.is-ancestor > a { color: var(--accent); }

.shop-filters {
    background: var(--bg-card);
    border: 1px solid var(--bdc);
    border-radius: var(--radius-lg);
    padding: 18px;
}
.shop-filters__active { display: flex; flex-wrap: wrap; gap: 6px; align-items: center; margin-bottom: 14px; }
.shop-filter-chip {
    display: inline-block; padding: 4px 10px; border-radius: 100px;
    background: var(--accent); color: #fff; font-size: .78rem; font-weight: 500;
}
.shop-filters__reset { font-size: .8rem; color: var(--tt-fade); text-decoration: underline; }
.shop-filters__reset:hover { color: var(--accent); }

.shop-filter-group { border-bottom: 1px solid var(--bdc); padding: 12px 0; }
.shop-filter-group:first-of-type { padding-top: 0; }
.shop-filter-group__title { font-weight: 600; font-size: .92rem; color: var(--tt); margin: 0; }
summary.shop-filter-group__title {
    cursor: pointer; display: flex; align-items: center; justify-content: space-between;
    list-style: none;
}
summary.shop-filter-group__title::-webkit-details-marker { display: none; }
summary.shop-filter-group__title::after { content: "\f107"; font-family: "Font Awesome 5 Free"; font-weight: 900; color: var(--tt-fade); }
details[open] > summary.shop-filter-group__title::after { content: "\f106"; }

.shop-filter-values { display: flex; flex-direction: column; gap: 8px; margin-top: 10px; max-height: 220px; overflow-y: auto; }
.shop-filter-checkbox { display: flex; align-items: center; gap: 8px; font-size: .86rem; color: var(--tt-secondary); cursor: pointer; }
.shop-filter-checkbox input { margin: 0; }
.shop-filter-checkbox__label { flex: 1; }
.shop-filter-checkbox__count { color: var(--tt-fade); font-size: .78rem; }

.shop-filter-price { display: flex; align-items: center; gap: 8px; margin-top: 10px; }
.shop-filter-price input { width: 100%; }
.shop-filter-price span { color: var(--tt-fade); }

.shop-filters__submit { margin-top: 16px; }

/* --- Кнопка-тригер «Фільтри» (лише мобільна панель, на десктопі не показується) --- */
.shop-filters-toggle {
    display: none;
    align-items: center; gap: 8px;
    padding: 9px 16px;
    border-radius: var(--radius);
    background: var(--bg-card); border: 1px solid var(--bdc); color: var(--tt);
    font-size: .88rem; font-weight: 500; cursor: pointer;
    position: relative;
}
.shop-filters-toggle:hover { border-color: var(--accent); color: var(--accent); }
.shop-filters-toggle__dot {
    width: 8px; height: 8px; border-radius: 50%; background: var(--accent);
}
.shop-filters__mobile-head { display: none; }
.shop-filters-overlay { display: none; }

@media (max-width: 992px) {
    .shop-layout { flex-direction: column; }
    .shop-sidebar-col { width: 100%; flex: 1 1 auto; }

    .shop-filters-toggle { display: inline-flex; }

    /* Сайдбар стає висувною панеллю зліва, приховано за екраном за замовчуванням */
    .shop-filters {
        position: fixed; top: 0; left: 0; bottom: 0;
        width: min(85vw, 340px);
        z-index: 1001;
        border-radius: 0;
        overflow-y: auto;
        transform: translateX(-100%);
        transition: transform .28s ease;
        box-shadow: 4px 0 24px rgba(0,0,0,.18);
    }
    .shop-filters.is-open { transform: translateX(0); }

    .shop-filters__mobile-head {
        display: flex; align-items: center; justify-content: space-between;
        font-weight: 700; font-size: 1.05rem; color: var(--tt);
        margin: -18px -18px 16px; padding: 16px 18px;
        border-bottom: 1px solid var(--bdc);
        position: sticky; top: 0; background: var(--bg-card); z-index: 1;
    }
    .shop-filters__close {
        width: 32px; height: 32px; border-radius: 50%;
        background: var(--surface-2, transparent); border: 1px solid var(--bdc);
        color: var(--tt-fade); font-size: 1rem; cursor: pointer;
        display: flex; align-items: center; justify-content: center;
    }
    .shop-filters__close:hover { color: var(--accent); border-color: var(--accent); }

    .shop-filters-overlay {
        display: block;
        position: fixed; inset: 0;
        background: rgba(0,0,0,.4);
        z-index: 1000;
        opacity: 0; pointer-events: none;
        transition: opacity .28s ease;
    }
    .shop-filters-overlay.is-open { opacity: 1; pointer-events: auto; }
}

body.shop-filters-locked { overflow: hidden; }

/* --- Страница товара: дополнения --- */
.product-page__stock { display: inline-flex; align-items: center; gap: 5px; color: var(--success); font-weight: 600; }
.product-page__stock i { color: var(--success); }
.product-page__stock.is-out { color: var(--danger); }
.product-page__stock.is-out i { color: var(--danger); }
.product-page__reviews-count { color: var(--tt-fade); }
.product-page__reviews-count:hover { color: var(--accent); }
.product-page__rating { display: inline-flex; align-items: center; gap: 6px; font-weight: 700; color: var(--tt); }
.product-page__rating i { color: #f5a623; }

.product-page__variations { display: flex; flex-direction: column; gap: 14px; margin: 20px 0; }
.pp-variation__label { font-size: .85rem; font-weight: 600; color: var(--tt); margin-bottom: 6px; }
.pp-variation select { max-width: 320px; }

.product-page__counter { width: 90px; text-align: center; }
.product-page__add { flex: 1; max-width: 320px; }
.product-page__add:disabled { opacity: .55; cursor: not-allowed; background: var(--tt-fade); border-color: var(--tt-fade); }
.product-page__counter:disabled { opacity: .5; cursor: not-allowed; }
.product-page__out { color: var(--danger); margin-top: 12px; }

/* --- «Повідомити, коли з'явиться» (товар без залишку) --- */
.restock-form {
    margin-top: 14px; padding: 14px 16px;
    background: var(--bg-card); border: 1px solid var(--bdc); border-radius: var(--radius);
}
.restock-form__hint { margin: 0 0 10px; font-size: .88rem; color: var(--tt-secondary); }
.restock-form__hint i { color: var(--accent); margin-right: 4px; }
.restock-form__row { display: flex; gap: 8px; }
.restock-form__input { flex: 1; min-width: 0; }
.restock-form__submit { flex: 0 0 auto; white-space: nowrap; }
.restock-form__status { margin: 10px 0 0; font-size: .85rem; }
.restock-form__status.is-ok { color: var(--success); }
.restock-form__status.is-err { color: var(--danger); }
@media (max-width: 480px) {
    .restock-form__row { flex-direction: column; }
}

.product-page__assur {
    display: flex; flex-direction: column; gap: 10px;
    margin-top: 24px; padding-top: 20px;
    border-top: 1px solid var(--bdc);
}
.product-page__assur-item { display: flex; align-items: center; gap: 10px; font-size: .9rem; color: var(--tt-secondary); }
.product-page__assur-item i { color: var(--accent); width: 20px; text-align: center; }

.product-page__gallery-items img[data-gallery-thumb] { aspect-ratio: 1; object-fit: cover; border: 1px solid var(--bdc); }
.product-page__related { margin-top: 40px; }

/* --- Отзывы --- */
.review-list { display: flex; flex-direction: column; gap: 18px; margin-bottom: 32px; }
.review { display: flex; gap: 14px; }
.review__avatar {
    flex: 0 0 44px; width: 44px; height: 44px;
    border-radius: 50%; background: var(--accent-soft); color: var(--accent);
    display: grid; place-items: center; font-weight: 700; text-transform: uppercase;
}
.review__body { flex: 1; background: var(--bg-card); border: 1px solid var(--bdc); border-radius: var(--radius-lg); padding: 14px 18px; box-shadow: var(--bsh); }
.review__head { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; margin-bottom: 6px; }
.review__name { font-family: var(--font-display); font-weight: 600; color: var(--tt); }
.review__stars { display: inline-flex; align-items: center; gap: 4px; font-size: .82rem; font-weight: 700; color: #f5a623; }
.review__date { font-size: .8rem; color: var(--tt-fade); margin-left: auto; }
.review__text { color: var(--tt-secondary); line-height: 1.6; }

.review-form { background: var(--bg-card); border: 1px solid var(--bdc); border-radius: var(--radius-lg); padding: 22px; box-shadow: var(--bsh); }
.review-form__title { font-size: 1.1rem; margin-bottom: 16px; }
.review-form__row { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 14px; margin-bottom: 14px; }
@media (max-width: 760px) { .review-form__row { grid-template-columns: 1fr; } }

/* --- Кошик (малює тема у [data-ez-cart]) --- */
.ez-cart-wrap { overflow-x: auto; background: var(--bg-card); border: 1px solid var(--bdc); border-radius: var(--radius-lg); box-shadow: var(--bsh); }
.ez-cart { width: 100%; border-collapse: collapse; min-width: 540px; }
.ez-cart thead th {
    background: var(--bg-elevated); font-size: .72rem; text-transform: uppercase; letter-spacing: .05em;
    color: var(--tt-secondary); font-weight: 600; text-align: center; padding: 14px 16px;
}
.ez-cart thead th:first-child { text-align: left; }
.ez-cart tbody td { padding: 14px 16px; border-top: 1px solid var(--bdc); vertical-align: middle; text-align: center; }
.ez-cart tbody td.ez-cart__prod { text-align: left; }
.ez-cart__prod { display: flex; align-items: center; gap: 12px; }
.ez-cart__thumb { width: 56px; height: 56px; object-fit: cover; border-radius: var(--radius); flex: 0 0 auto; background: var(--bg-elevated); }
.ez-cart__name { font-weight: 600; color: var(--tt); }
.ez-cart__variation { font-size: .8rem; color: var(--tt-fade); font-weight: 400; margin-top: 2px; }
.ez-cart__qty { width: 76px; text-align: center; }
.ez-cart__sub { font-weight: 700; color: var(--accent); white-space: nowrap; }
.ez-cart__x { width: 1%; white-space: nowrap; }
.ez-cart__del {
    width: 34px; height: 34px; border: 1px solid var(--bdc); background: var(--bg-card);
    border-radius: var(--radius); color: var(--tt-fade); font-size: 1.25rem; line-height: 1; cursor: pointer;
    transition: all var(--speed);
}
.ez-cart__del:hover { border-color: var(--danger); color: var(--danger); }
.ez-cart-foot { display: flex; align-items: center; justify-content: flex-end; gap: 16px; margin-top: 20px; font-size: 1.1rem; font-weight: 600; }
.ez-cart-total { font-family: var(--font-display); font-size: 1.5rem; font-weight: 800; color: var(--accent); }
.ez-cart-actions { display: flex; justify-content: space-between; gap: 12px; margin-top: 20px; flex-wrap: wrap; }
@media (max-width: 560px) { .ez-cart-actions { flex-direction: column; } .ez-cart-actions .btn { width: 100%; } }

/* --- Підсумок замовлення ([data-ez-summary]) --- */
.ez-sum { width: 100%; border-collapse: collapse; }
.ez-sum td { padding: 6px 0; font-size: .92rem; color: var(--tt-secondary); }
.ez-sum td.ez-sum__r { text-align: right; white-space: nowrap; color: var(--tt); }
.ez-sum__div td { padding: 0; border-bottom: 1px solid var(--bdc); }
.ez-sum__grand td { padding-top: 12px; font-size: 1.05rem; font-weight: 700; color: var(--tt); }
.ez-sum__grand td.ez-sum__r { color: var(--accent); font-family: var(--font-display); font-size: 1.3rem; font-weight: 800; }

/* --- Оформление заказа --- */
.shop-checkout { display: grid; grid-template-columns: 1fr 360px; gap: 32px; align-items: start; }
@media (max-width: 900px) { .shop-checkout { grid-template-columns: 1fr; } }
.shop-checkout__block {
    background: var(--bg-card); border: 1px solid var(--bdc); border-radius: var(--radius-lg);
    padding: 22px; margin-bottom: 20px; box-shadow: var(--bsh);
}
.shop-checkout__h { font-size: 1.1rem; margin-bottom: 16px; }
.shop-checkout__summary { position: sticky; top: 90px; }
.shop-checkout__summary-inner {
    background: var(--bg-card); border: 1px solid var(--bdc); border-radius: var(--radius-lg);
    padding: 22px; box-shadow: var(--bsh);
}

.shop-radio-group { display: flex; flex-direction: column; gap: 10px; }
.shop-radio {
    display: flex; align-items: center; gap: 12px;
    padding: 14px 16px; border: 1px solid var(--bdc); border-radius: var(--radius);
    cursor: pointer; transition: all var(--speed); margin: 0;
}
.shop-radio:hover { border-color: var(--accent); }
.shop-radio input[type="radio"] { width: 18px; height: 18px; accent-color: var(--accent); flex: 0 0 auto; }
.shop-radio__body { flex: 1; display: flex; flex-direction: column; }
.shop-radio__title { font-weight: 600; color: var(--tt); }
.shop-radio__desc { font-size: .82rem; color: var(--tt-fade); }
.shop-radio__price { font-weight: 700; color: var(--accent); white-space: nowrap; }

.shop-checkout__parts { margin-top: 14px; padding-top: 14px; border-top: 1px dashed var(--bdc); }
.shop-checkout__parts-label { display: block; font-weight: 600; margin-bottom: 10px; color: var(--tt); }
.shop-checkout__parts-options { display: flex; flex-wrap: wrap; gap: 8px; }
.ez-parts-opt {
    padding: 10px 16px; border: 1px solid var(--bdc); border-radius: var(--radius);
    background: transparent; color: var(--tt); font-weight: 600; cursor: pointer; transition: all var(--speed);
}
.ez-parts-opt:hover { border-color: var(--accent); }
.ez-parts-opt.is-active { border-color: var(--accent); background: var(--accent); color: #fff; }

.shop-promo { display: flex; gap: 10px; }
.shop-promo input { flex: 1; text-transform: uppercase; }
.shop-promo .btn--outline { flex: 0 0 auto; padding: 10px 20px; }
.shop-promo__status { margin-top: 10px; font-size: .88rem; }
.shop-promo__status.is-ok { color: var(--success); }
.shop-promo__status.is-err { color: var(--danger); }

/* --- Тост «Товар додано до кошика» (theme.js) --- */
.shop-toast {
    position: fixed; left: 50%; bottom: 28px; transform: translate(-50%, 20px);
    z-index: 2000; padding: 12px 22px;
    background: var(--tt); color: #fff; border-radius: 50px;
    font-size: .9rem; font-weight: 600; box-shadow: 0 8px 30px rgba(0,0,0,.25);
    opacity: 0; pointer-events: none; transition: opacity .3s var(--ease), transform .3s var(--ease);
}
.shop-toast.show { opacity: 1; transform: translate(-50%, 0); }

/* --- Тарифи: селектор населеного пункту + чіпи типів (плагін tariffs) --- */
.tariffs-locality {
    display: flex; align-items: center; justify-content: center; gap: 12px;
    flex-wrap: wrap; margin-bottom: 22px;
}
.tariffs-locality__label { margin: 0; font-weight: 600; color: var(--tt); }
.tariffs-locality__label i { color: var(--accent); margin-right: 4px; }
.tariffs-locality__select { width: auto; min-width: 240px; max-width: 100%; }

.tariffs-kinds { display: flex; justify-content: center; gap: 8px; flex-wrap: wrap; margin-bottom: 22px; }
.tariffs-kind {
    padding: 8px 18px; border-radius: 100px; cursor: pointer;
    background: var(--bg-card); border: 1px solid var(--bdc);
    color: var(--tt-secondary); font-size: .88rem; font-weight: 500; font-family: inherit;
    transition: all var(--speed) var(--ease);
}
.tariffs-kind:hover { border-color: var(--accent); color: var(--accent); }
.tariffs-kind.is-active { background: var(--accent); border-color: var(--accent); color: #fff; }

.tariff-card__combo {
    margin-top: 6px; font-size: .85rem; font-weight: 600; color: var(--accent);
}
.tariff-card__combo i { margin-right: 4px; }

/* --- Тарифи: таби сегментів (Приватні будинки / Квартири / Корпоратив) --- */
.tariffs-segments {
    display: flex; justify-content: center; gap: 10px; flex-wrap: wrap;
    margin-bottom: 26px;
}
.tariffs-segment {
    padding: 12px 26px; border-radius: var(--radius); cursor: pointer;
    background: var(--bg-card); border: 1px solid var(--bdc);
    color: var(--tt); font-size: .95rem; font-weight: 600; font-family: inherit;
    transition: all var(--speed) var(--ease);
}
.tariffs-segment:hover { border-color: var(--accent); color: var(--accent); }
.tariffs-segment.is-active {
    background: var(--accent); border-color: var(--accent); color: #fff;
    box-shadow: 0 8px 24px rgba(0, 0, 0, .12);
}

/* --- Тарифи: бонус річної оплати («платиш за 12 — отримуєш 15») ---
   Показується лише коли активний перемикач «Щорічно» (theme.js вішає
   клас tariffs-year-mode на body). */
.tariff-card__bonus {
    display: none; margin-top: 8px;
    font-size: .82rem; font-weight: 600; color: var(--success, #1a7f37);
}
.tariff-card__bonus i { margin-right: 4px; }
body.tariffs-year-mode .tariff-card__bonus { display: block; }

/* --- Канали MEGOGO (/tv/channels): таби пакетів + список каналів по жанрах --- */
.tvch-summary { margin-bottom: 22px; }
.tvch-genre { margin-bottom: 26px; }
.tvch-genre__title {
    display: flex; align-items: baseline; gap: 8px;
    font-size: 1.05rem; font-weight: 700; color: var(--tt); margin-bottom: 12px;
}
.tvch-genre__count { font-size: .82rem; font-weight: 600; color: var(--tt-fade); }
.tvch-list { display: flex; flex-wrap: wrap; gap: 8px; }
.tvch-chip {
    display: inline-flex; align-items: center; gap: 6px;
    padding: 5px 14px 5px 5px; border: 1px solid var(--bdc); border-radius: 50px;
    background: var(--bg-card); color: var(--tt); font-size: .88rem; font-family: inherit;
    cursor: pointer; text-decoration: none; transition: border-color var(--speed) var(--ease);
}
.tvch-chip:hover { border-color: var(--accent); }
.tvch-chip__logo {
    width: 26px; height: 26px; border-radius: 50%; object-fit: cover;
    background: #fff; flex: 0 0 auto;
}
.tvch-badge {
    display: inline-block; padding: 1px 6px; border-radius: 4px;
    background: var(--accent); color: #fff; font-size: .68rem; font-weight: 700;
    line-height: 1.5;
}
.tvch-badge--4k { background: #7c3aed; }

/* --- Сторінка каналу (/tv/channels/{slug}) --- */
.tvch-page { max-width: 720px; margin: 0 auto; }
.tvch-page__header { display: flex; align-items: center; gap: 20px; margin-bottom: 24px; }
.tvch-page__logo { width: 84px; height: 84px; border-radius: 50%; object-fit: cover; background: #fff; flex: 0 0 auto; border: 1px solid var(--bdc); }
.tvch-page__name { font-size: 1.6rem; font-weight: 800; color: var(--tt); margin: 0 0 6px; }
.tvch-page__genre { font-size: .9rem; color: var(--tt-fade); margin: 0; }
.tvch-page__desc { font-size: 1rem; line-height: 1.7; color: var(--tt); margin-bottom: 28px; }
.tvch-page__packages h3 { font-size: 1.05rem; font-weight: 700; color: var(--tt); margin-bottom: 12px; }
.tvch-page__packages .tvch-chip { cursor: default; }
.tvch-page__packages .tvch-chip:hover { border-color: var(--bdc); }
.tvch-page__actions { display: flex; gap: 12px; flex-wrap: wrap; margin-top: 32px; }

/* --- Конфігуратор тарифу (/tariffs/configurator) --- */
.tvcfg-section { margin-bottom: 28px; }
.tvcfg-section__title { font-size: 1.1rem; font-weight: 700; color: var(--tt); margin-bottom: 14px; }
.tvcfg-hint { margin-top: 10px; font-size: .82rem; color: var(--tt-fade); }
.tvcfg-hint i { margin-right: 4px; }
.tvcfg-grid { display: flex; flex-wrap: wrap; gap: 12px; }
.tvcfg-option {
    position: relative; display: flex; flex-direction: column; gap: 4px;
    min-width: 170px; padding: 14px 16px; border: 1px solid var(--bdc); border-radius: var(--radius);
    background: var(--bg-card); color: var(--tt); cursor: pointer; transition: all var(--speed) var(--ease);
}
.tvcfg-option input { position: absolute; opacity: 0; pointer-events: none; }
.tvcfg-option[hidden] { display: none; }
.tvcfg-option:hover { border-color: var(--accent); }
.tvcfg-option.is-active { border-color: var(--accent); background: var(--accent); color: #fff; }
.tvcfg-option.is-active .tvcfg-option__meta,
.tvcfg-option.is-active .tvcfg-option__price { color: rgba(255,255,255,.85); }
.tvcfg-option__name { font-weight: 700; }
.tvcfg-option__meta { font-size: .82rem; color: var(--tt-fade); }
.tvcfg-option__price { font-size: .85rem; font-weight: 600; color: var(--accent); }
.tvcfg-option.is-active .tvcfg-option__price { color: #fff; }

.tvcfg-result {
    padding: 24px; border: 1px solid var(--bdc); border-radius: var(--radius-lg, var(--radius));
    background: var(--bg-card); text-align: center;
}
.tvcfg-result__price { font-size: 2.2rem; font-weight: 800; color: var(--tt); }
.tvcfg-result__price .tariff-card__currency,
.tvcfg-result__price .tariff-card__period { font-size: 1.1rem; font-weight: 600; color: var(--tt-fade); }
.tvcfg-result__breakdown { margin-top: 8px; font-size: .88rem; color: var(--tt-fade); }
.tvcfg-result__note { margin-top: 8px; font-size: .85rem; font-weight: 600; color: var(--accent); }
.tvcfg-result__btn { margin-top: 16px; }

.tvcfg-cta { margin-top: 24px; text-align: center; }
.tvcfg-cta .btn { display: inline-flex; }

/* --- Ціна MEGOGO на головній: "від 49 грн/міс" (комбо-доплата) --- */
.tv-card__price-prefix { font-size: .95rem; color: var(--tt-fade); margin-right: 4px; }
.tv-card__price-note { margin: -14px 0 20px; font-size: .78rem; color: var(--tt-fade); }

/* --- Топ-канали пакета на картці (для "вітрини" на головній) --- */
.tv-card__chips { display: flex; flex-wrap: wrap; gap: 5px; margin: 0 0 18px; }
/* Чипи каналів: раніше були білі (--bg-card) на світло-сірій картці
   (--bg-elevated) блідим --tt-fade — зливались і виглядали як порожні
   контури. Даємо фірмовий м'який відтінок і читабельний колір тексту. */
.tv-card__chip {
    padding: 4px 11px; border-radius: 50px;
    border: 1px solid rgba(0, 137, 123, .18);
    background: var(--accent-soft); color: var(--accent);
    font-size: .72rem; font-weight: 500;
}

/* --- Характеристики товару на сторінці /shop/product/{slug} --- */
.product-page__specs { margin-top: 40px; }
.specs-table { display: flex; flex-direction: column; gap: 0; border-radius: var(--radius-lg); overflow: hidden; border: 1px solid var(--bdc); }
.specs-table__row { display: flex; align-items: baseline; gap: 10px; padding: 12px 18px; background: var(--bg-card); }
.specs-table__row:nth-child(even) { background: transparent; }
.specs-table__label { color: var(--tt-fade); flex-shrink: 0; white-space: nowrap; }
.specs-table__dots { flex: 1; border-bottom: 1px dotted var(--bdc); min-width: 20px; height: 1em; }
.specs-table__value { color: var(--tt); font-weight: 600; text-align: right; }
@media (max-width: 576px) {
    .specs-table__row { flex-wrap: wrap; }
    .specs-table__dots { display: none; }
    .specs-table__label { width: 100%; }
    .specs-table__value { text-align: left; }
}

/* ============================================================
   Каталог: перемикач вигляду, порівняння, швидкий перегляд
   ============================================================ */

/* .prod-card__badge позиціонується всередині .img-responsive (там свій
   position:relative), а кнопка порівняння — прямий нащадок картки,
   тому їй потрібна власна система координат. */
.prod-card { position: relative; }

.prod-card__compare {
    position: absolute;
    top: 10px;
    right: 10px;
    z-index: 2;
    width: 34px;
    height: 34px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--bdc);
    border-radius: 50%;
    background: var(--bg-card);
    color: var(--tt-fade);
    cursor: pointer;
    opacity: 0;
    transition: all var(--speed);
}
.prod-card:hover .prod-card__compare,
.prod-card__compare.is-active,
.prod-card__compare:focus-visible { opacity: 1; }
.prod-card__compare:hover { border-color: var(--accent); color: var(--accent); }
.prod-card__compare.is-active { border-color: var(--accent); background: var(--accent); color: #fff; }
/* На тач-екранах ховера нема — кнопка має бути видима завжди. */
@media (hover: none) {
    .prod-card__compare { opacity: 1; }
}

/* --- Перемикач сітка/список --- */
.shop-view { display: flex; gap: 4px; }
.shop-view__btn {
    width: 36px;
    height: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--bdc);
    border-radius: var(--radius);
    background: transparent;
    color: var(--tt-fade);
    cursor: pointer;
    transition: all var(--speed);
}
.shop-view__btn:hover { border-color: var(--accent); color: var(--accent); }
.shop-view__btn.is-active { border-color: var(--accent); background: var(--accent); color: #fff; }

/* --- Режим списку --- */
.prod-grid--list { grid-template-columns: 1fr; }
.prod-grid--list .prod-card { display: grid; grid-template-columns: 240px 1fr; }
.prod-grid--list .prod-card .img-responsive { padding-top: 0; height: 100%; min-height: 180px; }
.prod-grid--list .prod-card__body { display: flex; flex-direction: column; justify-content: center; }
.prod-grid--list .prod-card__desc { -webkit-line-clamp: 3; }
@media (max-width: 576px) {
    /* На вузькому екрані двоколонковий рядок стає нечитабельним —
       список вироджується у звичайну картку. */
    .prod-grid--list .prod-card { grid-template-columns: 1fr; }
    .prod-grid--list .prod-card .img-responsive { padding-top: 70%; height: auto; min-height: 0; }
}

/* --- Швидкий перегляд (модалка) --- */
.quick-view {
    position: fixed;
    inset: 0;
    z-index: 1000;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 20px;
    background: rgba(0, 0, 0, 0.65);
    animation: qvFade var(--speed) var(--ease);
}
@keyframes qvFade { from { opacity: 0; } to { opacity: 1; } }
.quick-view__dialog {
    position: relative;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 24px;
    width: min(900px, 100%);
    max-height: 90vh;
    overflow: auto;
    padding: 24px;
    background: var(--bg-card);
    border: 1px solid var(--bdc);
    border-radius: var(--radius-lg);
}
.quick-view__close {
    position: absolute;
    top: 10px;
    right: 12px;
    width: 34px;
    height: 34px;
    border: none;
    background: transparent;
    color: var(--tt-fade);
    font-size: 1.8rem;
    line-height: 1;
    cursor: pointer;
}
.quick-view__close:hover { color: var(--accent); }
.quick-view__img {
    width: 100%;
    aspect-ratio: 1;
    object-fit: contain;
    background: #fff;
    border-radius: var(--radius);
}
.quick-view__thumbs { display: flex; gap: 8px; margin-top: 10px; flex-wrap: wrap; }
.quick-view__thumbs img {
    width: 56px;
    height: 56px;
    object-fit: cover;
    border: 1px solid var(--bdc);
    border-radius: var(--radius);
    cursor: pointer;
}
.quick-view__thumbs img.is-active { border-color: var(--accent); }
.quick-view__title { font-size: 1.3rem; margin: 0 0 10px; }
.quick-view__meta { display: flex; flex-wrap: wrap; gap: 14px; font-size: .85rem; color: var(--tt-fade); margin-bottom: 12px; }
.quick-view__stock { color: var(--success, #1a7f37); }
.quick-view__stock.is-out { color: var(--tt-fade); }
.quick-view__short { color: var(--tt-secondary); margin-bottom: 14px; }
.quick-view__specs { margin-bottom: 16px; }
.quick-view__spec { display: flex; justify-content: space-between; gap: 12px; padding: 6px 0; border-bottom: 1px dashed var(--bdc); font-size: .88rem; }
.quick-view__spec span { color: var(--tt-fade); }
.quick-view__price-wrap { display: flex; align-items: baseline; gap: 10px; margin-bottom: 16px; }
.quick-view__price { font-family: var(--font-display); font-size: 1.8rem; font-weight: 700; color: var(--tt); }
.quick-view__old-price { color: var(--tt-fade); text-decoration: line-through; }
.quick-view__actions { display: flex; flex-wrap: wrap; gap: 10px; }
@media (max-width: 768px) {
    .quick-view__dialog { grid-template-columns: 1fr; }
}

/* --- Плаваюча панель порівняння --- */
.compare-panel {
    position: fixed;
    left: 50%;
    bottom: 20px;
    transform: translateX(-50%);
    z-index: 900;
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 12px 16px;
    background: var(--bg-card);
    border: 1px solid var(--accent);
    border-radius: 50px;
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.25);
}
.compare-panel__text { font-size: .9rem; color: var(--tt); white-space: nowrap; }
.compare-panel__clear {
    border: none;
    background: transparent;
    color: var(--tt-fade);
    font-size: 1.5rem;
    line-height: 1;
    cursor: pointer;
}
.compare-panel__clear:hover { color: var(--accent); }

/* --- Таблиця порівняння --- */
.compare-actions { margin-bottom: 16px; }
.compare-wrap { overflow-x: auto; }
.compare-table { width: 100%; border-collapse: collapse; min-width: 600px; }
.compare-table th,
.compare-table td {
    padding: 12px;
    border: 1px solid var(--bdc);
    text-align: left;
    vertical-align: top;
}
.compare-table thead th { background: var(--bg-card); }
.compare-table__corner { width: 180px; }
.compare-table__prod { position: relative; width: 220px; text-align: center; }
.compare-table__prod img { width: 100%; aspect-ratio: 1; object-fit: contain; background: #fff; border-radius: var(--radius); margin-bottom: 8px; }
.compare-table__title { display: block; font-size: .9rem; margin-bottom: 10px; color: var(--tt); }
.compare-table__title:hover { color: var(--accent); }
.compare-table__del {
    position: absolute;
    top: 6px;
    right: 8px;
    border: none;
    background: transparent;
    color: var(--tt-fade);
    font-size: 1.4rem;
    line-height: 1;
    cursor: pointer;
}
.compare-table__del:hover { color: var(--accent); }
.compare-table tbody th { width: 180px; font-weight: 600; color: var(--tt-fade); background: var(--bg-card); }
/* Рядки, де значення різняться — головне, заради чого відкривають порівняння. */
.compare-table tr.is-diff td { color: var(--tt); font-weight: 600; }

/* --- Форма заявки на підключення (_partials/lead_form.tpl) --- */
.en-form {
    max-width: 720px;
    margin: 0 auto;
    background: var(--bg-card);
    border: 1px solid var(--bdc);
    border-radius: var(--radius-lg);
    padding: 28px;
}
.en-form__row { display: flex; gap: 16px; }
.en-form__field { display: block; flex: 1; min-width: 0; margin-bottom: 16px; }
.en-form__label { display: block; margin-bottom: 6px; font-size: .88rem; font-weight: 500; color: var(--tt); }
.en-form__label b { color: var(--accent); font-weight: 600; }
.en-form input[type="text"],
.en-form input[type="tel"],
.en-form textarea {
    width: 100%;
    padding: 11px 14px;
    border-radius: var(--radius);
    border: 1px solid var(--bdc);
    background: var(--bg);
    color: var(--tt);
    font-family: var(--font-body);
    font-size: .95rem;
    transition: border-color var(--speed) var(--ease);
}
.en-form input:focus, .en-form textarea:focus { outline: none; border-color: var(--accent); }
.en-form textarea { resize: vertical; min-height: 84px; }

/* Honeypot: приховуємо від людей, але лишаємо доступним для ботів-автозаповнювачів.
   Саме тому не display:none — частина ботів такі поля свідомо пропускає. */
.en-form__hp { position: absolute !important; left: -9999px !important; width: 1px !important; height: 1px !important; opacity: 0 !important; }

.en-form__actions { display: flex; flex-direction: column; align-items: center; gap: 10px; margin-top: 8px; }
.en-form__submit { min-width: 240px; }
.en-form__note { font-size: .82rem; color: var(--tt-fade); margin: 0; display: flex; align-items: center; gap: 6px; }

.en-form__msg { margin-top: 16px; padding: 14px 18px; border-radius: var(--radius); font-size: .95rem; text-align: center; }
.en-form__msg.is-ok { background: rgba(16, 185, 129, .12); color: var(--success, #10b981); font-weight: 600; }
.en-form__msg.is-error { background: rgba(220, 53, 69, .1); color: var(--danger, #dc3545); }
/* Будь-який елемент з власним display потребує явного [hidden]{display:none} —
   інакше авторський стиль переважає дефолт браузера і приховування не працює. */
.en-form__row[hidden], .en-form__field[hidden], .en-form__actions[hidden], .en-form__msg[hidden] { display: none; }

@media (max-width: 576px) {
    .en-form { padding: 20px; }
    .en-form__row { flex-direction: column; gap: 0; }
    .en-form__submit { width: 100%; min-width: 0; }
}

/* Блок заявки під конфігуратором тарифів (/tariffs/configurator) */
.tvcfg-connect { margin-top: 48px; scroll-margin-top: 90px; }

/* ============================================================
   Картка товару — оновлений вигляд (за мотивами Prime, у своїй палітрі)
   Перекриває базові правила .prod-card зі styles.css; свідомо без
   темної теми — сайт світлий, кольори беремо з наявних змінних.
   ============================================================ */
.prod-card {
    border-radius: var(--radius-lg);
    box-shadow: 0 1px 2px rgba(16, 24, 40, .04);
    transition: box-shadow var(--speed) var(--ease), transform var(--speed) var(--ease), border-color var(--speed) var(--ease);
}
.prod-card:hover {
    transform: translateY(-4px);
    /* Тінь у світлій темі має бути м'якою: попереднє rgba(0,0,0,.2) на
       білому тлі виглядало як брудна пляма, а не підняття картки. */
    box-shadow: 0 12px 28px rgba(16, 24, 40, .10);
    border-color: var(--bdc);
}
.prod-card .img-responsive { padding-top: 78%; background: #fff; }
.prod-card img { object-fit: contain; padding: 12px; }

/* Стікери (знижка / немає в наявності) — колонкою у лівому верхньому куті */
.prod-card__stickers {
    position: absolute; top: 10px; left: 10px; z-index: 2;
    display: flex; flex-direction: column; gap: 6px; align-items: flex-start;
}
.prod-card__badge {
    position: static;
    padding: 3px 10px;
    background: var(--danger);
    color: #fff;
    font-size: .72rem;
    font-weight: 700;
    border-radius: 6px;
    line-height: 1.5;
}
.prod-card__badge--out { background: var(--tt-fade); }

/* Іконки-дії поверх фото (порівняння, швидкий перегляд) */
.prod-card__tools {
    position: absolute; top: 10px; right: 10px; z-index: 3;
    display: flex; flex-direction: column; gap: 6px;
    opacity: 0; transform: translateX(6px);
    transition: opacity var(--speed) var(--ease), transform var(--speed) var(--ease);
}
.prod-card:hover .prod-card__tools { opacity: 1; transform: none; }
.prod-card__tool {
    width: 34px; height: 34px;
    display: flex; align-items: center; justify-content: center;
    background: #fff;
    border: 1px solid var(--bdc);
    border-radius: 8px;
    color: var(--tt-secondary);
    font-size: .85rem;
    cursor: pointer;
    transition: all var(--speed) var(--ease);
}
.prod-card__tool:hover { border-color: var(--accent); color: var(--accent); }
.prod-card__tool.is-active { border-color: var(--accent); background: var(--accent); color: #fff; }

.prod-card__body { padding: 14px 16px 16px; }
.prod-card__title { font-size: .92rem; min-height: 2.5em; margin-bottom: 6px; }
.prod-card__sku { font-size: .75rem; color: var(--tt-fade); margin-bottom: 6px; }

.prod-card__stock {
    display: flex; align-items: center; gap: 6px;
    font-size: .78rem; font-weight: 600;
    color: var(--success);
    margin-bottom: 10px;
}
.prod-card.is-out .prod-card__stock { color: var(--tt-fade); }

.prod-card__price-wrap { align-items: baseline; margin-bottom: 12px; }
.prod-card__price { font-size: 1.25rem; color: var(--tt); }
.prod-card.is-out .prod-card__price { color: var(--tt-fade); }
.prod-card__actions .prod-card__buy { width: 100%; justify-content: center; }

/* На тач-екранах ховера немає — інакше іконки були б недосяжні */
@media (hover: none) {
    .prod-card__tools { opacity: 1; transform: none; }
}

/* У режимі списку фото ширше, тому вирівнюємо відступи */
.prod-grid--list .prod-card img { padding: 16px; }


/* ============================================================
   Вітрина магазину (/shop) — лендинг: меню категорій, банери,
   плитки, каруселі, відгуки. Палітра рідна (teal), не з Prime.
   ============================================================ */
/* Шапка — position:fixed (top:36px), місця в потоці не займає. Решта
   сторінок компенсує це через .page-hero{padding:140px 0 40px}, а на
   вітрині page-hero немає — тому той самий відступ задаємо тут, інакше
   перший блок заповзає під шапку. */
.shop-lp { padding: 140px 0 0; }
.shop-lp__section { margin-top: 44px; }

.shop-lp__head {
    display: flex; align-items: center; justify-content: space-between;
    gap: 16px; margin-bottom: 18px;
}
.shop-lp__head h2 {
    font-family: var(--font-display);
    font-size: 1.45rem; font-weight: 700; color: var(--tt); margin: 0;
}
.shop-lp__head--all { margin-bottom: 22px; }
.shop-lp__count {
    padding: 3px 12px; border-radius: 100px;
    background: var(--accent-soft); color: var(--accent);
    font-size: .85rem; font-weight: 700;
}
.shop-lp__nav { display: flex; gap: 8px; }
.shop-lp__arrow {
    width: 38px; height: 38px; flex-shrink: 0;
    display: flex; align-items: center; justify-content: center;
    background: var(--bg-card); border: 1px solid var(--bdc);
    border-radius: 50%; color: var(--tt-secondary);
    cursor: pointer; transition: all var(--speed) var(--ease);
}
.shop-lp__arrow:hover { border-color: var(--accent); color: var(--accent); }
.shop-lp__arrow:disabled { opacity: .35; cursor: default; }
.shop-lp__arrow:disabled:hover { border-color: var(--bdc); color: var(--tt-secondary); }

/* ── Верх: меню категорій + банери ───────────────────────── */
.shop-lp__top {
    display: grid;
    grid-template-columns: 290px 1fr;
    gap: 20px;
    align-items: start;
}
.shop-catmenu {
    background: var(--bg-card);
    border: 1px solid var(--bdc);
    border-radius: var(--radius-lg);
    padding: 6px;
    /* overflow НЕ ховаємо: підменю висувається за межі меню вбік */
    position: relative;
}
.shop-catmenu__row { position: relative; }
.shop-catmenu__item {
    display: flex; align-items: center; gap: 12px;
    padding: 11px 12px;
    border-radius: var(--radius);
    color: var(--tt);
    font-size: .9rem;
    transition: background var(--speed) var(--ease), color var(--speed) var(--ease);
}
.shop-catmenu__row + .shop-catmenu__row .shop-catmenu__item { box-shadow: inset 0 1px 0 var(--bdc-light); }
.shop-catmenu__item:hover { background: var(--accent-soft); color: var(--accent); }
.shop-catmenu__ico {
    width: 30px; flex-shrink: 0; text-align: center;
    color: var(--tt-fade); font-size: 1rem;
    transition: color var(--speed) var(--ease);
}
.shop-catmenu__item:hover .shop-catmenu__ico { color: var(--accent); }
.shop-catmenu__label { flex: 1; line-height: 1.3; }
.shop-catmenu__count { font-size: .75rem; color: var(--tt-fade); }
.shop-catmenu__arrow { font-size: .7rem; color: var(--tt-fade); }

/* Кнопка розкриття — тільки для тач-екранів (на десктопі є hover) */
.shop-catmenu__toggle { display: none; }

/* ── Підменю ─────────────────────────────────────────────── */
.shop-catmenu__sub {
    position: absolute; top: -6px; left: 100%; z-index: 30;
    min-width: 260px;
    margin-left: 8px;
    padding: 8px;
    background: var(--bg-card);
    border: 1px solid var(--bdc);
    border-radius: var(--radius-lg);
    box-shadow: 0 16px 40px rgba(16, 24, 40, .12);
    opacity: 0; visibility: hidden;
    transform: translateX(-6px);
    transition: opacity var(--speed) var(--ease), transform var(--speed) var(--ease), visibility var(--speed);
}
.shop-catmenu__row.has-sub:hover .shop-catmenu__sub,
.shop-catmenu__row.has-sub:focus-within .shop-catmenu__sub {
    opacity: 1; visibility: visible; transform: translateX(0);
}
.shop-catmenu__suball {
    display: block; padding: 9px 12px; margin-bottom: 4px;
    border-radius: var(--radius);
    background: var(--accent-soft); color: var(--accent);
    font-size: .82rem; font-weight: 600;
}
.shop-catmenu__subitem {
    display: flex; align-items: center; justify-content: space-between; gap: 10px;
    padding: 9px 12px; border-radius: var(--radius);
    color: var(--tt); font-size: .86rem;
    transition: background var(--speed) var(--ease), color var(--speed) var(--ease);
}
.shop-catmenu__subitem:hover { background: var(--accent-soft); color: var(--accent); }

.shop-lp__promo { display: grid; grid-template-columns: 1fr 300px; gap: 20px; }
.shop-lpb {
    position: relative; overflow: hidden;
    border-radius: var(--radius-lg);
    padding: 32px;
    display: flex; flex-direction: column; justify-content: center;
    min-height: 320px;
}
.shop-lpb--main {
    background: linear-gradient(135deg, #0f2d2a 0%, #134e48 55%, #00897B 100%);
    color: #fff;
}
.shop-lpb--main::after {
    content: ""; position: absolute; right: -70px; top: -70px;
    width: 320px; height: 320px; border-radius: 50%;
    background: rgba(255, 255, 255, .07);
}
.shop-lpb--sm {
    background: linear-gradient(140deg, #1a2332 0%, #2d3b52 100%);
    color: #fff;
    min-height: 320px;
}
.shop-lpb__text { position: relative; z-index: 1; }
.shop-lpb__kicker {
    display: inline-block; margin-bottom: 10px;
    font-size: .75rem; font-weight: 700; letter-spacing: .08em;
    text-transform: uppercase; color: rgba(255, 255, 255, .65);
}
.shop-lpb__title {
    font-family: var(--font-display);
    font-size: 2.1rem; font-weight: 800; line-height: 1.15;
    margin: 0 0 12px; color: #fff;
}
.shop-lpb__title-sm {
    font-family: var(--font-display);
    font-size: 1.5rem; font-weight: 800; line-height: 1.2;
    margin: 0 0 14px; color: #fff;
}
.shop-lpb__sub {
    font-size: .95rem; color: rgba(255, 255, 255, .8);
    margin: 0 0 22px; max-width: 420px;
}
.shop-lpb--main .btn { background: #fff; color: #0f2d2a; border-color: #fff; }
.shop-lpb--main .btn:hover { background: rgba(255, 255, 255, .88); color: #0f2d2a; }
.shop-lpb__link {
    display: inline-flex; align-items: center; gap: 8px;
    color: #fff; font-weight: 600; font-size: .9rem;
}
.shop-lpb__link i { transition: transform var(--speed) var(--ease); }
.shop-lpb__link:hover i { transform: translateX(4px); }

/* ── Переваги ────────────────────────────────────────────── */
.shop-usp {
    display: grid; grid-template-columns: repeat(6, 1fr); gap: 14px;
    margin-top: 20px;
}
.shop-usp__item {
    background: var(--bg-card);
    border: 1px solid var(--bdc);
    border-radius: var(--radius-lg);
    padding: 20px 18px;
}
.shop-usp__ico {
    position: relative;
    width: 46px; height: 46px; margin-bottom: 14px;
    display: flex; align-items: center; justify-content: center;
    border-radius: 50%;
    background: var(--bg-light);
    color: var(--tt);
    font-size: 1.05rem;
}
.shop-usp__dot {
    position: absolute; top: 0; right: 0;
    width: 10px; height: 10px; border-radius: 50%;
    border: 2px solid var(--bg-card);
}
.shop-usp__item b { display: block; font-size: .92rem; color: var(--tt); margin-bottom: 5px; }
.shop-usp__item > span:last-child { display: block; font-size: .8rem; color: var(--tt-fade); line-height: 1.45; }

/* ── Горизонтальні стрічки (плитки, каруселі, відгуки) ───── */
.shop-cattiles, .prod-row, .shop-rev__list {
    display: flex; gap: 16px;
    overflow-x: auto;
    scroll-behavior: smooth;
    scroll-snap-type: x proximity;
    padding-bottom: 6px;
    scrollbar-width: none;
}
.shop-cattiles::-webkit-scrollbar,
.prod-row::-webkit-scrollbar,
.shop-rev__list::-webkit-scrollbar { display: none; }
.prod-row > .prod-card { flex: 0 0 240px; scroll-snap-align: start; }

.shop-cattile {
    flex: 0 0 168px; scroll-snap-align: start;
    background: var(--bg-card); border: 1px solid var(--bdc);
    border-radius: var(--radius-lg);
    padding: 16px 14px; text-align: center;
    transition: all var(--speed) var(--ease);
}
.shop-cattile:hover {
    border-color: var(--accent); transform: translateY(-3px);
    box-shadow: 0 10px 24px rgba(16, 24, 40, .08);
}
.shop-cattile__img {
    display: flex; align-items: center; justify-content: center;
    height: 96px; margin-bottom: 12px;
    color: var(--tt-fade); font-size: 1.8rem;
}
.shop-cattile__img img { max-width: 100%; max-height: 96px; object-fit: contain; }
.shop-cattile__title { display: block; font-size: .86rem; font-weight: 600; color: var(--tt); line-height: 1.3; }
.shop-cattile:hover .shop-cattile__title { color: var(--accent); }
.shop-cattile__count { display: block; margin-top: 4px; font-size: .75rem; color: var(--tt-fade); }

/* ── Відгуки ─────────────────────────────────────────────── */
.shop-rev {
    display: grid; grid-template-columns: 240px 1fr; gap: 28px;
    background: var(--bg-card); border: 1px solid var(--bdc);
    border-radius: var(--radius-lg); padding: 24px 28px;
    align-items: center;
}
.shop-rev__score { text-align: center; border-right: 1px solid var(--bdc); padding-right: 24px; }
.shop-rev__avg { font-family: var(--font-display); font-size: 3rem; font-weight: 800; line-height: 1; color: var(--tt); }
.shop-rev__stars { color: var(--warning); font-size: .95rem; margin: 8px 0 6px; }
.shop-rev__stars--sm { font-size: .75rem; margin: 2px 0 0; display: block; }
.shop-rev__total { font-size: .8rem; color: var(--tt-fade); }
.shop-rev__bars { display: flex; flex-direction: column; gap: 8px; }
.shop-rev__bar { display: flex; align-items: center; gap: 12px; }
.shop-rev__bar-label { flex: 0 0 42px; font-size: .82rem; color: var(--tt-secondary); }
.shop-rev__bar-label i { color: var(--warning); font-size: .7rem; }
.shop-rev__bar-track { flex: 1; height: 8px; border-radius: 100px; background: var(--bg-light); overflow: hidden; }
.shop-rev__bar-fill { display: block; height: 100%; border-radius: 100px; background: var(--warning); }
.shop-rev__bar-count { flex: 0 0 28px; text-align: right; font-size: .8rem; color: var(--tt-fade); }

.shop-rev__list { margin-top: 16px; }
.shop-rev__card {
    flex: 0 0 300px; scroll-snap-align: start;
    background: var(--bg-card); border: 1px solid var(--bdc);
    border-radius: var(--radius-lg); padding: 18px;
    display: flex; flex-direction: column;
}
.shop-rev__who { display: flex; align-items: center; gap: 10px; margin-bottom: 10px; }
.shop-rev__ava {
    width: 38px; height: 38px; flex-shrink: 0;
    display: flex; align-items: center; justify-content: center;
    border-radius: 50%; background: var(--accent-soft); color: var(--accent);
    font-weight: 700;
}
.shop-rev__who b { display: block; font-size: .88rem; color: var(--tt); }
.shop-rev__text { font-size: .85rem; color: var(--tt-secondary); line-height: 1.55; margin: 0 0 14px; flex: 1; }
.shop-rev__meta { display: flex; flex-direction: column; gap: 3px; font-size: .75rem; color: var(--tt-fade); }
.shop-rev__meta a { color: var(--accent); }

/* На вітрині сайдбар прихований — сітка «Всі товари» на всю ширину */
.shop-layout--full .shop-sidebar-col { display: none; }

@media (max-width: 1200px) {
    .shop-usp { grid-template-columns: repeat(3, 1fr); }
}
@media (max-width: 992px) {
    .shop-lp__top { grid-template-columns: 1fr; }
    /* Меню категорій лишається видимим і на телефоні (раніше ховалось —
       користувач не міг дістатись розділів). Підменю тут не висувається
       вбік (нема куди), а розкривається списком по кнопці. */
    .shop-catmenu__row.has-sub { display: flex; flex-wrap: wrap; align-items: center; }
    .shop-catmenu__row.has-sub .shop-catmenu__item { flex: 1; min-width: 0; }
    .shop-catmenu__arrow { display: none; }
    .shop-catmenu__toggle {
        display: flex; align-items: center; justify-content: center;
        width: 40px; height: 40px; flex-shrink: 0;
        background: none; border: 0; border-radius: var(--radius);
        color: var(--tt-fade); cursor: pointer;
        transition: transform var(--speed) var(--ease), color var(--speed) var(--ease);
    }
    .shop-catmenu__toggle:hover { color: var(--accent); }
    .shop-catmenu__row.is-open .shop-catmenu__toggle { transform: rotate(180deg); color: var(--accent); }
    .shop-catmenu__sub {
        position: static; width: 100%; margin: 0 0 6px; padding: 6px 6px 6px 42px;
        border: 0; border-radius: 0; box-shadow: none;
        background: transparent;
        transform: none; transition: none;
        /* display:none, а не лише opacity — інакше згорнуте підменю
           лишалось би клікабельним і тягнуло висоту рядка. */
        display: none; opacity: 1; visibility: visible;
    }
    .shop-catmenu__row.is-open .shop-catmenu__sub { display: block; }
    .shop-lp__promo { grid-template-columns: 1fr; }
    .shop-lpb, .shop-lpb--sm { min-height: 240px; }
    .shop-rev { grid-template-columns: 1fr; gap: 20px; }
    .shop-rev__score { border-right: 0; border-bottom: 1px solid var(--bdc); padding: 0 0 18px; }
}
@media (max-width: 576px) {
    /* Шапка на мобільному НЕ нижчає (71px + top:36px = низ на 107px),
       тому 110px лишали б 3px зазору — беремо 130px на просвіт. */
    .shop-lp { padding-top: 130px; }
    .shop-usp { grid-template-columns: repeat(2, 1fr); }
    .shop-usp__item { padding: 16px 14px; }
    .shop-lpb { padding: 24px; }
    .shop-lpb__title { font-size: 1.6rem; }
    .prod-row > .prod-card { flex: 0 0 210px; }
    .shop-lp__head h2 { font-size: 1.2rem; }
}

/* Реквізити платника (безготівковий розрахунок юрособи) на чекауті */
.shop-company {
    margin-top: 14px; padding: 16px;
    background: var(--bg-light);
    border: 1px solid var(--bdc);
    border-radius: var(--radius-lg);
}
.shop-company[hidden] { display: none; }
.shop-company__note {
    margin: 0 0 14px; font-size: .84rem; line-height: 1.5;
    color: var(--tt-secondary);
}
.shop-company__note i { color: var(--accent); margin-right: 4px; }

/* Приховування недоступних способів оплати/доставки.
   .shop-radio має власний display:flex, а він ЗАВЖДИ перебиває дефолтний
   [hidden]{display:none} браузера (авторський origin вищий за user-agent) —
   без цього правила JS виставляв би .hidden=true, а рядок лишався б видимим. */
.shop-radio[hidden] { display: none; }

/* ===== Секція «Дата-центр» на головній ===== */
.dc-promo {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 16px;
}
.dc-promo__item {
    display: flex; flex-direction: column;
    padding: 24px 20px;
    background: var(--bg-card);
    border: 1px solid var(--bdc);
    border-radius: var(--radius-lg);
    transition: all var(--speed) var(--ease);
}
a.dc-promo__item:hover {
    border-color: var(--accent);
    transform: translateY(-4px);
    box-shadow: 0 12px 28px rgba(16, 24, 40, .08);
}
.dc-promo__ico {
    width: 48px; height: 48px; margin-bottom: 14px;
    display: flex; align-items: center; justify-content: center;
    border-radius: 12px;
    background: var(--accent-soft); color: var(--accent);
    font-size: 1.2rem;
}
.dc-promo__item b { font-size: 1.02rem; color: var(--tt); margin-bottom: 6px; }
.dc-promo__item > span:not(.dc-promo__ico):not(.dc-promo__go):not(.dc-promo__soon) {
    font-size: .85rem; color: var(--tt-fade); line-height: 1.5; flex: 1;
}
.dc-promo__go {
    display: inline-flex; align-items: center; gap: 6px;
    margin-top: 14px; font-size: .86rem; font-weight: 600; color: var(--accent);
}
.dc-promo__go i { transition: transform var(--speed) var(--ease); }
a.dc-promo__item:hover .dc-promo__go i { transform: translateX(4px); }

/* Ще не запущені послуги — картка та сама, але без інтерактиву */
.dc-promo__item--soon { opacity: .72; }
.dc-promo__soon {
    align-self: flex-start; margin-top: 14px;
    padding: 3px 12px; border-radius: 100px;
    background: var(--bg-light); color: var(--tt-fade);
    font-size: .75rem; font-weight: 700;
    text-transform: uppercase; letter-spacing: .04em;
}
.dc-promo__note { margin-top: 18px; text-align: center; font-size: .88rem; color: var(--tt-fade); }

/* --- Логотипи каналів на картці ТВ-пакета (головна) ---
   Логотипи в MEGOGO різного розміру й з різним фоном (часто білим або
   прозорим), тому кожен кладемо в однакову світлу «плитку» з object-fit:
   contain — інакше ряд виглядає рваним, а темні лого зникають на темній темі. */
.tv-card__logos {
    display: flex; flex-wrap: wrap; gap: 6px; margin: 0 0 18px;
}
.tv-logo {
    display: inline-flex; align-items: center; justify-content: center;
    width: 40px; height: 40px;
    border-radius: 10px;
    background: #fff;
    border: 1px solid var(--bdc);
    overflow: hidden;
    flex: 0 0 auto;
}
.tv-logo img {
    width: 100%; height: 100%;
    object-fit: contain;
    display: block;
}
/* «+N» — решта каналів пакета, щоб шість плиток не читались як «усього шість» */
.tv-logo--rest {
    background: var(--accent-soft);
    border-color: rgba(0, 137, 123, .18);
    color: var(--accent);
    font-size: .74rem; font-weight: 600;
}

/* ===== Блок «Швидке поповнення рахунку» (головна) =====
   Ілюстрація зібрана з CSS-примітивів, бо придатного фото в темі немає, а
   намальована «картка» лишається чіткою на будь-якій щільності екрана. */
.topup {
    background:
        radial-gradient(720px 380px at 12% 22%, rgba(0, 191, 166, .12), transparent 62%),
        linear-gradient(135deg, #f0fbf9 0%, #f5f7fa 62%);
    border-bottom: 1px solid var(--bdc);
}
.topup__inner {
    display: grid;
    grid-template-columns: minmax(0, .92fr) minmax(0, 1.08fr);
    gap: 48px;
    align-items: center;
}

/* --- Ілюстрація --- */
.topup__art {
    position: relative;
    display: flex; align-items: center; justify-content: center;
    min-height: 300px;
    padding: 20px 0 40px;
}
.topup__blob {
    position: absolute; z-index: 0;
    width: 92%; max-width: 400px; aspect-ratio: 1 / 1;
    background: radial-gradient(circle at 32% 30%, rgba(0, 191, 166, .34), rgba(0, 137, 123, .14) 54%, transparent 72%);
    border-radius: 48% 52% 55% 45% / 52% 44% 56% 48%;
}
.topup__card {
    position: relative; z-index: 1;
    width: min(360px, 100%); min-height: 214px;
    padding: 22px 24px;
    display: flex; flex-direction: column; justify-content: space-between;
    border-radius: 18px;
    background: linear-gradient(135deg, #0f766e 0%, #00897B 46%, #00BFA6 100%);
    color: #fff;
    box-shadow: 0 26px 50px rgba(0, 137, 123, .3);
    transform: rotate(-6deg);
    overflow: hidden;
    animation: topup-float 6s var(--ease) infinite;
}
/* Блік по діагоналі — без нього градієнт виглядає пласким прямокутником */
.topup__card::after {
    content: ''; position: absolute; inset: -40% -10% auto -30%;
    height: 140%;
    background: linear-gradient(100deg, rgba(255, 255, 255, .16) 0%, rgba(255, 255, 255, 0) 46%);
    pointer-events: none;
}
.topup__card-head { display: flex; align-items: center; justify-content: space-between; }
.topup__card-brand {
    font-family: var(--font-display);
    font-weight: 800; font-size: 1.02rem; letter-spacing: .04em;
}
.topup__card-brand i { font-style: normal; opacity: .55; margin: 0 2px; }
/* Іконка Wi-Fi повернута на 90° — так вона читається як символ безконтактної оплати */
.topup__card-nfc { transform: rotate(90deg); opacity: .8; font-size: 1rem; }
.topup__card-chip {
    width: 44px; height: 33px; border-radius: 6px;
    background: linear-gradient(135deg, #f7e3a1 0%, #d7a63f 100%);
    box-shadow: inset 0 0 0 1px rgba(0, 0, 0, .14);
}
.topup__card-num {
    display: flex; gap: 12px;
    font-size: 1.05rem; letter-spacing: .06em; opacity: .92;
}
.topup__card-foot { display: flex; flex-direction: column; gap: 2px; }
.topup__card-cap {
    font-size: .66rem; text-transform: uppercase; letter-spacing: .09em; opacity: .72;
}
.topup__card-ppk {
    font-family: var(--font-display);
    font-size: 1.24rem; font-weight: 700; letter-spacing: .12em;
}
.topup__receipt {
    position: absolute; z-index: 2;
    right: 0; bottom: 6px;
    display: flex; align-items: center; gap: 11px;
    padding: 11px 16px;
    background: var(--bg-card);
    border: 1px solid var(--bdc);
    border-radius: 14px;
    box-shadow: 0 14px 32px rgba(16, 24, 40, .13);
}
.topup__receipt-ico {
    width: 30px; height: 30px; flex: 0 0 auto;
    display: flex; align-items: center; justify-content: center;
    border-radius: 50%;
    background: rgba(34, 197, 94, .14); color: var(--success);
    font-size: .78rem;
}
.topup__receipt-text { display: flex; flex-direction: column; line-height: 1.3; }
.topup__receipt-text b { font-size: .84rem; color: var(--tt); }
.topup__receipt-text small { font-size: .76rem; color: var(--tt-fade); }

@keyframes topup-float {
    0%, 100% { transform: rotate(-6deg) translateY(0); }
    50%      { transform: rotate(-6deg) translateY(-9px); }
}
@media (prefers-reduced-motion: reduce) {
    .topup__card { animation: none; }
}

/* --- Текст і форма --- */
.topup__title {
    font-family: var(--font-display);
    font-size: clamp(1.7rem, 3.2vw, 2.45rem);
    line-height: 1.15;
    margin: 12px 0 12px;
    color: var(--tt);
}
.topup__lead { margin: 0; max-width: 54ch; color: var(--tt-secondary); line-height: 1.65; }

.topup-form {
    margin-top: 22px;
    padding: 18px;
    background: var(--bg-card);
    border: 1px solid var(--bdc);
    border-radius: var(--radius-lg);
    box-shadow: var(--bsh);
}
.topup-form__row {
    display: grid;
    grid-template-columns: minmax(0, 1.45fr) minmax(0, 1fr) auto;
    gap: 12px;
    align-items: end;
}
.topup-form__field {
    position: relative;
    display: flex; flex-direction: column; gap: 6px;
    min-width: 0;
}
.topup-form__label {
    font-size: .74rem; font-weight: 700;
    text-transform: uppercase; letter-spacing: .045em;
    color: var(--tt-secondary);
}
.topup-form__field input {
    width: 100%; height: 52px;
    padding: 0 14px;
    background: var(--ui-bg);
    border: 1px solid var(--bdc);
    border-radius: var(--radius);
    color: var(--tt);
    font-family: var(--font-body);
    font-size: 1rem;
    transition: border-color var(--speed) var(--ease), box-shadow var(--speed) var(--ease);
}
.topup-form__field input:focus {
    outline: none;
    border-color: var(--accent);
    box-shadow: 0 0 0 3px var(--accent-soft);
}
.topup-form__field--sum input { padding-right: 32px; }
/* Стрілки number-інпута тут лише заважають: суму вводять з клавіатури */
.topup-form__field--sum input::-webkit-outer-spin-button,
.topup-form__field--sum input::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
.topup-form__field--sum input { -moz-appearance: textfield; appearance: textfield; }
.topup-form__cur {
    position: absolute; right: 14px; bottom: 15px;
    color: var(--tt-fade); font-weight: 600; pointer-events: none;
}
.topup-form__submit {
    height: 52px;
    display: inline-flex; align-items: center; justify-content: center; gap: 8px;
    white-space: nowrap;
}

.topup-form__quick {
    display: flex; flex-wrap: wrap; align-items: center; gap: 8px;
    margin-top: 14px;
}
.topup-form__quick-cap { font-size: .82rem; color: var(--tt-fade); }
.topup-chip {
    padding: 6px 14px;
    background: var(--bg-light);
    border: 1px solid var(--bdc);
    border-radius: 100px;
    color: var(--tt-secondary);
    font-family: var(--font-body);
    font-size: .85rem; font-weight: 600;
    cursor: pointer;
    transition: all var(--speed) var(--ease);
}
.topup-chip:hover { border-color: var(--accent); color: var(--accent); }
.topup-chip.is-active { background: var(--accent); border-color: var(--accent); color: #fff; }

.topup-form__hint { margin: 12px 0 0; font-size: .82rem; line-height: 1.55; color: var(--tt-fade); }
.topup-form__hint i { color: var(--accent); margin-right: 3px; }
.topup-form__hint a { color: var(--accent); font-weight: 600; }

.topup-form__msg {
    margin-top: 12px; padding: 12px 14px;
    border: 1px solid transparent; border-radius: var(--radius);
    font-size: .88rem; line-height: 1.55;
}
.topup-form__msg[hidden] { display: none; }
.topup-form__msg--info  { background: #e8f2fe; color: #1c5fb0; border-color: #bcd8f7; }
.topup-form__msg--error { background: #fdecec; color: #b42323; border-color: #f6c6c6; }

.topup__perks {
    list-style: none; margin: 18px 0 0; padding: 0;
    display: flex; flex-wrap: wrap; gap: 8px 24px;
}
.topup__perks li {
    display: flex; align-items: center; gap: 8px;
    font-size: .86rem; font-weight: 500; color: var(--tt-secondary);
}
.topup__perks i { color: var(--accent); }

@media (max-width: 991px) {
    .topup__inner { grid-template-columns: 1fr; gap: 30px; }
    /* На вузькому екрані форма важливіша за декорацію — вона йде першою */
    .topup__body { order: 1; }
    .topup__art  { order: 2; min-height: 0; }
}
@media (max-width: 640px) {
    .topup-form__row { grid-template-columns: 1fr; }
    .topup-form__submit { width: 100%; }
    .topup__card { transform: none; animation: none; }
    .topup__receipt { position: static; margin: 20px auto 0; }
    .topup__art { flex-direction: column; padding-bottom: 0; }
}

/* --- Джерело цифри uptime на плитці статистики ---
   Публічний анкер RIPE Atlas — тому це посилання, а не підпис: цифру можна
   перевірити. Виглядати має як дрібний підпис під числом, а не як другий
   рядок заголовка, інакше плитка починає конкурувати сама з собою. */
.hero-stat__src {
    display: inline-block;
    margin-top: 6px;
    font-size: .68rem;
    letter-spacing: .04em;
    text-transform: uppercase;
    white-space: nowrap;
    opacity: .75;
    border-bottom: 1px dotted currentColor;
    transition: opacity var(--speed) var(--ease);
}
.hero-stat__src:hover { opacity: 1; }
.hero-video__stats .hero-stat__src { color: rgba(255, 255, 255, .85); }

@media (max-width: 992px) {
    /* Три плитки в ряд на телефоні — місця обмаль, тож підпис дрібніший.
       Ховати його не можна: саме він робить цифру перевірюваною. */
    .hero-stat__src { font-size: .58rem; margin-top: 4px; letter-spacing: 0; }
}

/* ===== Секція «Акції» на головній =====
   Джерело — категорія новин «Акції» з підкатегоріями (див. home.tpl).
   Картка свідомо НЕ копіює .card новин: акція має два власні маркери —
   аудиторію (нові/існуючі) і термін дії, — і саме вони роблять її акцією,
   а не ще однією новиною в потоці. */
.promo-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: var(--gap);
}

.promo-card {
    display: flex;
    flex-direction: column;
    background: var(--bg-card);
    border: 1px solid var(--bdc);
    border-radius: var(--radius-lg);
    overflow: hidden;
    transition: transform var(--speed) var(--ease), box-shadow var(--speed) var(--ease), border-color var(--speed) var(--ease);
}
.promo-card:hover {
    transform: translateY(-4px);
    border-color: var(--accent);
    box-shadow: 0 14px 32px rgba(16, 24, 40, .10);
}

/* --- Медіа-частина: обкладинка або фірмова плашка --- */
.promo-card__media {
    position: relative;
    display: block;
    aspect-ratio: 16 / 9;
    background: var(--bg-light);
    overflow: hidden;
}
.promo-card__media img {
    width: 100%; height: 100%;
    object-fit: cover;
    display: block;
    transition: transform var(--speed-slow) var(--ease);
}
.promo-card:hover .promo-card__media img { transform: scale(1.04); }

/* Заглушка замість обкладинки: без неї картка без картинки виглядала б
   обрізаною. Градієнт у кольорах бренду + велика іконка. */
.promo-card__ph {
    position: absolute; inset: 0;
    display: flex; align-items: center; justify-content: center;
    background: linear-gradient(135deg, var(--accent) 0%, var(--accent-hover) 100%);
    color: #fff;
    font-size: 2.6rem;
    opacity: .92;
}

/* Аудиторія акції = назва підкатегорії («Для нових абонентів») */
.promo-card__aud {
    position: absolute; top: 12px; left: 12px;
    padding: 5px 12px;
    border-radius: 100px;
    background: var(--glass-bg);
    backdrop-filter: blur(var(--glass-blur));
    border: 1px solid var(--glass-border);
    color: var(--tt);
    font-size: .74rem; font-weight: 700;
    letter-spacing: .01em;
    max-width: calc(100% - 24px);
    overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
}

.promo-card__body {
    display: flex; flex-direction: column;
    flex: 1;
    padding: 18px 20px 20px;
}

/* Термін дії — головний мотиватор акції, тому кольоровий і вище заголовка */
.promo-card__until {
    display: inline-flex; align-items: center; gap: 6px;
    align-self: flex-start;
    margin-bottom: 10px;
    padding: 4px 10px;
    border-radius: 100px;
    background: var(--ui-bg-attention);
    border: 1px solid var(--ui-bd-attention);
    color: #8a5300;
    font-size: .76rem; font-weight: 600;
}
.promo-card__until i { font-size: .72rem; }

.promo-card__title {
    margin: 0 0 8px;
    font-family: var(--font-display);
    font-size: 1.1rem; line-height: 1.3;
}
.promo-card__title a { color: var(--tt); }
.promo-card__title a:hover { color: var(--accent); }

.promo-card__text {
    margin: 0 0 16px;
    font-size: .88rem; line-height: 1.55;
    color: var(--tt-secondary);
    flex: 1;
}

.promo-card__btn { align-self: flex-start; }
.promo-card__btn i { transition: transform var(--speed) var(--ease); }
.promo-card:hover .promo-card__btn i { transform: translateX(4px); }

.promo__all { margin-top: 22px; text-align: center; font-size: .92rem; }
.promo__all a { font-weight: 600; color: var(--accent); }
.promo__all i { transition: transform var(--speed) var(--ease); }
.promo__all a:hover i { transform: translateX(4px); }

@media (max-width: 560px) {
    .promo-grid { grid-template-columns: 1fr; }
    .promo-card__ph { font-size: 2.1rem; }
    .promo-card__title { font-size: 1.02rem; }
}

/* ===== Випадайка «Дод. послуги» в шапці =====
   Без JS: на десктопі — hover/focus-within, у мобільному меню (де .header__nav
   і так вертикальна панель) підменю просто завжди розгорнуте. Одне правило
   менше — одна поломка менше, і на тач-екранах не треба ловити подвійний тап. */
.header__nav-item {
    position: relative;
    display: inline-flex;
    align-items: center;
}

/* Той самий вигляд, що й у звичайних пунктів: базові .header__nav a діють,
   тут лише стрілка. */
.header__nav-parent i {
    font-size: .62rem;
    margin-left: 5px;
    transition: transform var(--speed) var(--ease);
}
.header__nav-item:hover .header__nav-parent i,
.header__nav-item:focus-within .header__nav-parent i { transform: rotate(180deg); }

.header__sub {
    position: absolute;
    top: 100%;              /* без зазору — інакше курсор «губить» ховер по дорозі */
    left: 0;
    display: flex;
    flex-direction: column;
    min-width: 236px;
    padding: 6px;
    background: var(--bg-card);
    border: 1px solid var(--bdc);
    border-radius: var(--radius-lg);
    box-shadow: var(--ui-bsh);
    opacity: 0;
    visibility: hidden;
    transform: translateY(6px);
    transition: opacity var(--speed) var(--ease), transform var(--speed) var(--ease), visibility var(--speed);
    z-index: 120;
}
.header__nav-item:hover .header__sub,
.header__nav-item:focus-within .header__sub {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

/* Панель світла завжди — навіть коли шапка прозора поверх відео, тож колір
   тексту тут свій, а не успадкований від .header__nav a. */
.header__sub a,
.header__sub-soon {
    display: flex;
    align-items: center;
    gap: 9px;
    padding: 9px 12px;
    border-radius: var(--radius);
    font-size: .88rem;
    font-weight: 500;
    color: var(--tt) !important;
    white-space: nowrap;
}
.header__sub a:hover {
    background: var(--accent-soft);
    color: var(--accent) !important;
}
.header__sub i { width: 16px; text-align: center; color: var(--accent); font-size: .82rem; }

/* Ще не запущені послуги: видно, що вони будуть, але це не посилання. */
.header__sub-soon { color: var(--tt-fade) !important; cursor: default; }
.header__sub-soon i { color: var(--tt-fade); }
.header__sub-soon b {
    margin-left: auto;
    padding: 2px 8px;
    border-radius: 100px;
    background: var(--bg-light);
    color: var(--tt-fade);
    font-size: .66rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .04em;
}

@media (max-width: 992px) {
    /* У бічній панелі випадайка не потрібна: показуємо підменю списком. */
    .header__nav-item { display: block; width: 100%; }
    .header__nav-parent { display: block; }
    .header__sub {
        position: static;
        opacity: 1;
        visibility: visible;
        transform: none;
        min-width: 0;
        padding: 0 0 6px 14px;
        margin: 0;
        border: 0;
        border-left: 1px solid var(--bdc);
        border-radius: 0;
        box-shadow: none;
        background: none;
    }
    .header__sub a,
    .header__sub-soon { padding: 8px 10px; border-bottom: none; }
    .header__nav-item:hover .header__nav-parent i { transform: none; }
}

/* ===== Колір шапки на сторінках БЕЗ відео-героя =====
   Базові кольори (#cbd5e1 і напівпрозорі рамки) розраховані на прозору шапку
   поверх темного відео — а таке відео є лише на головній. На внутрішніх
   сторінках шапка біла з самого верху, і світло-сірий текст на ній виглядав
   вицвілим: меню, кошик і кнопка кабінету ледь читались.

   Клас .header--transparent тут не годиться як ознака: його ставить theme.js
   уже після завантаження, тож на головній був би помітний стрибок кольору.
   Тому спираємось на сам факт наявності героя в розмітці — це відомо одразу.
   Якщо браузер не знає :has() (Safari < 15.4, Firefox < 121), правило просто
   не застосується й лишиться сьогоднішня поведінка — гірше не стане. */
body:not(:has(.hero-video)) .header__nav a { color: var(--tt-secondary); }
body:not(:has(.hero-video)) .header__nav a:hover { color: var(--tt); }

body:not(:has(.hero-video)) .header__nav-parent { color: var(--tt-secondary); }
body:not(:has(.hero-video)) .header__nav-item:hover .header__nav-parent { color: var(--tt); }

body:not(:has(.hero-video)) .header__cart-icon,
body:not(:has(.hero-video)) .header__auth-btn {
    color: var(--tt-secondary);
    border-color: var(--bdc);
}
body:not(:has(.hero-video)) .header__cart-icon:hover,
body:not(:has(.hero-video)) .header__auth-btn:hover {
    color: var(--accent);
    border-color: var(--accent);
}

/* ===== ФУТЕР у стилі бойового euronet.com.ua =====
   Тло, текстура й компонування перенесені звідти; вміст — наш.
   Селектори свідомо однакової або вищої ваги за ті, що в styles.css:
   там футер уже описаний двічі (світлий і темний варіанти), і без цього
   старі правила перебивали б нові. */
.footer {
    background: #1A2841 url("/templates/euronet/assets/images/bg/bg-footer.png") center top / cover no-repeat;
    border-top: 0;
    color: #c3d0e4;
    padding: 0;
}

.footer__top {
    display: grid;
    grid-template-columns: minmax(260px, 1fr) minmax(280px, 1.2fr) auto;
    gap: 40px;
    align-items: start;
    padding: 60px 0 40px;
}

/* --- Бренд --- */
.footer__logo { display: inline-block; margin-bottom: 22px; }
.footer__logo-img { height: 42px; width: auto; }

.footer__contacts { display: flex; flex-direction: column; gap: 12px; }
.footer .footer__contact {
    display: flex;
    gap: 11px;
    margin: 0;
    font-size: .92rem;
    line-height: 1.55;
    color: #c3d0e4;
}
.footer .footer__contact i { color: #3BDDBA; margin-top: 4px; width: 16px; text-align: center; }
.footer .footer__contact a { color: #c3d0e4; transition: color var(--speed) var(--ease); }
.footer .footer__contact a:hover { color: #3BDDBA; }

.footer .footer__social { display: flex; gap: 10px; margin-top: 22px; }
.footer .footer__social a {
    width: 38px; height: 38px;
    display: flex; align-items: center; justify-content: center;
    border-radius: 50%;
    background: rgba(255, 255, 255, .08);
    border: 1px solid rgba(255, 255, 255, .14);
    color: #fff;
    font-size: .95rem;
    transition: all var(--speed) var(--ease);
}
.footer .footer__social a:hover { background: #3BDDBA; border-color: #3BDDBA; color: #10233d; }

/* --- Карта сайту --- */
.footer .footer__col-title {
    font-family: var(--font-display);
    font-size: 1.35rem;
    font-weight: 600;
    color: #fff;
    margin-bottom: 18px;
    text-transform: none;
    letter-spacing: 0;
}
.footer__nav { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px 28px; }
.footer__nav ul { list-style: none; margin: 0; padding: 0; }
.footer__nav li { margin: 0 0 9px; }
.footer__nav a {
    font-size: .92rem;
    color: #c3d0e4;
    transition: color var(--speed) var(--ease);
}
.footer__nav a:hover { color: #3BDDBA; }

/* --- Гаряча лінія --- */
.footer__hotline { display: flex; flex-direction: column; align-items: flex-end; text-align: right; }
.footer__hotline-cap {
    font-size: .82rem;
    letter-spacing: .06em;
    text-transform: uppercase;
    color: #83C1EF;
    margin-bottom: 6px;
}
.footer__hotline-num {
    font-family: var(--font-display);
    font-size: 1.85rem;
    font-weight: 700;
    color: #fff;
    line-height: 1.2;
    white-space: nowrap;
}
.footer__hotline-num span { color: #3BDDBA; }
.footer__hotline-num:hover { color: #3BDDBA; }
.footer__hotline-btn {
    margin-top: 24px;
    padding: 12px 30px;
    border-radius: 50px;
    background: #3BDDBA;
    color: #10233d;
    font-size: .82rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .05em;
    transition: all var(--speed) var(--ease);
}
.footer__hotline-btn:hover { background: #fff; color: #10233d; transform: translateY(-2px); }

/* --- Нижній рядок --- */
.footer .footer__bottom {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    flex-wrap: wrap;
    padding: 22px 0;
    border-top: 1px solid #283D62;
    font-size: .84rem;
    color: #8fa3c0;
}
.footer .footer__bottom a { color: #83C1EF; }
.footer .footer__bottom a:hover { color: #3BDDBA; }

/* Логотипи платіжних систем: без обгортки-посилання (раніше вели в «#»),
   тож приглушуємо самі картинки. */
.footer .footer__payments {
    display: flex; align-items: center; gap: 18px;
    padding: 0; border: 0;
}
.footer .footer__payments img {
    height: 24px; width: auto;
    opacity: .65;
    transition: opacity var(--speed) var(--ease);
}
.footer .footer__payments img:hover { opacity: 1; }

@media (max-width: 992px) {
    .footer__top {
        grid-template-columns: 1fr;
        gap: 34px;
        padding: 44px 0 30px;
    }
    .footer__hotline { align-items: flex-start; text-align: left; }
    .footer .footer__bottom { flex-direction: column; align-items: flex-start; }
}

@media (max-width: 560px) {
    .footer__nav { grid-template-columns: 1fr; gap: 0; }
    .footer__hotline-num { font-size: 1.6rem; }
    .footer .footer__payments { flex-wrap: wrap; gap: 14px; }
}

/* ===== Герой без відео =====
   Ролик тепер підвантажується вже після завантаження сторінки (і не
   вантажиться взагалі на телефонах та в режимі економії трафіку). Тому
   секція мусить виглядати закінченою САМА ПО СОБІ — інакше до появи відео
   (а на мобільному — завжди) під overlay зяяла б порожнеча.
   Градієнт у тонах overlay, тож поява відео не читається як стрибок. */
.hero-video {
    background: linear-gradient(135deg, #0a0e1a 0%, #12213a 45%, #0d2f3a 100%);
}
.hero-video__media { background: transparent; }

