:root{
    /* sampled from the logo */
    --navy:#012550;
    --crimson:#911010;

    --ink:#0B1F3D;
    --ink-soft:#5A6A80;
    --paper:#EFF1F4;
    --surface:#FFFFFF;
    --line:#D2D9E3;

    --t-pm:#012550;
    --t-telecom:#911010;
    --t-iot:#0B6B60;
    --t-nr:#353F86;
    --t-ai:#67306B;
    --t-field:#7A5320;
    --t-build:#2C6B3F;

    --display:'Spectral',Georgia,serif;
    --body:'Inter',system-ui,sans-serif;
    --mono:'IBM Plex Mono',ui-monospace,monospace;

    --pad:clamp(18px,5vw,64px);
  }

  .ph-home *{box-sizing:border-box}
  html{scroll-behavior:smooth}
  .ph-home{
    background:var(--paper);color:var(--ink);
    font-family:var(--body);font-size:17px;line-height:1.6;
    -webkit-font-smoothing:antialiased;
    position:relative;width:100%;max-width:100%;margin:0;
  }
  .ph-home p{margin:0}
  .ph-home ul{list-style:none;margin:0;padding:0}
  .ph-home img{max-width:100%;height:auto}
  .ph-home a{color:inherit}
  .ph-home h1,.ph-home h2,.ph-home h3{font-family:var(--display);line-height:1.06;margin:0;letter-spacing:-0.015em}
  .ph-eyebrow{
    font-family:var(--mono);font-size:11.5px;letter-spacing:.16em;
    text-transform:uppercase;color:var(--ink-soft);margin:0;
  }
  .ph-home :focus-visible{outline:2px solid var(--crimson);outline-offset:3px}

  /* ---------------- header ---------------- */
  .ph-site-head{
    position:sticky;top:0;z-index:30;
    background:var(--paper);
    border-bottom:1px solid var(--line);
    box-shadow:0 2px 14px rgba(1,37,80,.10);
  }
  .ph-head-row{
    display:flex;align-items:center;gap:12px;flex-wrap:wrap;
    padding:10px var(--pad);
  }
  .ph-mark{display:flex;align-items:center;gap:11px;text-decoration:none;margin-right:auto;min-width:0}
  .ph-mark img{width:44px;height:44px;display:block;flex-shrink:0}
  .ph-wordmark{font-family:var(--display);font-weight:600;font-size:19px;letter-spacing:-.01em;line-height:1.1}
  .ph-wordmark .ph-a{color:var(--navy)}
  .ph-wordmark .ph-b{color:var(--crimson)}
  .ph-wordmark .ph-c{color:#6B7280;font-size:.68em}
  .ph-tagline{
    display:block;font-family:var(--mono);font-size:10px;letter-spacing:.18em;
    text-transform:uppercase;margin-top:3px;
  }
  .ph-tagline .ph-t-a{color:var(--navy)}
  .ph-tagline .ph-t-b{color:var(--crimson)}
  .ph-shelf-btn{
    flex-shrink:0;white-space:nowrap;
    font-family:var(--mono);font-size:12.5px;
    text-decoration:none;color:#fff;background:var(--crimson);
    padding:11px 16px;border-radius:999px;
    display:inline-flex;align-items:center;gap:7px;
    border:1px solid var(--crimson);
    transition:background .18s ease,transform .18s ease;
  }
  .ph-shelf-btn:hover{background:var(--navy);border-color:var(--navy);transform:translateY(-1px)}
  .ph-shelf-btn .ph-full{display:inline}
  .ph-nav{
    display:flex;gap:18px;overflow-x:auto;
    padding:0 var(--pad) 9px;
    -ms-overflow-style:none;scrollbar-width:none;
  }
  .ph-nav::-webkit-scrollbar{display:none}
  .ph-nav a{
    font-family:var(--mono);font-size:12px;letter-spacing:.04em;
    text-decoration:none;color:var(--ink-soft);white-space:nowrap;
    padding-bottom:3px;border-bottom:1px solid transparent;
  }
  .ph-nav a:hover{color:var(--navy);border-bottom-color:var(--crimson)}

  /* ---------------- 6G Lab strip ---------------- */
  .ph-daily{
    background:linear-gradient(100deg,#012550 0%,#053A7A 52%,#012550 100%);
    border-bottom:2px solid var(--crimson);
    display:flex;align-items:center;gap:14px 20px;flex-wrap:wrap;
    padding:14px var(--pad);text-decoration:none;
    transition:filter .2s ease;
  }
  .ph-daily:hover{filter:brightness(1.08)}
  .ph-daily-lead{display:flex;flex-direction:column;gap:6px;flex-shrink:0;max-width:100%}
  .ph-daily-badge{
    display:inline-flex;align-items:center;gap:8px;align-self:flex-start;
    font-family:var(--display);font-weight:600;font-size:17px;letter-spacing:.02em;
    background:var(--crimson);color:#fff;padding:7px 15px;border-radius:6px;
    animation:phPulse 2.6s ease-out infinite;
  }
  .ph-daily-dot{width:7px;height:7px;border-radius:50%;background:#fff;flex-shrink:0}
  @keyframes phPulse{
    0%{box-shadow:0 0 0 0 rgba(145,16,16,.75); transform:scale(1)}
    55%{box-shadow:0 0 0 14px rgba(145,16,16,0); transform:scale(1.035)}
    100%{box-shadow:0 0 0 0 rgba(145,16,16,0); transform:scale(1)}
  }
  .ph-daily-tag{font-family:var(--display);font-size:15px;font-weight:500;color:#DCE5F0;line-height:1.2}
  .ph-daily-sub{
    align-self:flex-start;
    font-family:var(--mono);font-size:11px;font-weight:500;
    letter-spacing:.16em;text-transform:uppercase;
    color:#12213D;background:#F0B429;
    padding:5px 11px;border-radius:4px;
    box-shadow:0 2px 10px rgba(240,180,41,.35);
  }
  .ph-daily-points{
    flex:1 1 240px;min-width:0;
    display:flex;flex-wrap:wrap;gap:6px 26px;
  }
  .ph-daily-points span{
    font-size:15px;color:#DCE5F0;line-height:1.35;
    display:inline-flex;align-items:baseline;gap:8px;
  }
  .ph-daily-points span::before{
    content:"\203A";color:var(--crimson);
    font-family:var(--mono);font-size:15px;
    background:#fff;border-radius:50%;
    width:15px;height:15px;line-height:14px;text-align:center;
    display:inline-block;flex-shrink:0;
  }
  .ph-daily-cta{
    font-family:var(--mono);font-size:12.5px;color:#fff;white-space:nowrap;flex-shrink:0;
    background:var(--crimson);border:1px solid var(--crimson);
    border-radius:999px;padding:11px 20px;
    animation:phPulse 2.6s ease-out infinite;
  }
  .ph-daily:hover .ph-daily-cta{filter:brightness(1.12)}

    @media (max-width:1080px){
    .ph-grid{grid-template-columns:repeat(2,1fr)}
    .ph-proof{grid-template-columns:repeat(2,1fr)}
  }
  @media (max-width:720px){
    .ph-grid{grid-template-columns:1fr}
    .ph-topic-label{font-size:10.5px;padding-top:16px}
    .ph-topic-list{gap:10px}
    .ph-topic-list li{
      background:#EEF3F9;
      border:1px solid #DCE5EF;
      border-left:4px solid var(--c);
      border-radius:10px;
    }
    .ph-topic-list a{padding:13px 14px;font-size:16px}
    .ph-topic p{font-size:14.5px}
    .ph-shelf-panel{grid-template-columns:1fr}
    .ph-about{grid-template-columns:1fr}
    .ph-hero h1{max-width:none}
    .ph-mark img{width:38px;height:38px}
    .ph-wordmark{font-size:15.5px}
    .ph-head-row{gap:8px}
    .ph-tagline{font-size:8.5px;letter-spacing:.16em;margin-top:2px}
    .ph-shelf-btn{font-size:11.5px;padding:10px 13px}
    .ph-shelf-btn .ph-full{display:none}
  }
  @media (prefers-reduced-motion:reduce){
    *{animation:none!important;transition:none!important}
    html{scroll-behavior:auto}
  }

/* ---------------------------------------------------------------
   Flatten the theme's wrappers so the design reaches both edges.
--------------------------------------------------------------- */
body.ph-home-page{overflow-x:hidden;}
body.ph-home-page *:has(.ph-home){
  max-width:none !important;width:auto !important;
  padding-left:0 !important;padding-right:0 !important;
  margin-left:0 !important;margin-right:0 !important;float:none !important;
}
body.ph-home-page *:has(> .ph-home){padding-top:0 !important;padding-bottom:0 !important;}
body.ph-home-page .entry-header,body.ph-home-page .page-header,
body.ph-home-page .entry-title,body.ph-home-page .page-title,
body.ph-home-page .breadcrumbs,body.ph-home-page .breadcrumb{display:none !important;}
body.ph-home-page .site-content,body.ph-home-page .content-area,
body.ph-home-page .site-main,body.ph-home-page .entry-content,
body.ph-home-page .page-content,body.ph-home-page .wp-block-post-content,
body.ph-home-page main,body.ph-home-page article:not(.ph-topic){
  margin:0 !important;padding-top:0 !important;
  padding-left:0 !important;padding-right:0 !important;
  max-width:none !important;width:auto !important;
}

/* ---------------------------------------------------------------
   Fixed header. It is pinned to the window, so it must be opaque:
   anything scrolling past has to pass behind it, not through it.
--------------------------------------------------------------- */
.ph-home-top .ph-site-head{
  position:fixed !important;top:0;left:0;right:0;z-index:9990;
  background:var(--paper) !important;
  box-shadow:0 2px 14px rgba(1,37,80,.14) !important;
}
body.admin-bar .ph-home-top .ph-site-head{top:32px;}
@media screen and (max-width:782px){
  body.admin-bar .ph-home-top .ph-site-head{top:46px;}
}
.ph-head-spacer{width:100%;}
.ph-home-top{padding-bottom:0 !important;}

.ph-home .ph-shelf-btn,.ph-home .ph-shelf-btn:hover,.ph-home .ph-shelf-btn:visited{
  color:#fff !important;text-decoration:none !important;}
.ph-home .ph-daily,.ph-home .ph-daily:hover,.ph-home .ph-daily:visited{
  color:#fff !important;text-decoration:none !important;}
.ph-home .ph-daily-badge{color:#fff !important;}
.ph-home .ph-daily-tag{color:#DCE5F0 !important;}
.ph-home .ph-daily-sub{color:#12213D !important;background:#F0B429 !important;}
.ph-home .ph-daily-points span{color:#DCE5F0 !important;}
.ph-home .ph-daily-cta{color:#fff !important;background:var(--crimson) !important;}
.ph-home .ph-nav a,.ph-home .ph-nav a:visited{
  color:var(--ink-soft) !important;text-decoration:none !important;}
.ph-home .ph-nav a:hover{color:var(--navy) !important;}
.ph-home .ph-mark,.ph-home .ph-mark:visited{text-decoration:none !important;}
.ph-home .ph-wordmark .ph-a{color:var(--navy) !important;}
.ph-home .ph-wordmark .ph-b{color:var(--crimson) !important;}
.ph-home .ph-wordmark .ph-c{color:#6B7280 !important;}
.ph-home .ph-tagline .ph-t-a{color:var(--navy) !important;}
.ph-home .ph-tagline .ph-t-b{color:var(--crimson) !important;}
