:root{
    /* Clean editorial / grid look (white & square) */
    --bg:#ffffff;
    --surface:#ffffff;
    --text:#0f172a;
    --muted:#6b7280;
    --border:#e5e7eb;

    --accent:#e69e32;   /* blue */
    --accent-2:#16a34a; /* green hint */
    --max:1180px;

    --shadow: 0 10px 30px rgba(15,23,42,.08);
    --shadow-soft: 0 6px 18px rgba(15,23,42,.06);
}

*{box-sizing:border-box}
html,body{height:100%}

body{
    margin:0;
    font:16px/1.65 ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Arial;
    color:var(--text);
    background: rgba(230, 158, 50, 0.05);;
}

/* links */
a{color:inherit;text-decoration:none}

/* container */
.container{
    max-width:var(--max);
    margin:0 auto;
    padding:0 22px;
}

/* header */
.header{
    position:sticky;
    top:0;
    z-index:10;
    background-color: rgb(250, 193, 107);
    border-bottom:1px solid var(--border);
}
.header__inner{
    display:flex;
    align-items:center;
    justify-content:space-between;
    height:72px;
}

/* brand */
.brand{
    font-weight:900;
    letter-spacing:.3px;
    color:var(--text);
}

/* nav */
.nav{
    display:flex;
    gap:18px;
}
.nav a{
    font-weight:700;
    color:var(--muted);
    padding:6px 0;
    border-bottom:2px solid transparent;
}
.nav a:hover{
    color:var(--text);
    border-bottom-color:var(--border);
}
.nav a.active{
    color:var(--text);
    border-bottom-color:var(--accent);
}

/* main */
main{padding:36px 0 70px}

/* page grid */
.page{
    display:grid;
    grid-template-columns: 1fr 300px;
    gap:42px;
    margin-top:20px;
}

/* featured */
.featured{
    display:grid;
    grid-template-columns: 1.3fr 1fr;
    gap:28px;
    padding:0;
    background:#fff;
    border:1px solid var(--border);
}

.featured img{
    width:100%;
    height:100%;
    min-height:340px;
    object-fit:cover;
    display:block;
}

.featured .content{
    padding:28px 28px 32px;
}

.featured .kicker{
    font-size:12px;
    letter-spacing:.18em;
    text-transform:uppercase;
    color:var(--muted);
    margin-top: 2%;
}

.featured h1{
    margin:14px 0 12px;
    font-size:40px;
    line-height:1.1;
    letter-spacing:-.4px;
}

.featured .meta{
    font-size:13px;
    color:var(--muted);
}

.featured p{
    margin-top:14px;
    max-width:56ch;
    color:var(--muted);
}

/* buttons */
.btn{
    display:inline-flex;
    align-items:center;
    gap:8px;
    margin-top:16px;
    padding:12px 18px;
    font-weight:800;
    color:#fff;
    background:var(--accent);
    border:1px solid var(--accent);
}
.btn:hover{
    background:#1d4ed8;
}

/* posts grid */
.big-posts{
    margin-top:36px;
    display:grid;
    grid-template-columns: repeat(3, 1fr);
    gap:26px;
}

/* post card */
.big-post{
    border:1px solid var(--border);
    background:#fff;
    transition: box-shadow .15s ease, transform .15s ease;
}
.big-post:hover{
    transform: translateY(-2px);
    box-shadow: var(--shadow);
}

.big-post img{
    width:100%;
    height:210px;
    object-fit:cover;
    display:block;
}

.big-post .meta{
    padding:14px 16px 0;
    font-size:12px;
    letter-spacing:.14em;
    text-transform:uppercase;
    color:var(--muted);
}

.big-post h2{
    padding:8px 16px 0;
    margin:0;
    font-size:22px;
    line-height:1.25;
}

.big-post h2 a{
    color:var(--text);
}
.big-post h2 a:hover{
    text-decoration:underline;
}

.big-post .card-excerpt{
    margin:10px 16px 14px;
    font-size:15px;
    line-height:1.55;
    color:var(--muted);

    display:-webkit-box;
    -webkit-line-clamp:4;
    -webkit-box-orient:vertical;
    overflow:hidden;
}

.big-post .readmore{
    display:inline-block;
    margin:0 16px 18px;
    font-weight:800;
    color:var(--accent);
}
.big-post .readmore::after{
    content:" →";
}

/* sidebar */
.sidebar{
    position:sticky;
    top:96px;
}

/* sidebar titles */
.sidebar h3{
    margin:0 0 14px;
    font-size:13px;
    letter-spacing:.18em;
    text-transform:uppercase;
    color:var(--muted);
}

/* categories */
.cat-list{
    list-style:none;
    margin:0 0 26px;
    padding:0;
    border:1px solid var(--border);
}
.cat-list li + li{
    border-top:1px solid var(--border);
}
.cat-list a{
    display:block;
    padding:14px 16px;
    font-weight:800;
    background: white;
}
.cat-list a:hover{
    background:#f8fafc;
}

/* latest */
.latest-mini{
    list-style:none;
    margin:0;
    padding:0;
    border:1px solid var(--border);
}
.latest-mini li{
    display:flex;
    gap:12px;
    padding:14px 16px;
    background: white;
}
.latest-mini li + li{
    border-top:1px solid var(--border);
}
.latest-mini img{
    width:64px;
    height:64px;
    object-fit:cover;
}
.latest-mini strong{
    display:block;
    font-size:15px;
    line-height:1.3;
}
.latest-mini small{
    font-size:12px;
    color:var(--muted);
}

/* footer */
.footer{
    border-top:1px solid var(--border);
    padding:28px 0;
    color:var(--muted);
    background: white;
}
.footer__inner{
    display:flex;
    justify-content:space-between;
    gap:14px;
    flex-wrap:wrap;
}
.footer__links a{
    margin-left:18px;
    font-weight:700;
}
.footer__links a:hover{
    text-decoration:underline;
}

/* responsive */
@media (max-width:1100px){
    .big-posts{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:980px){
    .page{grid-template-columns:1fr}
    .sidebar{position:relative;top:auto}
    .featured{grid-template-columns:1fr}
}
@media (max-width:560px){
    .big-posts{grid-template-columns:1fr}
    .nav{gap:12px}
}


/* =========================================================
   HARD OVERRIDE: remove all rounding everywhere (SQUARE UI)
   Add this at the VERY END of style_square_light.css
   ========================================================= */

html, body,
*,
*::before,
*::after {
    border-radius: 0 !important;
}

/* Images and media must be square too */
img,
svg,
video,
canvas,
iframe,
figure,
picture,
.featured img,
.big-post img,
.latest-mini img,
.about-photo {
    border-radius: 0 !important;
}

/* Buttons / links that look like buttons */
button,
input[type="button"],
input[type="submit"],
input[type="reset"],
.btn,
a.btn {
    border-radius: 0 !important;
}

/* Cards / blocks used across pages */
.featured,
.big-post,
.cat-list,
.latest-mini,
.sidebar,
.footer,
.header {
    border-radius: 0 !important;

}

/* About page local classes */
.about-hero__card,
.info-card,
.note {
    border-radius: 0 !important;
}

/* Terms / Privacy page local classes */
.toc,
.legal,
.callout,
.side-note {
    border-radius: 0 !important;
}

/* Contact page local classes */
.contact-card,
.contact-side,
.icon,
.contact-image {
    border-radius: 0 !important;
}

/* Also kill any inline radius declarations explicitly */
[style*="border-radius"] {
    border-radius: 0 !important;
}
