/*
Theme Name: TechInform NYT Edition
Theme URI: https://techinform.in
Author: Erick Irani
Author URI: https://techinform.in
Description: A custom editorial WordPress theme for TechInform, inspired by The New York Times' clean black-and-white grid layout, serif headline typography, and multi-section homepage structure. Built for tech news, fintech, and startup content.
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: techinform-nyt
Tags: news, blog, grid-layout, custom-colors, custom-menu, editor-style, featured-images, translation-ready
*/

/* ===== VARIABLES (via CSS custom properties) ===== */
:root{
  --color-black:#121212;
  --color-white:#ffffff;
  --color-gray-dark:#333333;
  --color-gray-mid:#666666;
  --color-gray-light:#e2e2e2;
  --color-gray-bg:#f7f7f7;
  --color-accent:#326891;
  --font-serif:"Georgia","Cambria","Times New Roman",Times,serif;
  --font-sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Helvetica,Arial,sans-serif;
  --max-width:1200px;
}

*{box-sizing:border-box;}
body{
  margin:0;
  font-family:var(--font-sans);
  color:var(--color-black);
  background:var(--color-white);
  line-height:1.5;
}
a{color:inherit;text-decoration:none;}
a:hover{text-decoration:underline;}
img{max-width:100%;display:block;}

/* ===== TOP UTILITY BAR ===== */
.ti-topbar{
  border-bottom:1px solid var(--color-gray-light);
  font-size:12px;
  padding:6px 0;
  color:var(--color-gray-mid);
}
.ti-topbar-inner{
  max-width:var(--max-width);
  margin:0 auto;
  padding:0 20px;
  display:flex;
  justify-content:space-between;
}

/* ===== MASTHEAD ===== */
.ti-masthead{
  border-bottom:2px solid var(--color-black);
  padding:20px 0 10px;
  text-align:center;
}
.ti-masthead-inner{max-width:var(--max-width);margin:0 auto;padding:0 20px;}
.ti-logo{
  font-family:var(--font-serif);
  font-weight:700;
  font-size:52px;
  letter-spacing:-1px;
  text-transform:none;
  margin:0;
}
.ti-tagline{
  font-size:13px;
  color:var(--color-gray-mid);
  font-style:italic;
  margin-top:4px;
}
.ti-date-line{
  font-size:12px;
  color:var(--color-gray-mid);
  margin-top:8px;
  border-top:1px solid var(--color-gray-light);
  padding-top:8px;
}

/* ===== NAVIGATION ===== */
.ti-nav{
  border-bottom:1px solid var(--color-black);
  background:var(--color-white);
}
.ti-nav-inner{
  max-width:var(--max-width);
  margin:0 auto;
  padding:0 20px;
}
.ti-nav ul{
  list-style:none;
  margin:0;
  padding:0;
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:0;
}
.ti-nav li{border-right:1px solid var(--color-gray-light);}
.ti-nav li:last-child{border-right:none;}
.ti-nav a{
  display:block;
  padding:12px 16px;
  font-size:13px;
  font-weight:600;
  text-transform:uppercase;
  letter-spacing:.03em;
}
.ti-nav a:hover{background:var(--color-gray-bg);text-decoration:none;}

/* ===== LAYOUT CONTAINERS ===== */
.ti-container{max-width:var(--max-width);margin:0 auto;padding:20px;}
.ti-homepage-grid{
  display:grid;
  grid-template-columns:2fr 1fr;
  gap:30px;
  border-bottom:1px solid var(--color-gray-light);
  padding-bottom:30px;
  margin-bottom:30px;
}

/* Lead story */
.ti-lead-story h2{
  font-family:var(--font-serif);
  font-size:38px;
  line-height:1.1;
  margin:16px 0 10px;
}
.ti-lead-story img{margin-bottom:12px;}
.ti-lead-story .ti-excerpt{
  font-family:var(--font-serif);
  font-size:17px;
  color:var(--color-gray-dark);
}

