/*
Theme Name: DrComps Signal
Theme URI: https://drcomps.com/
Author: DrComps
Description: A fast independent computer news desk separating signal from noise.
Version: 1.0.2
Requires at least: 7.1
Requires PHP: 8.1
Text Domain: drcomps-signal
*/
:root{--black:#0a0a09;--coal:#151613;--paper:#f3f0e6;--white:#fffdf7;--muted:#77776f;--line:#c9c6bb;--signal:#c7ff30;--blue:#4d7cff;--wrap:min(1240px,calc(100% - 44px));--sans:"Helvetica Neue",Arial,sans-serif;--mono:ui-monospace,SFMono-Regular,Menlo,monospace}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--black);background:var(--paper);font:17px/1.6 var(--sans);-webkit-font-smoothing:antialiased}a{color:inherit;text-underline-offset:.2em}a:hover{color:#426019}img{display:block;max-width:100%;height:auto}h1,h2,h3{margin:0 0 .5em;line-height:.94;letter-spacing:-.055em}h1{font-size:clamp(4rem,10vw,9.5rem)}h2{font-size:clamp(2.2rem,5vw,4.7rem)}h3{font-size:clamp(1.3rem,2.2vw,1.8rem)}p{margin:0 0 1.25em}.dc-wrap{width:var(--wrap);margin-inline:auto}.screen-reader-text{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0,0,0,0)}.dc-tag{display:inline-block;padding:5px 8px;color:var(--black);background:var(--signal);font:800 .63rem/1 var(--mono);letter-spacing:.09em;text-transform:uppercase}.dc-meta{color:var(--muted);font:700 .65rem/1.4 var(--mono);letter-spacing:.08em;text-transform:uppercase}.dc-section{padding:clamp(70px,9vw,125px) 0;border-top:1px solid var(--line)}
.dc-site-header{position:sticky;z-index:100;top:0;color:var(--white);background:rgba(10,10,9,.96);border-bottom:1px solid #373832;backdrop-filter:blur(12px)}.dc-nav{display:flex;min-height:72px;align-items:center;justify-content:space-between;gap:25px}.dc-brand{display:flex;align-items:center;gap:13px;color:#fff;text-decoration:none}.dc-brand>span:last-child{display:flex;flex-direction:column;gap:5px}.dc-logo{display:grid;width:36px;height:36px;place-items:center;color:var(--black);background:var(--signal);font:900 .72rem/1 var(--mono);transform:rotate(-3deg)}.dc-brand strong{display:block;font-size:1.45rem;line-height:1;letter-spacing:-.055em}.dc-brand small{display:block;color:#a8aaa0;font:700 .56rem/1 var(--mono);letter-spacing:.13em;text-transform:uppercase;white-space:nowrap}.dc-nav-links{display:flex;gap:28px;align-items:center}.dc-nav-links a{color:#dedfd8;font-size:.78rem;font-weight:700;text-decoration:none}.dc-nav-links a:hover{color:var(--signal)}.dc-mobile-nav{display:none}
.dc-ticker{overflow:hidden;color:var(--black);background:var(--signal);border-bottom:1px solid var(--black)}.dc-ticker-track,.dc-ticker-group{display:flex;width:max-content}.dc-ticker-track{animation:ticker 28s linear infinite}.dc-ticker-group{flex:none}.dc-ticker a{padding:9px 34px 9px 0;color:var(--black);font:800 .65rem/1 var(--mono);letter-spacing:.08em;text-decoration:none;text-transform:uppercase}.dc-ticker a:after{margin-left:34px;content:"◆"}.dc-ticker a:hover{text-decoration:underline;text-decoration-thickness:2px}.dc-ticker a:focus-visible{outline:2px solid var(--black);outline-offset:-3px}.dc-ticker-track:hover,.dc-ticker-track:focus-within{animation-play-state:paused}.dc-hero{padding:clamp(80px,11vw,150px) 0 70px;color:var(--white);background:var(--black)}.dc-hero-grid{display:grid;grid-template-columns:1.35fr .65fr;gap:clamp(45px,9vw,120px);align-items:end}.dc-hero h1 em{color:var(--signal);font-style:normal}.dc-hero-copy{max-width:690px;color:#b8bab1;font-size:1.2rem}.dc-hero-aside{padding:24px 0;border-block:1px solid #4d4f47}.dc-hero-aside strong{display:block;margin-bottom:10px;font:800 .68rem/1 var(--mono);letter-spacing:.1em;text-transform:uppercase}.dc-hero-aside p{margin:0;color:#c5c7bf}.dc-hero-foot{display:flex;justify-content:space-between;gap:25px;margin-top:90px;padding-top:16px;border-top:1px solid #3c3d38;color:#898b82;font:700 .62rem/1.4 var(--mono);letter-spacing:.08em;text-transform:uppercase}
.dc-lead-grid{display:grid;grid-template-columns:1.5fr .75fr .75fr;border-top:1px solid var(--black)}.dc-story{display:flex;min-height:330px;padding:30px;flex-direction:column;border-right:1px solid var(--line);border-bottom:1px solid var(--line);text-decoration:none}.dc-story:first-child{padding-left:0}.dc-story:last-child{padding-right:0;border-right:0}.dc-story h2{margin-top:22px;font-size:clamp(2.1rem,4.7vw,4.7rem)}.dc-story:not(:first-child) h2{font-size:clamp(1.6rem,2.7vw,2.5rem)}.dc-story p{color:var(--muted)}.dc-story .dc-meta{margin-top:auto}.dc-story:hover h2{color:#4f6c13}.dc-desk-head{display:flex;justify-content:space-between;gap:30px;align-items:end;margin-bottom:42px}.dc-desk-head p{max-width:450px;margin:0;color:var(--muted)}.dc-feed{border-top:2px solid var(--black)}.dc-feed-item{display:grid;grid-template-columns:135px 180px 1fr 90px;gap:30px;padding:27px 0;border-bottom:1px solid var(--line);text-decoration:none}.dc-feed-item h3{margin:0}.dc-feed-item p{margin:6px 0 0;color:var(--muted);font-size:.9rem}.dc-feed-item>span:last-child{justify-self:end;color:#4f6c13;font:800 .65rem/1.4 var(--mono);text-transform:uppercase}.dc-principles{color:#ddd;background:var(--coal)}.dc-principles h2{color:#fff}.dc-principle-grid{display:grid;grid-template-columns:repeat(3,1fr);margin-top:50px;border-top:1px solid #4a4c45}.dc-principle-grid article{padding:30px 30px 0 0;border-right:1px solid #4a4c45}.dc-principle-grid article+article{padding-left:30px}.dc-principle-grid article:last-child{border-right:0}.dc-principle-grid span{color:var(--signal);font:800 .68rem/1 var(--mono)}.dc-principle-grid h3{margin-top:45px;color:#fff}.dc-principle-grid p{color:#a9aba2}
.dc-page-hero{padding:95px 0 65px;background:var(--white);border-bottom:2px solid var(--black)}.dc-page-hero h1{max-width:1000px;font-size:clamp(3.7rem,8vw,8rem)}.dc-page-hero p{max-width:720px;color:var(--muted);font-size:1.18rem}.dc-content{padding:75px 0 125px}.dc-article{width:min(790px,100%)}.dc-article h2{margin-top:1.7em;font-size:clamp(2rem,4vw,3.4rem)}.dc-article h3{margin-top:1.6em}.dc-article p,.dc-article li{color:#44453f}.dc-article blockquote{margin:2em 0;padding:22px 0;border-block:2px solid var(--black);font-size:1.3rem;font-weight:700}.dc-source-box{margin:45px 0;padding:20px;background:var(--white);border:1px solid var(--line)}.dc-post-date{margin-bottom:25px}.dc-site-footer{padding:65px 0 25px;color:#a9aba2;background:var(--black)}.dc-footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:60px}.dc-footer-grid h2{color:#fff;font:800 .65rem/1.4 var(--mono);letter-spacing:.1em;text-transform:uppercase}.dc-footer-grid ul{margin:0;padding:0;list-style:none}.dc-footer-grid li{margin:.65em 0}.dc-footer-grid a{color:#ddd}.dc-footer-bottom{display:flex;justify-content:space-between;gap:30px;margin-top:60px;padding-top:20px;border-top:1px solid #3c3d38;font-size:.76rem}
@keyframes ticker{to{transform:translateX(-50%)}}@media(prefers-reduced-motion:reduce){.dc-ticker-track{animation:none}.dc-ticker-group[aria-hidden="true"]{display:none}}@media(max-width:900px){.dc-nav-links{display:none}.dc-mobile-nav{position:relative;display:block}.dc-mobile-nav summary{cursor:pointer;list-style:none}.dc-mobile-nav nav{position:absolute;right:0;top:36px;display:grid;width:240px;padding:14px;background:var(--coal);border:1px solid #444}.dc-mobile-nav a{padding:9px;color:#fff;text-decoration:none}.dc-hero-grid,.dc-lead-grid{grid-template-columns:1fr}.dc-lead-grid .dc-story{padding-inline:0;border-right:0}.dc-feed-item{grid-template-columns:100px 140px 1fr}.dc-feed-item>span:last-child{grid-column:3;justify-self:start}.dc-principle-grid{grid-template-columns:1fr}.dc-principle-grid article,.dc-principle-grid article+article{padding:28px 0;border-right:0;border-bottom:1px solid #4a4c45}.dc-footer-grid{grid-template-columns:1fr 1fr}.dc-footer-grid>div:first-child{grid-column:1/-1}}@media(max-width:620px){:root{--wrap:min(100% - 28px,1240px)}body{font-size:16px}.dc-brand small{display:none}.dc-hero h1{font-size:clamp(4rem,20vw,6rem)}.dc-hero-foot,.dc-desk-head,.dc-footer-bottom{align-items:flex-start;flex-direction:column}.dc-feed-item{grid-template-columns:1fr;gap:8px}.dc-feed-item>span:last-child{grid-column:1}.dc-footer-grid{grid-template-columns:1fr}.dc-footer-grid>div:first-child{grid-column:auto}}
