/*
Theme Name: ORNBYTE
Theme URI: https://ornbyte.pl
Author: ORNBYTE sp. z o.o.
Description: Custom company landing page for ORNBYTE.
Version: 1.0.0
Text Domain: ornbyte
*/

:root { --ink: #20212b; --paper: #f8f7f4; --violet: #6646cf; --line: #d9d8d4; --muted: #73737d; }
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { background: var(--paper); color: var(--ink); font-family: 'Montserrat', sans-serif; line-height: 1.55; margin: 0; overflow-x: hidden; }
a { color: inherit; text-decoration: none; transition: color .2s ease, background-color .2s ease; }
.landing-container { margin: 0 auto; max-width: 1280px; padding: 0 40px; }
.landing-header { background: rgba(248, 247, 244, .94); box-shadow: 0 8px 24px rgba(32, 33, 43, .12); padding: 24px 0; position: fixed; top: 0; width: 100%; z-index: 20; }
.landing-nav, .landing-brand, .landing-links, .landing-footer .landing-container { align-items: center; display: flex; }
.landing-nav { justify-content: space-between; }
.landing-brand img { display: block; height: 38px; object-fit: contain; width: auto; }
.landing-links { gap: 32px; font-size: 14px; font-weight: 600; }
.landing-links > a:not(.landing-contact-link):hover, .landing-footer a:hover { color: var(--violet); }
.landing-contact-link { border: 1px solid var(--ink); border-radius: 50px; padding: 9px 15px 9px 18px; }
.landing-contact-link b { color: var(--violet); font-size: 18px; margin-left: 6px; }
.landing-menu { background: none; border: 0; cursor: pointer; display: none; }
.landing-menu span { display: block; }
.landing-hero { background: var(--ink); color: var(--paper); min-height: 690px; overflow: hidden; padding: 165px 0 85px; }
.landing-hero-grid { align-items: center; display: grid; grid-template-columns: 1.08fr .92fr; }
.landing-eyebrow, .landing-label { color: var(--muted); font-family: monospace; font-size: 11px; letter-spacing: .08em; margin: 0; }
.landing-eyebrow { color: #bdbdc5; display: flex; gap: 10px; align-items: center; }
.landing-eyebrow i { background: var(--violet); border-radius: 100%; display: inline-block; height: 8px; width: 8px; }
.landing-hero h1, .landing-section h2 { font-size: clamp(42px, 5vw, 70px); letter-spacing: -.06em; line-height: .98; margin: 26px 0; }
.landing-hero h1 { color: var(--paper); max-width: 700px; }
h1 em, h2 em { color: var(--violet); font-style: normal; }
.landing-lead { color: #d0cfd7; font-size: 18px; margin: 0; max-width: 590px; }
.landing-button { background: var(--paper); color: var(--ink); display: inline-flex; font-size: 14px; font-weight: 700; gap: 26px; margin-top: 38px; padding: 15px 20px; }
.landing-button:hover { background: var(--violet); color: #fff; }
.landing-art { height: 400px; overflow: visible; position: relative; }
.landing-transition { height: 100%; position: relative; }
.landing-system { border: 1px solid; box-shadow: 18px 22px 44px rgba(0, 0, 0, .25); overflow: hidden; position: absolute; width: min(310px, 72%); }
.landing-system-bar { align-items: center; display: flex; font: 10px monospace; justify-content: space-between; letter-spacing: .06em; padding: 13px 15px; }
.landing-system-bar i { border-radius: 50%; display: inline-block; height: 6px; margin-right: 3px; width: 6px; }
.landing-system-old { background: #c0c0c0; border-color: #fff #555 #555 #fff; border-width: 3px; box-shadow: 9px 12px 0 #505050; color: #111; font-family: Tahoma, sans-serif; left: 4px; top: 75px; transform: rotate(-7deg); }
.landing-system-old .landing-system-bar { background: linear-gradient(90deg, #000080, #1084d0); color: #fff; font: bold 10px Tahoma, sans-serif; padding: 5px 6px; }
.landing-system-old .landing-system-bar span { display: none; }
.landing-system-body { padding: 15px 13px 17px; }
.landing-system-old h3 { color: #000; font: bold 15px Tahoma, sans-serif; margin: 0 0 13px; }
.landing-system-old p { background: #c0c0c0; border-color: #fff #555 #555 #fff; border-style: solid; border-width: 2px; color: #222; font: 9px Tahoma, sans-serif; margin: 6px 0; padding: 5px; }
.landing-system-new { background: linear-gradient(145deg, #17172d, #34326c 55%, #28254d); border-color: #9d8cff; border-radius: 20px; color: #f6f2ff; right: 0; top: 120px; transform: rotate(5deg); z-index: 2; }
.landing-system-new .landing-system-bar { background: rgba(255, 255, 255, .09); border-bottom: 1px solid rgba(255, 255, 255, .18); }
.landing-system-new .landing-system-bar i { background: #aa90ff; }
.landing-system-new .landing-system-body { padding: 23px 18px 27px; }
.landing-system-new h3 { font-size: 16px; letter-spacing: -.04em; margin: 0 0 17px; }.landing-system-new h3 span { color: #ac93ff; }
.landing-system-new p { align-items: center; color: #ddd9f2; display: flex; font: 10px monospace; gap: 7px; margin: 10px 0; }.landing-system-new p i { background: #66d9b1; border-radius: 50%; box-shadow: 0 0 10px #66d9b1; display: inline-block; height: 7px; width: 7px; }.landing-system-new p b { color: #fff; font-weight: 500; margin-left: auto; }
.landing-transition-label { bottom: 3px; color: #bdbdc5; font: 10px monospace; left: 24px; letter-spacing: .1em; position: absolute; }.landing-transition-label strong { color: #ac93ff; }
.landing-section { padding: 130px 0; }.landing-about { border-top: 1px solid var(--line); }.landing-about-grid { display: grid; grid-template-columns: 1fr 2fr; }.landing-about h2 { margin-top: 0; }.landing-about-grid > div > p { font-size: 18px; margin: 35px 0 0; max-width: 600px; }
.landing-services { background: var(--ink); color: #fff; }.landing-services-head { align-items: end; display: flex; justify-content: space-between; }.landing-services-head h2 { color: #fff; margin: 0; }.landing-services .landing-label { color: #bdbdc5; }
.landing-service-list { display: grid; grid-template-columns: repeat(3, 1fr); margin-top: 80px; }.landing-service-list article { border-bottom: 1px solid #575761; border-top: 1px solid #575761; min-height: 260px; padding: 30px 26px 30px 0; }.landing-service-list article + article { border-left: 1px solid #575761; padding-left: 26px; }.landing-service-list span { color: #ac93ff; font-family: monospace; font-size: 12px; }.landing-service-list h3 { font-size: 23px; letter-spacing: -.04em; margin: 55px 0 10px; }.landing-service-list p { color: #c2c1c9; font-size: 14px; margin: 0; max-width: 300px; }
.landing-get-in-touch { background: var(--paper); }.landing-contact-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 50px; }.landing-contact-grid h2 { margin-top: 0; }.landing-contact-grid > div:last-child > p { font-size: 18px; margin: 0 0 35px; max-width: 500px; }.landing-contact-grid .landing-email, .landing-contact-grid .landing-phone { align-items: center; border-bottom: 1px solid var(--line); display: flex; font-size: clamp(22px, 3vw, 36px); font-weight: 600; justify-content: space-between; letter-spacing: -.05em; padding: 14px 0; width: 100%; }.landing-contact-grid .landing-email:hover, .landing-contact-grid .landing-phone:hover { color: var(--violet); }.landing-contact-grid .landing-email i, .landing-contact-grid .landing-phone i { font-size: .75em; margin-left: auto; }
.landing-company-details { border-top: 1px solid rgba(32, 33, 43, .35); color: var(--ink); font-size: 13px; margin-top: 34px; padding-top: 22px; }.landing-company-details p { margin: 0 0 11px; }.landing-company-note { color: #555560; font-size: 11px; margin-top: 12px; }
.landing-footer { background: var(--ink); color: #e9e8ed; font-size: 12px; padding: 32px 0; }.landing-footer .landing-container { justify-content: space-between; }.landing-footer .landing-brand img { height: 30px; }.landing-footer p { margin: 0; }
@media (max-width: 760px) { .landing-container { padding: 0 22px; }.landing-header { padding: 18px 0; }.landing-header .landing-brand img { height: 30px; }.landing-links { background: var(--paper); box-shadow: 0 12px 25px #20212b24; display: none; left: 16px; padding: 20px; position: absolute; right: 16px; top: 68px; }.landing-links.open { display: grid; gap: 17px; }.landing-menu { display: grid; gap: 5px; padding: 7px; }.landing-menu span { background: var(--ink); height: 2px; width: 23px; }.landing-hero { min-height: 0; padding: 135px 0 75px; }.landing-hero-grid, .landing-about-grid, .landing-contact-grid { grid-template-columns: 1fr; }.landing-art { height: 330px; margin-top: 40px; }.landing-system { width: min(280px, 78%); }.landing-system-old { left: 0; top: 47px; }.landing-system-new { right: 0; top: 105px; }.landing-section { padding: 80px 0; }.landing-about-grid > div { margin-top: 35px; }.landing-services-head { align-items: start; display: grid; gap: 24px; }.landing-service-list { grid-template-columns: 1fr; margin-top: 45px; }.landing-service-list article, .landing-service-list article + article { border-bottom: 1px solid #575761; border-left: 0; border-right: 0; min-height: auto; padding: 24px 0; }.landing-service-list h3 { margin: 25px 0 8px; }.landing-contact-grid > div:last-child { margin-top: 20px; }.landing-footer .landing-container { align-items: start; flex-direction: column; gap: 14px; } }