/* MAX-IT: precision surfaces, architectural spacing and a cool light accent.
   Shared final layer for Polish and English. Photographs remain real assets. */
:root {
  --ink: #102e40;
  --muted: #526b7a;
  --line: #dbe6ec;
  --paper: #f3f7fa;
  --night: #071d2b;
  --cyan: #83e3f7;
  --surface-shadow: 0 16px 48px -24px #183c5845;
}
body { background: #fcfdff; }
main, footer { overflow-wrap: anywhere; }
::selection { background: #b3ecf8; color: #071d2b; }
button, input, textarea, select { font-family: inherit; }
.section { padding-block: clamp(64px,7.8vw,108px); }
h1, h2, h3, h4 { overflow-wrap: anywhere; }
h2 { font-size: clamp(2rem,3.5vw,3.125rem); line-height: 1.16; }
.eyebrow { font-weight: 750; letter-spacing: .12em; }
.button { min-height: 56px; border-radius: 12px; font-size: .9375rem; }
.text-link { min-height: 44px; }
.button, .front-service-card, .front-wifi, .hero-repair-preview, .hero-infrastructure-link {
  transition: background-color .2s ease, border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}

/* Quiet chrome leaves space for the identity and the content. */
.topline { background: #edf3f7; color: #456374; border-bottom: 1px solid #dfe9ef; }
header { background: #ffffffed; border-bottom-color: #d4e1eabb; box-shadow: 0 8px 28px -22px #183f60a0; backdrop-filter: blur(18px); }
nav > .nav-contact { border: 1px solid #143c52; border-radius: 10px; background: #102e40; box-shadow: 0 5px 14px #102e4015; }
.nav-group > summary > span { color: #4081a2; }
.nav-panel { border-radius: 18px; border-color: #d4e3ed; box-shadow: 0 24px 60px -20px #112f4850; }
.nav-panel a { border-radius: 10px; }
.nav-panel a:hover { background: #edf6fb; }
.menu-toggle { border-radius: 10px; }

/* Two complementary photographic surfaces make IT and repair visible together. */
.front-hero { display: block; background: radial-gradient(ellipse at 87% 12%,#12516766 0,transparent 53%),var(--night); }
.front-hero::after { display: none; }
.front-hero-inner { display: grid; grid-template-columns: minmax(0,1.18fr) minmax(0,1fr); gap: clamp(32px,4vw,60px); align-items: center; min-height: 680px; padding-block: 64px 86px; }
.front-hero-copy { width: 100%; max-width: none; padding-block: 12px; }
.front-hero .eyebrow { display: flex; align-items: center; gap: 14px; font-size: .75rem; margin-bottom: 28px; color: #a8d5e5; }
.front-hero .eyebrow::before { content: ''; width: 25px; height: 2px; background: #78d9ee; flex-shrink: 0; }
.front-hero h1 { font-size: clamp(2.75rem,4.5vw,4.125rem); line-height: 1.12; letter-spacing: -.055em; font-weight: 730; margin-bottom: 28px; }
.front-hero h1 em { color: #97e1f2; }
.front-hero-copy > p { max-width: 48ch; color: #bfced9; font-size: 1.0625rem; line-height: 1.85; }
.front-hero .actions { gap: 12px; margin-top: 32px; }
.front-hero .button.primary { min-height: 58px; background: #d7f5fc; border-color: #d7f5fc; color: #092a3d; box-shadow: 0 6px 28px #73d3ef12; }
.front-hero .button.primary:hover { background: #fff; border-color: #fff; box-shadow: 0 8px 34px #83dff12b; }
.front-hero .front-hero-secondary { min-height: 58px; border-color: #95b8cb66; background: #183a4b45; font-size: .9375rem; }
.front-hero .front-hero-secondary:hover { background: #1c465b; border-color: #baddeccc; }
.front-hero-visual { position: relative; display: grid; gap: 16px; min-width: 0; padding: 0; }
.hero-infrastructure-link { display: block; min-width: 0; border: 1px solid #b9dce8; border-radius: 24px; color: #102e40; background: #f5fafc; box-shadow: 0 22px 50px -24px #000c1e99; }
.hero-infrastructure { display: grid; min-width: 0; padding: 0; margin: 0; border-radius: inherit; overflow: hidden; }
.hero-infrastructure-media { display: block; min-width: 0; width: 100%; height: clamp(190px,19vw,240px); border-bottom: 3px solid #64c8e6; background: #102c3c; }
.hero-infrastructure-media img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: 68% 42%; }
.hero-infrastructure figcaption { display: grid; min-width: 0; gap: 10px; padding: 24px 28px 18px; background: #f5fafc; }
.hero-infrastructure-kicker { color: #336a87; font-size: .6875rem; font-weight: 750; letter-spacing: .13em; line-height: 1.5; }
.hero-infrastructure figcaption strong { display: block; max-width: 22ch; font-size: clamp(1.375rem,1.9vw,1.75rem); line-height: 1.28; letter-spacing: -.035em; color: #102e40; font-weight: 750; text-wrap: balance; }
.hero-infrastructure-action { display: flex; align-items: center; justify-content: space-between; gap: 16px; min-width: 0; min-height: 44px; margin-top: 4px; padding-top: 12px; border-top: 1px solid #cfdee7; color: #205e7e; font-size: .8125rem; font-weight: 700; line-height: 1.5; }
.hero-infrastructure-arrow { display: grid; place-items: center; flex: 0 0 32px; width: 32px; height: 32px; border-radius: 50%; background: #dceef6; color: #1d5775; font-size: 1.125rem; font-weight: 500; }
.front-hero .hero-infrastructure-link:focus-visible { outline: 3px solid #a8eafa; outline-offset: 6px; }
@media (hover:hover) {
  .hero-infrastructure-link:hover { transform: translateY(-2px); border-color: #a1e5f5; box-shadow: 0 26px 54px -22px #000c1eb3; }
  .hero-infrastructure-link:hover .hero-infrastructure-action { color: #0b3f5c; }
  .hero-infrastructure-link:hover .hero-infrastructure-arrow { background: #c8e7f3; }
}
.hero-repair-preview { position: relative; inset: auto; min-width: 0; display: grid; grid-template-columns: 106px minmax(0,1fr) 36px; gap: 20px; align-items: center; padding: 10px 18px 10px 10px; border: 1px solid #b7dce96b; border-radius: 18px; background: #f6fbfff5; color: #102f43; box-shadow: 0 16px 40px #02142266; backdrop-filter: blur(14px); }
.hero-repair-preview > picture { display: block; border-radius: 10px; overflow: hidden; }
.hero-repair-preview img { display: block; width: 100%; height: 86px; object-fit: cover; }
.hero-repair-copy { min-width: 0; display: grid; gap: 6px; }
.hero-repair-copy > strong { font-size: 1.125rem; font-weight: 750; letter-spacing: -.025em; line-height: 1.3; }
.hero-repair-copy > span { color: #536e7e; font-size: .8125rem; line-height: 1.5; }
.hero-repair-arrow { display: grid; place-items: center; width: 36px; height: 36px; border-radius: 50%; background: #e0eef5; color: #205b79; font-size: 1.25rem; }
.hero-repair-preview:hover { background: #fff; transform: translateY(-3px); }
.front-proof { background: #0d2a3b88; border-color: #a6d9ee25; backdrop-filter: none; }
.front-proof > .wrap { padding-block: 24px; gap: 20px; }
.front-proof p { font-size: .875rem; line-height: 1.65; }
.front-proof p + p { padding-left: 24px; border-left: 1px solid #b0d8e62e; }
.front-proof p > span { display: grid; }
.front-proof .ui-icon { width: 22px; height: 22px; color: #8bcedf; }
.front-proof strong { font-size: .875rem; font-weight: 650; }

/* Original brand marks on a calm, bright baseline. */
.technologies { background: #fff; border-bottom: 1px solid #e0e9ef; }
.tech-inner { padding-block: 24px; gap: 20px; }
.tech-inner > p { min-width: 0; padding-left: 15px; border-left: 2px solid #70b4d1; color: var(--muted); font-size: .875rem; font-weight: 500; line-height: 1.75; white-space: normal; }
.tech-inner > p > span { min-width: 0; font: inherit; color: inherit; }
.tech-names { grid-template-columns: repeat(8,minmax(0,1fr)); gap: 20px; }
.tech-names .brand-logo { min-height: 88px; padding: 4px 0; }
.tech-names .brand-logo img { width: var(--logo-width); height: auto; max-width: 100%; max-height: 76px; object-fit: contain; }
.tech-names .brand-microsoft-365 { --logo-width: 180px; }
.tech-names .brand-google-workspace { --logo-width: 160px; }
.tech-names .brand-eset { --logo-width: 112px; }
.tech-names .brand-mikrotik { --logo-width: 130px; }
.tech-names .brand-unifi { --logo-width: 72px; }
.tech-names .brand-cisco { --logo-width: 62px; }
.tech-names .brand-stormshield { --logo-width: 132px; flex-direction: column; gap: 6px; }
.tech-names .brand-stormshield img { max-height: none; }
.brand-partner-label { color: #285c78; font-size: .75rem; font-weight: 600; line-height: 1.25; text-align: center; }
.tech-names .brand-cencert { --logo-width: 108px; }

/* Measured depth, large pictograms and a consistent action corner. */
.front-services { background: #fbfdff; }
.front-services .section-heading { margin-bottom: 46px; }
.front-services .section-heading > p { max-width: 410px; padding-bottom: 4px; font-size: 1rem; line-height: 1.85; }
.front-service-grid { gap: 24px; }
.front-service-card { border-radius: 24px; border-color: #d4e3ed; box-shadow: var(--surface-shadow); overflow: hidden; }
.front-service-card:not(.front-service-project) { padding: 40px; }
.front-service-primary { background: radial-gradient(ellipse at 100% 0%,#24688269,transparent 65%),#0b293b; border-color: #2e566d; }
.front-service-top { margin-bottom: 35px; }
.front-service-top > .ui-icon { width: 56px; height: 56px; padding: 13px; border: 1px solid #bfd9e7; border-radius: 15px; background: #eaf4fa; color: #246380; }
.front-service-primary .front-service-top > .ui-icon { background: #b7eafa0c; border-color: #a9dcee33; color: #a5e4f5; box-shadow: inset 0 1px #d7f5ff0d; }
.front-service-top > span { font-family: ui-monospace,SFMono-Regular,Consolas,monospace; letter-spacing: .08em; font-size: .8125rem; }
.front-service-card:not(.front-service-project) h3 { font-size: clamp(2rem,3.1vw,2.75rem); margin-top: 14px; margin-bottom: 22px; line-height: 1.2; }
.front-service-card > p { margin-bottom: 34px; }
.front-service-repair { background: radial-gradient(ellipse at 100% 0%,#cfebf966,transparent 65%),#fff; }
.front-service-link { padding-top: 23px; }
.front-service-link > span { display: grid; place-items: center; flex: 0 0 38px; height: 38px; border-radius: 50%; background: #e3eff6; font-size: 1.25rem; }
.front-service-primary .front-service-link > span { background: #c5eaf915; color: #caf1fc; }
.front-service-primary:hover { background: radial-gradient(ellipse at 100% 0%,#28789570,transparent 65%),#0c2e43; border-color: #5a93af; }
.front-service-repair:hover { background: #f6fbff; }
.front-service-project { background: #fff; padding: 30px 34px; box-shadow: 0 8px 22px -20px #24465c4a; }
.front-service-project .front-service-link { max-width: 260px; }
.front-service-project .front-service-top > .ui-icon { width: 52px; height: 52px; }
.front-wifi { border-radius: 20px; background: #edf6fb; border-color: #d5e8f1; padding: 27px 34px; }
.front-wifi-icon { border: 1px solid #c9e2ee; background: #fff; border-radius: 13px; }
.front-wifi-link > span { display: grid; place-items: center; height: 36px; width: 36px; border: 1px solid #c2dbe8; border-radius: 50%; }
@media (hover:hover) {
  .front-service-card:hover { transform: translateY(-4px); box-shadow: 0 25px 55px -26px #19496b50; }
  .front-service-project:hover, .front-wifi:hover { transform: translateY(-2px); }
}

/* The workshop is tangible; adjacent content stays clean and easy to scan. */
.front-repair { background: #eef4f8; border-block: 1px solid #dde7ee; }
.front-repair-image { border-radius: 24px; border: 1px solid #afc6d2; box-shadow: 0 22px 48px -25px #122d4470; }
.front-repair-image img { height: 525px; }
.front-photo-caption { padding: 60px 30px 27px; font-size: .75rem; letter-spacing: .13em; background: linear-gradient(transparent,#071d2be6); }
.front-repair-copy h2 { font-size: clamp(2rem,3.4vw,3rem); }
.front-repair-scope { margin-block: 28px 20px; }
.front-repair-scope li { align-items: center; gap: 16px; padding-block: 15px; }
.front-repair-scope .ui-icon { width: 38px; height: 38px; padding: 8px; margin: 0; border-radius: 10px; background: #fff; border: 1px solid #d4e3ec; flex-shrink: 0; }
.front-offer { background: #fff; }
.front-offer .choice-grid { gap: 22px; }
.front-offer .choice-grid article, .front-offer .choice-grid article:last-child { padding: 30px; border: 1px solid #dce6ed; border-radius: 20px; background: #f8fbfd; box-shadow: 0 4px 14px -12px #24465c4a; }
.front-offer .offer-icon { width: 50px; height: 50px; padding: 12px; border-radius: 13px; border: 1px solid #c9dfe9; background: #fff; margin-bottom: 24px; }
.front-offer .offer-icon > .ui-icon { width: 26px; height: 26px; }
.front-offer .offer-choices h3 { font-size: 1.3125rem; line-height: 1.4; }
.front-offer .offer-choices p { font-size: .9375rem; }
.front-offer .offer-choices a { font-size: .875rem; }
.homepage .about-section { background: radial-gradient(ellipse at 0% 70%,#17425c7a,transparent 62%),#0a2536; }
.homepage .person-photo { border-radius: 24px; border-color: #afcede42; box-shadow: 0 24px 56px -24px #000c1e99; }
.homepage .person-photo figcaption { background: #0c2434; }
.homepage .founder-copy h2 { font-size: clamp(2rem,3.4vw,3rem); }
.homepage .founder-quote { margin-block: 28px; border-left-width: 2px; }
.homepage .founder-copy .button.dark { background: #d7f5fc; color: #102e40; }
.homepage .area-section { background: #edf4f8; padding-block: 68px; border-block: 1px solid #dce7ef; }
.faq-list details { transition: border-color .2s; }
.faq-list summary > span { width: 32px; height: 32px; border: 1px solid #d2e4ee; border-radius: 50%; background: #edf6fb; flex-shrink: 0; }
.faq-list details[open] { border-color: #72a8c6; }

/* Shared page openings: a dark overview within a bright, precise composition. */
.subhero.service-opening { padding-block: 30px 70px; background: radial-gradient(ellipse at 95% 15%,#ddf0f977,transparent 58%),#f3f7fb; border-bottom-color: #d7e5ee; }
.service-opening .breadcrumb { font-size: .8125rem; margin-bottom: 44px; }
.service-opening .subhero-grid { gap: clamp(36px,6vw,86px); }
.service-opening h1 { font-size: clamp(2.5rem,4.3vw,4.1rem); font-weight: 730; letter-spacing: -.05em; line-height: 1.12; }
.service-opening .eyebrow { color: #28779b; }
.service-opening .service-aside.service-overview { padding: 32px; background: radial-gradient(ellipse at 100% 0%,#20516c66,transparent 65%),#0b293c; border: 1px solid #40637a; border-radius: 24px; box-shadow: 0 22px 50px -22px #143a5c55; }
.service-opening .service-aside.service-overview > .overview-photo { margin: -32px -32px 28px; border-radius: 23px 23px 0 0; border-bottom: 1px solid #99bdd531; }
.service-opening .icon-tile-large { width: 58px; height: 58px; border: 1px solid #9ccee33d; border-radius: 15px; background: #c4eeff0a; }
.service-opening .icon-tile-large .ui-icon { width: 30px; height: 30px; }
.service-opening .service-aside .hero-scope { margin-top: 16px; }
.service-opening .service-aside .aside-contact { font-size: 1.625rem; }
.service-assurances { padding-top: 22px; border-top: 1px solid #d6e3ec; }
.service-index { background: #fff; box-shadow: 0 8px 24px -20px #25476140; }
.service-index > .wrap { padding-block: 16px; }
.service-index a { border-radius: 7px; padding-inline: 9px; }
.service-index a:hover { background: #eef7fc; }
.service-index ~ .scope-section .detail-grid { column-gap: 52px; }
.service-index ~ .scope-section .detail-grid article { padding-block: 32px; }
.service-index ~ .scope-section .detail-top .icon-tile { border: 1px solid #cbdfea; background: #f0f8fc; border-radius: 12px; }
.service-index ~ .process-section { background: #edf4f8; padding-block: 70px; }
.process-section .steps-list { gap: 22px; }
.process-section .steps-list li { padding: 26px; border: 1px solid #d4e1eb; border-radius: 18px; background: #fcfdff; box-shadow: 0 6px 14px -14px #24465c70; }
.process-section .step-top { margin-bottom: 28px; }
.process-section .step-index { font-family: ui-monospace,SFMono-Regular,Consolas,monospace; font-size: 1.125rem; color: #527a91; }
.process-section .step-top .icon-tile { border: 1px solid #d3e3ed; background: #edf6fb; border-radius: 12px; }
.cooperation-section .offer-choices article { border-radius: 22px; background: #f5f9fc; box-shadow: var(--surface-shadow); }
.cooperation-section .offer-choices article:first-child { background: radial-gradient(ellipse at 100% 0%,#24688269,transparent 65%),#0b293b; border-color: #2e566d; }
.cooperation-section .offer-choices article > .icon-tile { border-radius: 13px; }
.business, .support-section { background: radial-gradient(ellipse at 100% 0%,#20516c66,transparent 65%),#0c293b; }
.sector-links .link-icon { border-radius: 13px; }
.related-grid > a { background: #fff; border-radius: 13px; padding-block: 22px; box-shadow: 0 4px 14px -14px #24465c70; }
.scope-note { border-radius: 0 16px 16px 0; }

/* Trust, contact and the closing statement feel like part of one system. */
.reviews-snapshot { border-radius: 26px; border-color: #bdcfde; background: #fff; box-shadow: 0 18px 50px -30px #143b5e55; }
.reviews-score { background: radial-gradient(ellipse at 0% 0%,#275b7277,transparent 80%),#0a293b; padding-block: 44px; }
.reviews-score::after { display: none; }
.reviews-summary { padding: clamp(32px,4.3vw,58px); }
.reviews-summary h3 { color: #102e40; }
.reviews-summary p { color: #526b7a; }
.reviews-link.button.primary { color: #fff; background: #12394f; box-shadow: 0 8px 20px #163c5119; }
.reviews-link > span { background: #d6efff15; color: #d9f2ff; }
.reviews-link.button.primary:hover { background: #1a4b65; }
.contact-compact { background: #fcfdff; padding-block: 64px 84px; }
.contact-compact .compact-contact-grid { padding: clamp(30px,4.8vw,66px); border-radius: 26px; border-color: #31566c; background: radial-gradient(ellipse at 92% 0%,#265f7960,transparent 67%),#082639; box-shadow: 0 26px 60px -28px #1434506b; }
.contact-compact h2 { font-size: clamp(2rem,3.75vw,3.3rem); font-weight: 700; }
.contact-compact .contact-link { background: #d9f4fc; border-radius: 12px; }
.contact-compact .compact-contact-details .contact-channel { background: #d6f0ff07; border-color: #b3d9ed35; border-radius: 16px; box-shadow: inset 0 1px #d7efff07; }
.contact-channel-icon { background: #b5e7ff0e; border-color: #b3def12e; }
.contact-person { background: radial-gradient(ellipse at 100% 0%,#d8edf977,transparent 65%),#f4f8fb; }
.contact-person .person-photo { border-radius: 24px; border-color: #bed1de; box-shadow: 0 24px 54px -26px #143d5c66; }
.contact-person h1 { color: #102e40; letter-spacing: -.055em; }
.enquiry-form { border-radius: 24px; box-shadow: 0 16px 48px -30px #143d5c4a; }
.enquiry-form input:not([type=checkbox]):not([type=hidden]), .enquiry-form select, .enquiry-form textarea { border-radius: 10px; border-color: #bbcfdd; background: #fff; }
.enquiry-form input:focus-visible, .enquiry-form select:focus-visible, .enquiry-form textarea:focus-visible { outline: 3px solid #51acd352; outline-offset: 2px; border-color: #357b9f; }
.location-building, .map-frame, .service-request-frame { border-radius: 22px; }
footer { padding-top: 64px; background: radial-gradient(ellipse at 0% 0%,#1b415966,transparent 60%),#071d2b; border-top: 1px solid #335268; }
.footer-top { padding-bottom: 42px; }
.footer-tagline { font-size: clamp(2rem,3.4vw,3.125rem); gap: .3em; font-weight: 650; letter-spacing: -.045em; line-height: 1.2; }
.footer-tagline-dot { color: #8ad4ec; }
.footer-tagline-part { min-width: 0; max-width: 100%; white-space: normal; }
.footer-top > a:last-child { border: 1px solid #a6cad532; padding: 12px 17px; border-radius: 10px; }
.footer-links { padding-block: 38px 44px; border-color: #c3e0ec24; }
.footer-links span { color: #93bbd0; }
.footer-links a { color: #c8d8e3; }
.footer-links a:hover { color: #fff; }

@media (max-width:1180px) {
  .tech-names { grid-template-columns: repeat(4,minmax(0,1fr)); gap: 8px 24px; }
  .front-hero-inner { grid-template-columns: minmax(0,1.18fr) minmax(0,1fr); gap: 30px; min-height: 630px; padding-block: 56px 68px; }
  .front-hero h1 { font-size: clamp(2.5rem,4.8vw,3.5rem); }
  .front-hero-visual { padding: 0; }
  .hero-infrastructure figcaption { padding-inline: 24px; }
  .hero-repair-preview { grid-template-columns: 82px minmax(0,1fr) 30px; gap: 14px; padding-right: 14px; }
  .hero-repair-preview img { height: 82px; }
  .hero-repair-copy > strong { font-size: 1rem; }
  .hero-repair-copy > span { font-size: .75rem; }
  .hero-repair-arrow { height: 30px; width: 30px; }
  .front-proof > .wrap { gap: 20px 30px; }
  .front-proof p:nth-child(3) { padding-left: 0; border: 0; }
  .front-proof p > span { display: inline; }
  .front-service-card:not(.front-service-project) { padding: 32px; }
  .front-offer .choice-grid article, .front-offer .choice-grid article:last-child { padding: 26px; }
}
@media (max-width:950px) {
  .front-hero h1 { font-size: 2.65rem; }
  .front-hero-copy > p { font-size: 1rem; }
  .front-hero .actions { flex-direction: column; align-items: flex-start; }
  .front-hero .actions .button { min-width: 240px; }
  .hero-repair-preview { grid-template-columns: 66px minmax(0,1fr); gap: 12px; padding: 10px; }
  .hero-repair-preview img { height: 74px; }
  .hero-repair-arrow { display: none; }
  .front-service-card:not(.front-service-project) h3 { font-size: 2.125rem; }
  .front-service-project .front-service-link { max-width: none; }
  .front-repair-image img { height: 475px; }
  .service-opening h1 { font-size: 2.9rem; }
}
@media (max-width:800px) {
  .section { padding-block: 64px; }
  .front-hero-inner { grid-template-columns: minmax(0,1fr); min-height: 0; gap: 34px; padding-block: 40px 52px; }
  .front-hero-copy { padding: 0; max-width: 650px; }
  .front-hero h1 { font-size: clamp(2rem,6.2vw,3.75rem); margin-bottom: 24px; }
  .front-hero .eyebrow { font-size: .75rem; gap: 10px; margin-bottom: 24px; }
  .front-hero .eyebrow::before { width: 20px; }
  .front-hero-copy > p { max-width: 58ch; }
  .front-hero .actions { flex-direction: row; gap: 12px; margin-top: 28px; }
  .front-hero .actions .button { min-width: 0; width: auto; }
  .front-hero-visual { width: 100%; gap: 14px; padding: 0; }
  .hero-infrastructure-link { border-radius: 22px; }
  .hero-infrastructure-media { height: clamp(156px,44vw,240px); }
  .hero-infrastructure-media img { object-position: 68% 42%; }
  .hero-infrastructure figcaption { padding: 22px 24px 16px; }
  .hero-infrastructure figcaption strong { font-size: 1.5rem; }
  .hero-repair-preview { grid-template-columns: 88px minmax(0,1fr) 36px; gap: 16px; padding: 10px 16px 10px 10px; }
  .hero-repair-preview img { height: 72px; }
  .hero-repair-copy > strong { font-size: 1.0625rem; }
  .hero-repair-copy > span { font-size: .8125rem; }
  .hero-repair-arrow { display: grid; width: 36px; height: 36px; }
  .front-proof > .wrap { padding-block: 24px; gap: 18px 28px; }
  .front-proof p > span { display: grid; }
  .front-proof p + p { padding-left: 0; border: 0; }
  .tech-inner { gap: 14px; padding-block: 22px; }
  .tech-names { gap: 6px 20px; }
  .front-services .section-heading { margin-bottom: 32px; }
  .front-services .section-heading > p { max-width: 56ch; }
  .front-service-grid { gap: 18px; }
  .front-service-card:not(.front-service-project) { padding: 28px; }
  .front-service-card:not(.front-service-project) h3 { font-size: 1.9rem; }
  .front-service-top { margin-bottom: 28px; }
  .front-service-top > .ui-icon { width: 50px; height: 50px; padding: 11px; }
  .front-service-project { padding: 26px; }
  .front-wifi { padding: 25px; border-radius: 18px; }
  .front-repair-image img { height: auto; aspect-ratio: 1.4; }
  .front-repair-grid { gap: 34px; }
  .front-offer .choice-grid { grid-template-columns: 1fr; gap: 18px; }
  .front-offer .offer-choices p { max-width: 65ch; font-size: 1rem; }
  .front-offer .offer-choices a { font-size: .9375rem; }
  .front-offer .choice-grid article, .front-offer .choice-grid article:last-child { padding: 28px; }
  .homepage .about-section { padding-block: 64px; }
  .homepage .area-section { padding-block: 56px; }
  .subhero.service-opening { padding-block: 24px 46px; }
  .service-opening h1 { font-size: clamp(2rem,6.5vw,3rem); }
  .service-opening .breadcrumb { margin-bottom: 30px; }
  .service-opening .subhero-grid { gap: 34px; }
  .service-opening .service-aside.service-overview { padding: 28px; border-radius: 20px; }
  .service-opening .service-aside.service-overview > .overview-photo { margin: -28px -28px 24px; border-radius: 19px 19px 0 0; }
  .service-assurances { margin-top: 24px; }
  .service-index > .wrap { gap: 5px 12px; padding-block: 15px; }
  .service-index > .wrap > span { padding-left: 9px; }
  .service-index ~ .scope-section .detail-grid article { padding-block: 27px; }
  .service-index ~ .process-section { padding-block: 60px; }
  .process-section .steps-list li { padding: 26px; }
  .reviews-snapshot { border-radius: 22px; }
  .contact-compact { padding-block: 48px 60px; }
  .contact-compact .compact-contact-grid { padding: 36px 30px; border-radius: 22px; }
  .contact-compact h2 { font-size: 2.5rem; }
  .footer-top { align-items: flex-start; }
  .footer-identity { width: 100%; }
  .footer-tagline { font-size: 2.5rem; }
  footer { padding-top: 48px; }
}
@media (max-width:600px) {
  .tech-inner { gap: 12px; padding-block: 20px; }
  .tech-inner > p { gap: 0 4px; padding-left: 12px; }
  .tech-names { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 4px 20px; }
  .tech-names .brand-logo { min-height: 60px; padding: 2px 0; }
  .tech-names .brand-logo img { max-height: 56px; }
  .tech-names .brand-microsoft-365 { --logo-width: 146px; }
  .tech-names .brand-google-workspace { --logo-width: 126px; }
  .tech-names .brand-eset { --logo-width: 92px; }
  .tech-names .brand-mikrotik { --logo-width: 112px; }
  .tech-names .brand-unifi { --logo-width: 62px; }
  .tech-names .brand-cisco { --logo-width: 50px; }
  .tech-names .brand-stormshield { --logo-width: 98px; gap: 5px; }
  .tech-names .brand-stormshield img { max-height: none; }
  .tech-names .brand-cencert { --logo-width: 96px; }
  .nav .brand { flex: 0 1 auto; min-width: 0; }
  .nav .brand img { max-width: 100%; }
  .front-hero h1 { font-size: clamp(1.7rem,7.5vw,2.8rem); }
  .front-hero .actions { flex-direction: column; }
  .front-hero .actions .button { width: 100%; padding-inline: 20px; }
  .hero-infrastructure figcaption { padding: 20px 22px 16px; gap: 8px; }
  .hero-repair-preview { grid-template-columns: 74px minmax(0,1fr) 30px; gap: 12px; padding-right: 12px; }
  .hero-repair-preview img { height: 66px; }
  .hero-repair-copy > strong { font-size: 1rem; }
  .hero-repair-copy > span { font-size: .8125rem; }
  .hero-repair-arrow { width: 30px; height: 30px; }
  .front-proof > .wrap { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 20px 16px; }
  .front-proof p { align-items: flex-start; gap: 9px; font-size: .875rem; }
  .front-proof .ui-icon { width: 18px; height: 18px; margin-top: 3px; }
  .front-proof strong { font-size: .875rem; }
  .front-service-card { border-radius: 20px; }
  .front-service-card:not(.front-service-project) h3 { font-size: 2rem; }
  .front-service-card > p { margin-bottom: 28px; }
  .front-service-link { gap: 14px; }
  .front-wifi { gap: 16px; }
  .front-wifi-link { margin: 4px 0 0; width: 100%; }
  .front-wifi h3 { font-size: 1.0625rem; }
  .front-repair-image { border-radius: 20px; }
  .front-photo-caption { padding: 38px 20px 20px; font-size: .75rem; }
  .front-offer .choice-grid article, .front-offer .choice-grid article:last-child { padding: 26px; }
  .reviews-score { padding: 26px 24px; }
  .reviews-summary { padding: 30px 24px; }
  .reviews-summary h3 { font-size: 1.75rem; }
  .reviews-link.button.primary { font-size: .8125rem; gap: 12px; }
  .contact-compact .compact-contact-grid { padding: 32px 24px; }
  .contact-compact h2 { font-size: clamp(1.875rem,7.5vw,2.3rem); }
  .footer-tagline { flex-direction: column; gap: .12em; font-size: clamp(2rem,8vw,2.75rem); }
  .footer-top { align-items: flex-start; padding-bottom: 32px; }
  .footer-top > a:last-child { min-height: 44px; padding: 10px 14px; font-size: .875rem; }
}
@media (max-width:360px) {
  .hero-infrastructure figcaption { padding-inline: 18px; }
  .hero-infrastructure figcaption strong { font-size: 1.375rem; }
  .hero-repair-preview { grid-template-columns: 65px minmax(0,1fr); gap: 12px; }
  .hero-repair-arrow { display: none; }
  .hero-repair-copy > span { font-size: .8125rem; }
  .front-service-card:not(.front-service-project) { padding: 24px; }
  .front-service-card:not(.front-service-project) h3 { font-size: 1.75rem; }
  .front-proof p { gap: 8px; }
  .front-proof .ui-icon { width: 16px; height: 16px; }
}
@media (prefers-reduced-motion:reduce) {
  .button, .front-service-card, .front-wifi, .hero-repair-preview, .hero-infrastructure-link, .faq-list details { transition: none; }
  .front-service-card:hover, .front-wifi:hover, .hero-repair-preview:hover, .hero-infrastructure-link:hover, .button:hover { transform: none; }
}

/* Remote assistance: immediate download links with no third-party embeds. */
.remote-downloads{grid-column:1/-1;padding-top:36px;border-top:1px solid #ffffff24;scroll-margin-top:130px;min-width:0}
.remote-heading{min-width:0;margin-bottom:24px}
.remote-heading h3{margin:10px 0 12px;font-size:clamp(1.6rem,3vw,2.1rem);line-height:1.25;letter-spacing:-.025em;color:#fff}
.remote-heading p{margin:0;color:#cee0eb;font-size:1rem;line-height:1.7;text-wrap:pretty}
.remote-platforms{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.remote-platform{min-width:0;border:1px solid #426076;border-radius:16px;padding:24px;background:#ffffff06}
.remote-platform-heading{display:flex;align-items:center;gap:12px;margin-bottom:20px;color:#acdff7}
.remote-platform-heading .ui-icon{width:28px;height:28px;flex-shrink:0}
.remote-platform-heading h4{margin:0;font-size:1.125rem;line-height:1.4;color:#fff}
.remote-download{display:flex;align-items:center;justify-content:center;gap:10px;min-height:48px;width:100%;max-width:100%;padding:12px 14px;border:1px solid #80c3e4;border-radius:10px;background:#ddf3fe;color:#164c6a;font:700 .875rem/1.4 Manrope,Arial,sans-serif;text-align:center;text-decoration:none}
.remote-download:hover{background:#fff;color:#164c6a}
.remote-download:focus-visible{outline:3px solid #a3dfff;outline-offset:4px}
.remote-download>span[aria-hidden]{font-size:1.125rem;flex-shrink:0}
@media(max-width:800px){.remote-platforms{grid-template-columns:1fr}.remote-platform{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px}.remote-platform-heading{margin:0}.remote-download{width:auto;min-width:200px;flex-shrink:0}.remote-downloads{scroll-margin-top:112px;padding-top:28px}}
@media(max-width:520px){.remote-platform{display:block;padding:20px}.remote-platform-heading{margin-bottom:16px}.remote-download{width:100%;min-width:0}}
