/*
Theme Name: DYWIZJON.IT
Theme URI: https://dywizjon.it
Author: Przygotowane dla DYWIZJON.IT
Description: Motyw firmowy DYWIZJON.IT - ciemny, nowoczesny one-page dla firmy IT/OT. Formularz kontaktowy podpinany przez shortcode (dziala z reCAPTCHA z wtyczki).
Version: 1.0
Requires at least: 6.0
Tested up to: 6.6
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: dywizjon
*/


  :root{
    --ink:#0A1420;          /* mission-control night */
    --surface:#0F1E2E;
    --surface-2:#16283B;
    --line:rgba(146,178,204,.16);
    --line-strong:rgba(146,178,204,.28);
    --signal:#F2B441;       /* instrument amber — the ownable accent */
    --signal-dim:rgba(242,180,65,.14);
    --signal-ink:#1A1204;
    --signal-soft:rgba(242,180,65,.35);
    --signal-glow:rgba(242,180,65,.55);
    --steel:#79B0D6;        /* cool tech blue */
    --steel-dim:rgba(121,176,214,.12);
    --text:#EAF1F7;
    --muted:#9FB4C6;
    --muted-2:#728799;
    --pale:#EEF3F7;         /* light breather section */
    --radius:14px;
    --maxw:1160px;
    --display:"Space Grotesk",system-ui,sans-serif;
    --body:"Inter",system-ui,sans-serif;
    --mono:"Space Mono",ui-monospace,monospace;
  }

  *{box-sizing:border-box;margin:0;padding:0}
  html{scroll-behavior:smooth}
  body{
    font-family:var(--body);
    background:var(--ink);
    color:var(--text);
    line-height:1.6;
    -webkit-font-smoothing:antialiased;
    overflow-x:hidden;
  }
  a{color:inherit;text-decoration:none}
  h1,h2,h3{font-family:var(--display);font-weight:600;line-height:1.08;letter-spacing:-.015em}
  img{max-width:100%;display:block}

  .wrap{max-width:var(--maxw);margin:0 auto;padding:0 24px}
  .section{padding:104px 0}

  /* focus + reduced motion */
  a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{
    outline:2px solid var(--signal);outline-offset:3px;border-radius:6px;
  }
  @media (prefers-reduced-motion:reduce){
    *{animation:none!important;transition:none!important;scroll-behavior:auto!important}
  }

  /* ---------- HEADER ---------- */
  header{
    position:sticky;top:0;z-index:50;
    background:rgba(10,20,32,.72);
    backdrop-filter:blur(12px);
    border-bottom:1px solid var(--line);
  }
  .nav{display:flex;align-items:center;gap:32px;min-height:76px;padding:10px 0}
  .brand{display:flex;align-items:center;gap:11px;font-family:var(--display);font-weight:700;letter-spacing:.02em;font-size:17px}
  .brand .glyph{width:26px;height:26px;flex:0 0 auto}
  .brand b{color:var(--signal);font-weight:700}
  .nav-links{display:flex;gap:28px;margin-left:auto;font-size:14.5px;font-weight:500}
  .nav-links a{color:var(--muted);transition:color .18s}
  .nav-links a:hover{color:var(--text)}
  .btn{
    font-family:var(--display);font-weight:600;font-size:14.5px;
    border-radius:9px;padding:11px 20px;cursor:pointer;border:1px solid transparent;
    transition:transform .16s,background .18s,box-shadow .18s;display:inline-block;
  }
  .btn-primary{background:var(--signal);color:var(--signal-ink);box-shadow:0 6px 22px -8px var(--signal-glow)}
  .btn-primary:hover{transform:translateY(-1px);box-shadow:0 10px 28px -8px var(--signal-glow)}
  .btn-ghost{border-color:var(--line-strong);color:var(--text);background:transparent}
  .btn-ghost:hover{background:var(--surface-2);border-color:var(--steel)}
  .nav .btn{margin-left:4px}
  .menu-toggle{display:none;margin-left:auto;background:none;border:1px solid var(--line-strong);color:var(--text);border-radius:8px;padding:8px 10px;cursor:pointer}

  /* ---------- HERO ---------- */
  .hero{position:relative;padding:78px 0 60px;overflow:hidden}
  .hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:48px;align-items:center}
  .status{
    font-family:var(--mono);font-size:12.5px;color:var(--steel);
    display:inline-flex;align-items:center;gap:9px;margin-bottom:26px;
    border:1px solid var(--line);border-radius:100px;padding:6px 14px;background:var(--steel-dim);
  }
  .status .dot{width:7px;height:7px;border-radius:50%;background:var(--signal);box-shadow:0 0 0 0 var(--signal-glow);animation:pulse 2.4s infinite}
  @keyframes pulse{0%{box-shadow:0 0 0 0 var(--signal-glow)}70%{box-shadow:0 0 0 8px transparent}100%{box-shadow:0 0 0 0 transparent}}
  .hero h1{font-size:clamp(34px,5vw,58px);margin-bottom:22px}
  .hero h1 .thin{color:var(--muted);font-weight:400}
  .hero p.lead{font-size:clamp(16px,1.6vw,19px);color:var(--muted);max-width:52ch;margin-bottom:34px}
  .hero-cta{display:flex;gap:14px;flex-wrap:wrap}

  /* radar visual */
  .radar-holder{position:relative;aspect-ratio:1/1;max-width:440px;margin-left:auto;width:100%}
  .radar{width:100%;height:100%}
  .sweep{transform-origin:250px 250px;animation:spin 6s linear infinite}
  @keyframes spin{to{transform:rotate(360deg)}}
  .blip{opacity:0;animation:blip 6s linear infinite}
  .blip.b2{animation-delay:2s}
  .blip.b3{animation-delay:4s}
  .blip.b4{animation-delay:1.2s}
  @keyframes blip{0%,100%{opacity:0}6%{opacity:1}40%{opacity:.15}}

  /* ---------- PILLARS ---------- */
  .pillars{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--surface)}
  .pillars .inner{display:grid;grid-template-columns:repeat(3,1fr);gap:0}
  .pillar{padding:40px 34px}
  .pillar+.pillar{border-left:1px solid var(--line)}
  .pillar .ic{width:32px;height:32px;color:var(--signal);margin-bottom:16px}
  .pillar h3{font-size:19px;margin-bottom:9px}
  .pillar p{color:var(--muted);font-size:15px}

  /* ---------- SECTION HEADS ---------- */
  .kicker{font-family:var(--display);font-size:13.5px;font-weight:600;color:var(--signal);margin-bottom:14px}
  .section h2{font-size:clamp(27px,3.4vw,40px);margin-bottom:18px;max-width:20ch}
  .section .sub{color:var(--muted);max-width:60ch;font-size:16.5px}

  /* ---------- ABOUT ---------- */
  .about-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:56px;align-items:start;margin-top:10px}
  .about-body p{color:var(--muted);font-size:16.5px;margin-bottom:18px}
  .about-body p strong{color:var(--text);font-weight:600}
  .dossier{border:1px solid var(--line-strong);border-radius:var(--radius);background:linear-gradient(180deg,var(--surface-2),var(--surface));overflow:hidden}
  .dossier .head{font-family:var(--mono);font-size:12px;color:var(--muted-2);padding:14px 20px;border-bottom:1px solid var(--line);letter-spacing:.04em}
  .dfact{display:flex;gap:14px;padding:20px;border-bottom:1px solid var(--line)}
  .dfact:last-child{border-bottom:none}
  .dfact .ic{width:26px;height:26px;color:var(--steel);flex:0 0 auto;margin-top:2px}
  .dfact h4{font-family:var(--display);font-size:15.5px;font-weight:600;margin-bottom:3px}
  .dfact p{color:var(--muted);font-size:14px}

  /* ---------- SERVICES ---------- */
  .services{background:var(--surface)}
  .cap{display:grid;grid-template-columns:56px 1fr;gap:22px;padding:30px 0;border-top:1px solid var(--line)}
  .cap:first-of-type{border-top:none}
  .cap .ic-box{width:56px;height:56px;border:1px solid var(--line-strong);border-radius:12px;display:grid;place-items:center;color:var(--signal);background:var(--signal-dim)}
  .cap .ic-box svg{width:28px;height:28px}
  .cap h3{font-size:20px;margin-bottom:7px}
  .cap>div>p{color:var(--muted);font-size:15.5px;margin-bottom:14px;max-width:64ch}
  .tags{display:flex;flex-wrap:wrap;gap:8px}
  .tag{font-family:var(--body);font-size:13px;line-height:1.2;color:var(--steel);border:1px solid var(--line);border-radius:7px;padding:6px 12px;background:var(--steel-dim);cursor:pointer;transition:border-color .16s,color .16s,background .16s}
  .tag:hover{border-color:var(--steel);color:var(--text)}
  .tag.active{border-color:var(--signal);color:var(--signal);background:var(--signal-dim)}
  .tag-detail{display:flex;gap:20px;align-items:center;margin-top:16px;max-width:74ch;color:var(--muted);font-size:15px;line-height:1.55;animation:tagfade .28s ease}
  .tag-detail-viz{width:128px;flex:0 0 auto;border:1px solid var(--line);border-radius:12px;background:var(--surface-2);padding:14px;color:var(--steel)}
  .tag-detail-viz svg{width:100%;height:auto;display:block}
  .tag-detail-text{margin:0;border-left:2px solid var(--signal);padding-left:16px}
  .tag-detail[hidden]{display:none}
  @keyframes tagfade{from{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:none}}

  /* ---------- PROCESS ---------- */
  .steps{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;margin-top:14px;counter-reset:s}
  .step{padding-top:22px;border-top:2px solid var(--line-strong);position:relative}
  .step .num{font-family:var(--mono);font-size:13px;color:var(--signal);margin-bottom:12px}
  .step h3{font-size:18px;margin-bottom:8px}
  .step p{color:var(--muted);font-size:14.5px}

  /* ---------- CTA BAND ---------- */
  .band{background:linear-gradient(120deg,var(--surface-2),var(--surface));border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
  .band .inner{display:flex;align-items:center;justify-content:space-between;gap:30px;flex-wrap:wrap;padding:52px 0}
  .band h2{font-size:clamp(24px,3vw,34px);max-width:22ch}
  .band p{color:var(--muted);margin-top:8px}

  /* ---------- STATS ---------- */
  .stats{background:var(--surface);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
  .stats-grid{display:grid;grid-template-columns:repeat(4,1fr)}
  .stat{padding:46px 28px;text-align:center}
  .stat+.stat{border-left:1px solid var(--line)}
  .stat .val{font-family:var(--display);font-weight:600;font-size:clamp(38px,5vw,52px);color:var(--signal);line-height:1;letter-spacing:-.02em}
  .stat .val .u{color:var(--steel);font-size:.5em;margin-left:3px;font-weight:500}
  .stat .lbl{color:var(--muted);font-size:14.5px;margin-top:13px;max-width:22ch;margin-left:auto;margin-right:auto}

  /* ---------- CONTACT ---------- */
  .contact-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:56px;margin-top:12px}
  .cinfo .row{display:flex;gap:14px;padding:18px 0;border-bottom:1px solid var(--line)}
  .cinfo .row:first-child{padding-top:0}
  .cinfo .ic{width:22px;height:22px;color:var(--signal);flex:0 0 auto;margin-top:3px}
  .cinfo h4{font-family:var(--display);font-size:14px;color:var(--muted-2);font-weight:500;margin-bottom:3px}
  .cinfo p{font-size:16px}
  .cinfo .todo{color:var(--signal);font-family:var(--mono);font-size:13px}
  form{display:grid;gap:16px}
  .frow{display:grid;grid-template-columns:1fr 1fr;gap:16px}
  label{display:block;font-size:13.5px;color:var(--muted);margin-bottom:7px;font-weight:500}
  input,textarea{
    width:100%;background:var(--surface);border:1px solid var(--line-strong);
    border-radius:10px;padding:13px 15px;color:var(--text);font-family:var(--body);font-size:15px;transition:border .18s,background .18s;
  }
  input:focus,textarea:focus{border-color:var(--signal);background:var(--surface-2)}
  textarea{resize:vertical;min-height:130px}
  .form-note{font-size:13px;color:var(--muted-2)}
  #ok{display:none;color:var(--signal);font-size:14.5px;font-family:var(--display);font-weight:500}

  /* ---------- FOOTER ---------- */
  footer{border-top:1px solid var(--line);padding:44px 0 40px;background:var(--ink)}
  .foot{display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap}
  .foot .brand{font-size:15px}
  .foot nav{display:flex;gap:22px;font-size:14px;color:var(--muted)}
  .foot nav a:hover{color:var(--text)}
  .copy{color:var(--muted-2);font-size:13px;margin-top:18px}

  /* ---------- RESPONSIVE ---------- */
  @media(max-width:900px){
    .hero-grid{grid-template-columns:1fr;gap:36px}
    .radar-holder{max-width:320px;order:-1}
    .pillars .inner{grid-template-columns:1fr}
    .pillar+.pillar{border-left:none;border-top:1px solid var(--line)}
    .about-grid,.contact-grid{grid-template-columns:1fr;gap:36px}
    .steps{grid-template-columns:1fr 1fr}
    .stats-grid{grid-template-columns:1fr 1fr}
    .stat+.stat{border-left:none}
    .stat{border-top:1px solid var(--line)}
    .stat:nth-child(1),.stat:nth-child(2){border-top:none}
    .stat:nth-child(odd){border-right:1px solid var(--line)}
    .nav-links,.nav .btn{display:none}
    .menu-toggle{display:inline-flex}
  }
  @media(max-width:560px){
    .section{padding:72px 0}
    .tag-detail{flex-direction:column;align-items:flex-start;gap:14px}
    .tag-detail-viz{width:110px}
    .tag-detail-text{border-left:none;padding-left:0}
    .steps{grid-template-columns:1fr}
    .frow{grid-template-columns:1fr}
    .cap{grid-template-columns:1fr;gap:14px}
  }
  .brand img.logo{height:clamp(42px,5.5vw,70px);width:auto;display:block}
  .foot .brand img.foot-logo{height:clamp(42px,5.5vw,70px)}
  /* radar sweep colour follows the accent */
  .radar .sw0{stop-color:transparent}
  .radar .sw1{stop-color:var(--signal-soft)}

  /* --- integracja formularza z wtyczki (CF7/WPForms/Forminator) --- */
  #kontakt .contact-form input[type="text"],#kontakt .contact-form input[type="email"],
  #kontakt .contact-form input[type="tel"],#kontakt .contact-form textarea,#kontakt .contact-form select{
    width:100%;background:var(--surface);border:1px solid var(--line-strong);border-radius:10px;
    padding:13px 15px;color:var(--text);font-family:var(--body);font-size:15px;margin-bottom:14px;transition:border .18s,background .18s}
  #kontakt .contact-form input:focus,#kontakt .contact-form textarea:focus{border-color:var(--signal);background:var(--surface-2);outline:none}
  #kontakt .contact-form label{display:block;font-size:13.5px;color:var(--muted);margin-bottom:7px;font-weight:500}
  #kontakt .contact-form input[type="submit"],#kontakt .contact-form button[type="submit"],#kontakt .contact-form .wpcf7-submit,#kontakt .contact-form .wpforms-submit{
    font-family:var(--display);font-weight:600;font-size:14.5px;border-radius:9px;padding:12px 22px;cursor:pointer;border:1px solid transparent;
    background:var(--signal);color:var(--signal-ink);box-shadow:0 6px 22px -8px var(--signal-glow);transition:transform .16s,box-shadow .18s}
  #kontakt .contact-form input[type="submit"]:hover,#kontakt .contact-form button[type="submit"]:hover,#kontakt .contact-form .wpcf7-submit:hover{transform:translateY(-1px)}
