/* Global IT Electro — unified visual theme */
:root {
  --git-navy: #102842;
  --git-blue: #284d8e;
  --git-accent: #5f97f3;
  --git-ink: #172d46;
  --git-muted: #52657b;
  --git-line: #dfe7ef;
  --git-soft: #f3f6fa;
  --git-shadow: 0 12px 36px rgba(16,40,66,.07);
}
body { font-family: 'Segoe UI', Arial, sans-serif; font-size: 16px; line-height: 1.8; color: var(--git-muted); background: #fff; }
h1,h2,h3,h4,h5,h6, .ttm-btn { font-family: 'Segoe UI', Arial, sans-serif; letter-spacing: -.025em; color: var(--git-ink); }
h1 { font-weight: 750; text-transform: none; }
h2 { font-weight: 700; line-height: 1.25; }
h3,h4,h5 { line-height: 1.4; }
p { text-align: justify; }
a { color: var(--git-blue); text-underline-offset: 4px; }
a:hover { color: #245ca2; }
::selection { background: #dceeff; color: #102842; }
.site-main { background: var(--git-soft); }
.site-main > .ttm-row { padding-top: 72px; padding-bottom: 72px; }
.site-main > .ttm-row:nth-of-type(even) { background-color: #fff; }
.site-main .col-lg-6a { background: #fff; border: 1px solid var(--git-line); border-radius: 20px; padding: clamp(24px,4vw,52px); box-shadow: var(--git-shadow); }
.title-header h5, .eyebrow { font-size: 12px; font-weight: 750; line-height: 1.6; letter-spacing: .13em; text-transform: uppercase; color: #5f97f3; }
.section-title h2.title { font-family: 'Segoe UI', Arial, sans-serif; font-weight: 750; letter-spacing: -.035em; }
.section-title h2.title span { color: var(--git-blue); }
.section-title.with-desc .title-header:after { background: var(--git-accent); width: 48px; height: 3px; border-radius: 4px; }
.ttm-topbar-wrapper { font-size: 11px; letter-spacing: .015em; }
header.ttm-header-style-01 .ttm-topbar-wrapper { background: var(--git-navy); }
.site-header-menu, .site-header-menu-inner { background: #fff; }
.site-header-menu-inner { box-shadow: 0 5px 24px rgba(16,40,66,.06); }
.site-branding img { max-width: 250px; }
#site-header-menu #site-navigation .menu ul li > a { font-family: 'Segoe UI', Arial, sans-serif; font-weight: 650; letter-spacing: 0; }
#site-header-menu #site-navigation .menu ul li.active > a { color: var(--git-blue); }
#site-header-menu #site-navigation .menu > ul ul { border-radius: 0 0 12px 12px; box-shadow: var(--git-shadow); border-color: var(--git-line); }
.ttm-page-title-row {
  background: radial-gradient(ellipse at 90% 0%,rgba(95,151,243,.22),transparent 55%),linear-gradient(120deg,#102842,#284d8e);
  padding: 62px 0;
  border-bottom: 4px solid var(--git-accent);
}
.ttm-page-title-row .title-box { padding: 0; }
.ttm-page-title-row h1.title { color: #fff; font-size: clamp(30px,4vw,48px); line-height: 1.2; font-weight: 750; letter-spacing: -.035em; }
.ttm-page-title-row .breadcrumb-wrapper, .ttm-page-title-row .breadcrumb-wrapper a { color: #d9e7f7; }
.ttm-btn { border-radius: 9px; font-size: 14px; font-weight: 700; letter-spacing: .01em; line-height: 1.5; padding: 13px 22px; transition: background-color .2s, box-shadow .2s, transform .2s; }
.ttm-btn.ttm-btn-bgcolor-skincolor, .ttm-btn.ttm-btn-bgcolor-darkgrey { background: var(--git-blue); color: #fff; border-color: var(--git-blue); box-shadow: 0 5px 14px rgba(40,77,142,.15); }
.ttm-btn.ttm-btn-bgcolor-skincolor:hover, .ttm-btn.ttm-btn-bgcolor-darkgrey:hover { background: var(--git-navy); border-color: var(--git-navy); color: #fff; transform: translateY(-2px); }
.ttm-btn.ttm-btn-style-border { border-width: 1px; }
.ttm-btn.ttm-btn-color-white { color: #fff; border-color: rgba(255,255,255,.55); }
.ttm-btn.ttm-btn-color-white:hover { background: #fff; color: var(--git-navy); }
.featured-imagebox { border-radius: 0px; }
.featured-imagebox .featured-thumbnail { overflow: hidden; border-radius: 16px 16px 0 0; }
.featured-imagebox .featured-content { background: #fff; border-radius: 0 0 16px 16px; }
.featured-imagebox-portfolio { overflow: hidden; box-shadow: var(--git-shadow); }
.featured-imagebox-portfolio .featured-content { border: 1px solid var(--git-line); }
.featured-imagebox-portfolio .featured-title h5 { font-size: 18px; font-weight: 700; }
.featured-imagebox img { object-fit: cover; }
.featured-icon-box.style1, .featured-icon-box.style2, .featured-icon-box.style3 { border-radius: 0px; }
.ttm-service-description, .ttm-service-description-security { color: var(--git-muted); }
.ttm-service-description h3, .ttm-service-description h4, .ttm-service-description-security h3 { margin-top: 28px; }
.security_raw { background: #fff; border: 1px solid var(--git-line); border-radius: 18px; box-shadow: var(--git-shadow); padding: 28px; }
.security { border-bottom: 1px solid var(--git-line); padding-bottom: 18px; margin-bottom: 24px; }
.menu_h { border-bottom: 2px solid var(--git-accent); color: var(--git-ink); }
.menu_security { background: #fff; border: 1px solid var(--git-line); border-radius: 14px; box-shadow: 0 4px 18px rgba(16,40,66,.04); transition: border-color .2s,box-shadow .2s; }
.menu_security:hover { border-color: var(--git-accent); box-shadow: var(--git-shadow); }
.menu_security .img-fluid { object-fit: contain; }
.sidebar .widget { border: 1px solid var(--git-line); border-radius: 14px; background: #fff; box-shadow: var(--git-shadow); }
.widget.widget-nav-menu ul li a { border-radius: 8px; }
.widget.widget-nav-menu ul li.active a { background: var(--git-blue); color: #fff; }
.domain-checker, .service-prices { background: #fff; border: 1px solid var(--git-line); border-radius: 18px; box-shadow: var(--git-shadow); }
.domain-checker__input { border-radius: 9px; border-color: #bdcbd9; }
.domain-checker__button { background: var(--git-blue); border-radius: 9px; }
.hosting_content, .service-prices { font-family: 'Segoe UI', Arial, sans-serif; color: var(--git-muted); }
.hosting_content_h3 { box-shadow: none; font-size: clamp(28px,3vw,38px); color: var(--git-ink); letter-spacing: -.035em; }
.hosting_packages { border: 0; background: transparent; box-shadow: none; gap: 14px; align-items: stretch; }
.content_hd, .content_hd:last-child { border: 1px solid var(--git-line); border-radius: 16px; box-shadow: var(--git-shadow); }
.content_hd.featured { border: 2px solid var(--git-blue); border-radius: 16px; }
.package_header { background: #edf3fa; }
.table-scroll { border: 1px solid var(--git-line); border-radius: 12px; background: #fff; }
.table-scroll .price-table { margin: 0; border-radius: 0; box-shadow: none; }
.price-table thead { background: var(--git-navy); }
.price-table th { font-weight: 650; font-size: 14px; }
.price-table td { color: var(--git-muted); font-size: 15px; }
.price-table td:last-child { color: var(--git-blue); }
.price-table tbody tr:nth-child(even) { background: #f5f8fb; }
.order-header { border-top: 4px solid var(--git-accent); }
.order-page { background: var(--git-soft); }
.order-title h1 { color: var(--git-navy); text-transform: none; letter-spacing: -.04em; }
.form-card { border: 1px solid var(--git-line); border-radius: 18px; box-shadow: var(--git-shadow); }
.form-card h2 { color: var(--git-ink); font-weight: 700; }
.form-card h2 > span { background: #eaf1fa; color: var(--git-blue); border-radius: 10px; }
.field input, .field textarea, .field select { border-radius: 9px; border-color: #bdcbd9; background: #fff; color: var(--git-ink); }
.field input:focus, .field textarea:focus, .field select:focus { border-color: var(--git-blue); box-shadow: 0 0 0 3px rgba(40,77,142,.12); }
.package-summary > div { border-radius: 10px; }
.package-summary .summary-total { background: var(--git-navy); }
.map-wrapper { border-radius: 16px; overflow: hidden; background: #fff; padding-bottom: 20px; }
.footer .first-footer { background: linear-gradient(110deg,#234778,#173350); border-top: 4px solid var(--git-accent); }
.footer .first-footer .ttm-row-wrapper-bg-layer { background: transparent; }
.footer .second-footer { background: #102438; color: #bdccdb; }
.footer .second-footer a, .footer .second-footer p, .footer .foot_text { color: #bdccdb; text-align: justify; font-size: 14px; }
.footer .second-footer h3, .footer .second-footer h5 { color: #fff; }
.footer .widget-title { font-size: 17px; text-transform: none; letter-spacing: 0; }
.footer .second-footer a:hover { color: #a5d2fa; }
.footer .quicklink-box { border: 1px solid #294056; border-radius: 12px; background: #162e45; box-shadow: none; }
.footer .bottom-footer-text { background: #0b1d2e; color: #aebfd1; font-size: 12px; border-top: 1px solid #233b51; }
.footer .bottom-footer-text a { color: #cbd8e6; }
#totop { border-radius: 10px; background: var(--git-blue); box-shadow: var(--git-shadow); }
@media (min-width: 1200px) {
  #site-header-menu #site-navigation .menu ul > li > a { font-size: 14px; }
  .site-branding img { max-height: 60px; }
}
@media (max-width: 1199px) {
  #site-header-menu #site-navigation .menu > ul { border: 1px solid var(--git-line); border-radius: 0 0 16px 16px; background: #fff; box-shadow: var(--git-shadow); }
  #site-header-menu #site-navigation .menu a { min-height: 44px; }
}
@media (max-width: 767px) {
  body { font-size: 15px; line-height: 1.75; }
  .site-main > .ttm-row { padding-top: 40px; padding-bottom: 40px; }
  .ttm-page-title-row { padding: 38px 0; }
  .site-main .col-lg-6a { border-radius: 14px; padding: 24px 18px; }
  .security_raw { padding: 20px 16px; }
  .hosting_packages { gap: 16px; }
  .site-branding img { max-width: min(230px,100%); }
  .footer .first-footer .footer-logo { margin-bottom: 20px; }
  .footer .first-footer .featured-icon-box { margin-top: 16px; margin-bottom: 16px; margin-left: 70px; margin-right: 70px;}
  .footer .widget-area { padding-top: 12px; padding-bottom: 12px; }
}
.section-title h2.title span, .title-desc, .title-desc p, .ttm-service-description p, .featured-desc p { font-family: 'Segoe UI', Arial, sans-serif; }
.section-title h2.title span { font-style: normal; }
.ttm-page-title-row { height: auto; min-height: 160px; display: flex; align-items: center; }
.ttm-page-title-row .title-box .title { margin: 0; }
.ttm-service-description { background: #fff; border: 1px solid var(--git-line); border-radius: 16px; padding: clamp(20px,3vw,36px); box-shadow: var(--git-shadow); margin-bottom: 28px; }
.ttm_single_image-wrapper > img { border-radius: 0px; }
@media (max-width: 767px) { .ttm-page-title-row { min-height: 130px; } }
.ttm-service-description > .ttm_single_image-wrapper:first-child { margin-bottom: 28px; }
.ttm-service-description > .ttm_single_image-wrapper:first-child img { display: block; width: 100%; height: auto; }
/* Contact page: same surfaces and spacing as the service pages. */
.contact-page .contact-details { padding: 0; }
.contact-page .contact-details > .row { row-gap: 24px; }
.contact-page .contact-details > .row > div { display: flex; }
.contact-page .featured-icon-box.style2 { display: flex; align-items: flex-start; gap: 18px; width: 100%; margin: 0; padding: 28px 22px; background: #fff; border: 1px solid var(--git-line); border-radius: 16px; box-shadow: var(--git-shadow); }
.contact-page .featured-icon-box.style2 .featured-icon { display: block; flex: 0 0 48px; position: static; padding: 0; }
.contact-page .featured-icon-box.style2 .featured-content { display: block; min-width: 0; padding: 0; }
.contact-page .featured-icon-box.style2 .ttm-icon { width: 48px; height: 48px; line-height: 48px; margin: 0; border-radius: 12px; background: #eaf2ff; color: #284d8e; }
.contact-page .featured-icon-box.style2 .ttm-icon i { font-size: 23px; color: #284d8e; }
.contact-page .featured-title h5 { font-size: 18px; margin: 0 0 8px; }
.contact-page .featured-desc p { font-size: 15px; line-height: 1.65; margin: 0; color: var(--git-muted); }
.contact-page .featured-desc a { color: var(--git-blue); font-weight: 600; }
.contact-page .map-section { padding-top: 0; padding-bottom: 72px; }
.contact-page .map-wrapper { border: 1px solid var(--git-line); box-shadow: var(--git-shadow); padding: 12px 12px 24px; border-radius: 18px; }
.contact-page .map-wrapper iframe { border-radius: 10px; }
@media (max-width: 991px) {
  .contact-page .contact-details > .row > div { width: 100%; }
}
@media (max-width: 767px) {
  .contact-page .featured-icon-box.style2 { padding: 24px 20px; }
  .contact-page .map-section { padding-top: 0; padding-bottom: 40px; }
  .contact-page .map-wrapper iframe { height: 320px; }
}
.contact-page .contact-details > .row { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 24px; margin: 0; }
.contact-page .contact-details > .row > div { width: auto; padding: 0; }
.contact-page .map-section > .container > .row { margin: 0; }
.contact-page .map-section > .container > .row > div { padding: 0; }
@media (max-width: 991px) { .contact-page .contact-details > .row { grid-template-columns: minmax(0,1fr); } }
/* Requested paragraph alignment. Higher specificity preserves it on mobile too. */
p,
.ttm-historybox-description,
.second-footer p,
.site-main p,
.site-main .featured-desc p,
.contact-page .featured-desc p,
.footer .second-footer p {
  text-align: justify;
}
/* Rounded Facebook button selected from the footer samples. */
.footer .social-icons .social-facebook > a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 50px;
  height: 50px;
  line-height: 1;
  border: 0;
  border-radius: 12px;
  background: #5f97f3;
  color: #102438;
  box-shadow: 0 5px 14px rgba(0,0,0,.12);
  transition: transform .2s, background-color .2s;
}
.footer .social-icons .social-facebook > a i { font-size: 28px; color: inherit; }
.footer .social-icons .social-facebook > a:hover { background: #8eb5f7; color: #102438; transform: translateY(-3px); }
.footer .social-icons .social-facebook > a:focus-visible { outline: 3px solid #fff; outline-offset: 4px; }
@media (prefers-reduced-motion: reduce) { .footer .social-icons .social-facebook > a { transition: none; } }
/* Service “Bővebben” links: filled button with white hover. */
.site-main a.ttm-btn.btn-inline.ttm-btn-color-skincolor {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 11px 18px;
  min-height: 44px;
  border: 1px solid #284d8e;
  border-radius: 9px;
  background: #284d8e;
  color: #fff;
  font-weight: 600;
  text-decoration: none;
  box-shadow: 0 4px 12px rgba(40,77,142,.12);
  transition: background-color .2s, color .2s, box-shadow .2s;
  width: 70%;
  
}
.site-main a.ttm-btn.btn-inline.ttm-btn-color-skincolor i { color: inherit; margin: 0; padding: 0; }
.site-main a.ttm-btn.btn-inline.ttm-btn-color-skincolor:hover,
.site-main a.ttm-btn.btn-inline.ttm-btn-color-skincolor:focus-visible {
  background: #fff;
  color: #284d8e;
  border-color: #284d8e;
  box-shadow: 0 6px 16px rgba(40,77,142,.16);
}