/* Secondary column stories */
.ti-secondary-list article{
  border-bottom:1px solid var(--color-gray-light);
  padding:14px 0;
}
.ti-secondary-list article:first-child{padding-top:0;}
.ti-secondary-list h3{
  font-family:var(--font-serif);
  font-size:19px;
  margin:0 0 6px;
  line-height:1.25;
}

/* Category / section blocks below */
.ti-section-block{margin-bottom:40px;}
.ti-section-title{
  font-family:var(--font-serif);
  font-weight:700;
  font-size:22px;
  text-transform:uppercase;
  letter-spacing:.03em;
  border-bottom:3px solid var(--color-black);
  padding-bottom:6px;
  margin-bottom:16px;
}
.ti-grid-3{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:24px;
}
.ti-card h3{
  font-family:var(--font-serif);
  font-size:18px;
  margin:10px 0 6px;
  line-height:1.3;
}
.ti-card .ti-meta{
  font-size:12px;
  color:var(--color-gray-mid);
  text-transform:uppercase;
  letter-spacing:.03em;
}
.ti-card .ti-excerpt{font-size:14px;color:var(--color-gray-dark);margin-top:6px;}

/* ===== SINGLE POST ===== */
.ti-single-header{
  max-width:800px;margin:0 auto 20px;text-align:left;
}
.ti-single-header .ti-kicker{
  color:var(--color-accent);
  font-weight:700;
  text-transform:uppercase;
  font-size:12px;
  letter-spacing:.05em;
}
.ti-single-header h1{
  font-family:var(--font-serif);
  font-size:42px;
  line-height:1.1;
  margin:8px 0 12px;
}
.ti-single-header .ti-byline{
  font-size:13px;
  color:var(--color-gray-mid);
  border-top:1px solid var(--color-gray-light);
  border-bottom:1px solid var(--color-gray-light);
  padding:10px 0;
}
.ti-single-content{
  max-width:700px;margin:0 auto;
  font-family:var(--font-serif);
  font-size:19px;
  line-height:1.7;
  color:var(--color-black);
}
.ti-single-content p{margin:0 0 22px;}
.ti-single-content h2,.ti-single-content h3{font-family:var(--font-serif);}
.ti-single-content img{margin:20px 0;}
.ti-single-content blockquote{
  border-left:3px solid var(--color-black);
  padding-left:20px;
  font-style:italic;
  color:var(--color-gray-dark);
}

/* ===== SIDEBAR / WIDGETS ===== */
.ti-widget{margin-bottom:30px;}
.ti-widget-title{
  font-family:var(--font-serif);
  font-weight:700;
  text-transform:uppercase;
  font-size:16px;
  border-bottom:2px solid var(--color-black);
  padding-bottom:6px;
  margin-bottom:12px;
}

/* ===== FOOTER ===== */
.ti-footer{
  background:var(--color-black);
  color:var(--color-white);
  margin-top:40px;
  padding:40px 0 20px;
}
.ti-footer-inner{max-width:var(--max-width);margin:0 auto;padding:0 20px;}
.ti-footer-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:20px;
  margin-bottom:20px;
}
.ti-footer h4{
  font-family:var(--font-serif);
  font-size:14px;
  text-transform:uppercase;
  border-bottom:1px solid #444;
  padding-bottom:6px;
}
.ti-footer ul{list-style:none;padding:0;margin:0;}
.ti-footer li{margin-bottom:6px;font-size:13px;}
.ti-footer a{color:#ccc;}
.ti-footer-bottom{
  border-top:1px solid #444;
  padding-top:14px;
  font-size:12px;
  color:#999;
  text-align:center;
}

/* ===== RESPONSIVE ===== */
@media (max-width:900px){
  .ti-homepage-grid{grid-template-columns:1fr;}
  .ti-grid-3{grid-template-columns:repeat(2,1fr);}
  .ti-footer-grid{grid-template-columns:repeat(2,1fr);}
  .ti-logo{font-size:36px;}
}
@media (max-width:600px){
  .ti-grid-3{grid-template-columns:1fr;}
  .ti-footer-grid{grid-template-columns:1fr;}
  .ti-nav ul{justify-content:flex-start;overflow-x:auto;}
  .ti-single-header h1{font-size:30px;}
}
