/*
Theme Name: Rice Fields Times
Theme URI: https://ricefieldsrestaurant.com.au/
Template: generatepress
Author: Rice Fields Times
Author URI: https://ricefieldsrestaurant.com.au/
Description: A classic newspaper / news-magazine GeneratePress child theme — bold serif masthead, category nav, lead story, multi-column article grids, and built-in NewsArticle + Article schema. Includes About, Contact, Editorial Policy, Corrections, Privacy, Terms and Disclaimer pages. Requires the free GeneratePress parent theme.
Version: 1.0.0
Requires at least: 6.0
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: ricefields-times
*/

/* =========================================================
   Tokens
   ========================================================= */
:root{
  --rn-ink:     #1a1a1a;
  --rn-ink-2:   #333;
  --rn-paper:   #ffffff;
  --rn-paper-2: #f5f3ef;
  --rn-muted:   #6b6b6b;
  --rn-line:    #e2ddd4;
  --rn-line-2:  #cfc8bb;
  --rn-red:     #b31217;
  --rn-red-2:   #8f0e12;
  --rn-max:     1220px;
  --rn-head:    "Playfair Display", Georgia, "Times New Roman", serif;
  --rn-body:    "PT Serif", Georgia, "Times New Roman", serif;
  --rn-sans:    "Libre Franklin", -apple-system, "Segoe UI", Arial, sans-serif;
}

body.rn-site{background:var(--rn-paper);color:var(--rn-ink);font-family:var(--rn-body);margin:0;line-height:1.7;font-size:17px;-webkit-font-smoothing:antialiased}
.rn-site *{box-sizing:border-box}
.rn-site img{max-width:100%;height:auto;display:block}
.rn-site a{color:var(--rn-ink);text-decoration:none;transition:color .15s ease}
.rn-site a:hover{color:var(--rn-red)}
.rn-wrap{max-width:var(--rn-max);margin:0 auto;padding:0 22px}
.rn-site h1,.rn-site h2,.rn-site h3,.rn-site h4{font-family:var(--rn-head);font-weight:800;line-height:1.14;margin:0;color:var(--rn-ink)}
.rn-kicker{font-family:var(--rn-sans);text-transform:uppercase;letter-spacing:.12em;font-size:.72rem;font-weight:700;color:var(--rn-red)}
.rn-center{text-align:center}

/* Buttons */
.rn-btn{display:inline-flex;align-items:center;gap:8px;background:var(--rn-red);color:#fff;font-family:var(--rn-sans);font-weight:700;letter-spacing:.04em;text-transform:uppercase;font-size:.8rem;padding:13px 26px;border:0;cursor:pointer;transition:background .2s}
.rn-btn:hover{background:var(--rn-red-2);color:#fff}
.rn-btn--ghost{background:transparent;border:1px solid var(--rn-ink);color:var(--rn-ink)}
.rn-btn--ghost:hover{background:var(--rn-ink);color:#fff}
.rn-site a.rn-btn{color:#fff}
.rn-site a.rn-btn--ghost{color:var(--rn-ink)}
.rn-site a.rn-btn--ghost:hover{color:#fff}

/* =========================================================
   Masthead / header
   ========================================================= */
.rn-topbar{border-bottom:1px solid var(--rn-line);font-family:var(--rn-sans);font-size:.76rem;color:var(--rn-muted)}
.rn-topbar .rn-wrap{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:7px 22px;flex-wrap:wrap}
.rn-topbar .date{text-transform:uppercase;letter-spacing:.08em}
.rn-topbar .links a{color:var(--rn-muted);margin-left:16px}
.rn-topbar .links a:hover{color:var(--rn-red)}

.rn-masthead{text-align:center;padding:22px 22px 18px}
.rn-masthead .brand{font-family:var(--rn-head);font-weight:900;font-size:clamp(2.4rem,6vw,4.4rem);letter-spacing:.01em;line-height:1;color:var(--rn-ink);display:inline-block}
.rn-masthead .brand:hover{color:var(--rn-ink)}
.rn-masthead .sub{font-family:var(--rn-sans);text-transform:uppercase;letter-spacing:.36em;font-size:.72rem;color:var(--rn-muted);margin-top:12px}
.rn-masthead img{max-height:80px;width:auto;margin:0 auto}

/* Category nav */
.rn-nav{background:var(--rn-ink);position:sticky;top:0;z-index:200}
.rn-nav-inner{display:flex;align-items:center;justify-content:center;gap:2px;flex-wrap:wrap;position:relative}
.rn-nav ul{display:flex;align-items:center;gap:0;list-style:none;margin:0;padding:0;flex-wrap:wrap;justify-content:center}
.rn-nav a{display:block;color:#f3f0ea;font-family:var(--rn-sans);font-weight:600;text-transform:uppercase;letter-spacing:.08em;font-size:.82rem;padding:13px 15px}
.rn-nav a:hover,.rn-nav .current-menu-item>a{color:#fff;background:var(--rn-red)}
.rn-nav li{position:relative}
.rn-nav .sub-menu{display:none;position:absolute;top:100%;left:0;background:var(--rn-ink);min-width:210px;padding:4px 0;z-index:30}
.rn-nav li:hover>.sub-menu{display:block}
.rn-nav .sub-menu a{padding:10px 16px;letter-spacing:.04em}
.rn-burger{display:none;background:none;border:0;color:#fff;cursor:pointer;padding:12px 14px;position:absolute;right:6px;top:50%;transform:translateY(-50%)}
.rn-burger svg{width:24px;height:24px}

/* =========================================================
   Layout helpers
   ========================================================= */
.rn-section{padding:40px 0}
.rn-sectitle{display:flex;align-items:center;gap:14px;margin:0 0 22px}
.rn-sectitle h2{font-size:1.5rem;text-transform:uppercase;letter-spacing:.02em;white-space:nowrap}
.rn-sectitle::after{content:"";height:3px;background:var(--rn-ink);flex:1}
.rn-sectitle--red h2{color:var(--rn-red)}
.rn-meta{font-family:var(--rn-sans);font-size:.74rem;color:var(--rn-muted);text-transform:uppercase;letter-spacing:.06em}
.rn-cat{font-family:var(--rn-sans);font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--rn-red)}

/* Hero / lead story */
.rn-lead{display:grid;grid-template-columns:1.6fr 1fr;gap:34px;padding-top:30px;border-top:3px solid var(--rn-ink);margin-top:0}
@media(max-width:900px){.rn-lead{grid-template-columns:1fr;gap:26px}}
.rn-lead__main .rn-lead__img{aspect-ratio:16/9;background-size:cover;background-position:center;background-color:var(--rn-paper-2);margin-bottom:16px}
.rn-lead__main h1{font-size:clamp(1.9rem,4.2vw,3rem);margin:10px 0 12px}
.rn-lead__main h1 a{color:var(--rn-ink)}
.rn-lead__main p{font-size:1.05rem;color:var(--rn-ink-2);margin:0}
.rn-lead__side{display:flex;flex-direction:column;gap:18px}
.rn-side-item{display:grid;grid-template-columns:1fr;gap:6px;padding-bottom:18px;border-bottom:1px solid var(--rn-line)}
.rn-side-item:last-child{border-bottom:0}
.rn-side-item h3{font-size:1.15rem;line-height:1.2}
.rn-side-item .rn-side-thumb{aspect-ratio:16/9;background-size:cover;background-position:center;background-color:var(--rn-paper-2);margin-bottom:6px}

/* Article grid (cards) */
.rn-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
@media(max-width:860px){.rn-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.rn-grid{grid-template-columns:1fr}}
.rn-card__img{display:block;aspect-ratio:16/10;background-size:cover;background-position:center;background-color:var(--rn-paper-2);margin-bottom:12px}
.rn-card h3{font-size:1.25rem;line-height:1.25;margin:6px 0 8px}
.rn-card p{font-size:.95rem;color:var(--rn-ink-2);margin:0}
.rn-card .rn-meta{margin-top:8px}

/* List (compact) */
.rn-list{display:flex;flex-direction:column}
.rn-list__item{display:grid;grid-template-columns:110px 1fr;gap:14px;padding:14px 0;border-bottom:1px solid var(--rn-line)}
.rn-list__item .thumb{aspect-ratio:1/1;background-size:cover;background-position:center;background-color:var(--rn-paper-2)}
.rn-list__item h3{font-size:1.05rem;line-height:1.25}

/* Two-column content region */
.rn-cols{display:grid;grid-template-columns:1fr 320px;gap:44px}
@media(max-width:960px){.rn-cols{grid-template-columns:1fr}}
.rn-side-widget{margin-bottom:34px}
.rn-side-widget h4{font-family:var(--rn-sans);text-transform:uppercase;letter-spacing:.1em;font-size:.82rem;color:var(--rn-ink);border-bottom:2px solid var(--rn-red);padding-bottom:8px;margin:0 0 14px}
.rn-side-widget ol{margin:0;padding:0 0 0 0;list-style:none;counter-reset:rn}
.rn-side-widget ol li{counter-increment:rn;display:grid;grid-template-columns:34px 1fr;gap:10px;padding:11px 0;border-bottom:1px solid var(--rn-line);font-family:var(--rn-head);font-weight:700;font-size:1rem;line-height:1.25}
.rn-side-widget ol li::before{content:counter(rn);font-family:var(--rn-head);font-size:1.5rem;color:var(--rn-red);line-height:1}

/* =========================================================
   Inner page hero + prose
   ========================================================= */
.rn-lhero{border-top:3px solid var(--rn-ink);border-bottom:1px solid var(--rn-line);padding:26px 0 22px;margin-bottom:8px}
.rn-crumbs{font-family:var(--rn-sans);font-size:.74rem;letter-spacing:.06em;text-transform:uppercase;color:var(--rn-muted);margin-bottom:10px}
.rn-crumbs a{color:var(--rn-muted)}.rn-crumbs a:hover{color:var(--rn-red)}
.rn-lhero h1{font-size:clamp(2rem,5vw,3rem)}
.rn-prose{max-width:760px;font-size:1.08rem;color:var(--rn-ink)}
.rn-prose p{margin:0 0 20px}
.rn-prose h2{font-size:1.7rem;margin:34px 0 12px}
.rn-prose h3{font-size:1.35rem;margin:26px 0 10px}
.rn-prose ul,.rn-prose ol{margin:0 0 20px;padding-left:22px}
.rn-prose li{margin:0 0 8px}
.rn-prose a{color:var(--rn-red);text-decoration:underline}
.rn-prose blockquote{margin:24px 0;padding:12px 22px;border-left:4px solid var(--rn-red);background:var(--rn-paper-2);font-style:italic}
.rn-prose img{margin:20px 0}

/* Single article */
.rn-article{max-width:760px;margin:0 auto;padding:30px 0 10px}
.rn-article__head{border-bottom:1px solid var(--rn-line);padding-bottom:18px;margin-bottom:22px}
.rn-article__head h1{font-size:clamp(2rem,5vw,3.1rem);margin:8px 0 14px}
.rn-article__excerpt{font-family:var(--rn-body);font-size:1.2rem;color:var(--rn-ink-2);font-style:italic;margin:0 0 16px}
.rn-byline{display:flex;align-items:center;gap:12px;font-family:var(--rn-sans);font-size:.85rem;color:var(--rn-muted);flex-wrap:wrap}
.rn-byline .by{color:var(--rn-ink);font-weight:700}
.rn-byline .by a{color:var(--rn-ink)}
.rn-byline .by a:hover{color:var(--rn-red)}
.rn-figure{margin:0 0 22px}
.rn-figure figcaption{font-family:var(--rn-sans);font-size:.78rem;color:var(--rn-muted);padding-top:7px}
.rn-authorbox{margin:34px 0 6px;padding:22px;border:1px solid var(--rn-line);background:var(--rn-paper-2);display:flex;gap:16px;align-items:flex-start}
.rn-authorbox img{border-radius:50%;flex:0 0 auto}
.rn-share{display:flex;gap:10px;margin:22px 0;flex-wrap:wrap}
.rn-share a{font-family:var(--rn-sans);font-size:.76rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;border:1px solid var(--rn-line-2);padding:8px 14px;color:var(--rn-ink-2)}
.rn-share a:hover{background:var(--rn-ink);color:#fff;border-color:var(--rn-ink)}

/* Contact form */
.rn-contact{display:grid;grid-template-columns:1.3fr .7fr;gap:44px}
@media(max-width:860px){.rn-contact{grid-template-columns:1fr;gap:30px}}
.rn-form label{display:block;font-family:var(--rn-sans);font-size:.82rem;font-weight:600;margin:14px 0 6px}
.rn-form input,.rn-form textarea,.rn-form select{width:100%;padding:12px 13px;border:1px solid var(--rn-line-2);background:#fff;font-family:inherit;font-size:1rem}
.rn-form input:focus,.rn-form textarea:focus{outline:none;border-color:var(--rn-red)}
.rn-form button{margin-top:18px}
.rn-notice{background:var(--rn-paper-2);border-left:4px solid var(--rn-red);padding:13px 16px;margin-bottom:16px}
.rn-info .blk{padding:14px 0;border-bottom:1px solid var(--rn-line)}
.rn-info .lbl{font-family:var(--rn-sans);text-transform:uppercase;letter-spacing:.08em;font-size:.72rem;color:var(--rn-red);font-weight:700}
.rn-info p{margin:5px 0 0}

/* Pagination */
.rn-pagination{display:flex;gap:8px;justify-content:center;margin-top:34px;font-family:var(--rn-sans)}
.rn-pagination .page-numbers{padding:9px 14px;border:1px solid var(--rn-line-2);color:var(--rn-ink)}
.rn-pagination .current{background:var(--rn-ink);color:#fff;border-color:var(--rn-ink)}

/* =========================================================
   Footer
   ========================================================= */
.rn-footer{background:var(--rn-ink);color:#c7c2b8;margin-top:40px;padding:46px 0 0;font-family:var(--rn-body)}
.rn-footer a{color:#e7e2d8}.rn-footer a:hover{color:#fff}
.rn-footer-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:34px;padding-bottom:36px}
@media(max-width:820px){.rn-footer-grid{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.rn-footer-grid{grid-template-columns:1fr}}
.rn-footer .brand{font-family:var(--rn-head);font-weight:900;font-size:1.7rem;color:#fff}
.rn-footer p{font-size:.92rem;margin:12px 0 0;max-width:300px;color:#b7b2a8}
.rn-footer h4{font-family:var(--rn-sans);text-transform:uppercase;letter-spacing:.1em;font-size:.8rem;color:#fff;margin:0 0 14px}
.rn-footer ul{list-style:none;margin:0;padding:0}
.rn-footer li{margin-bottom:9px;font-size:.94rem}
.rn-legal{border-top:1px solid rgba(255,255,255,.14);padding:18px 0;display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;font-family:var(--rn-sans);font-size:.8rem;color:#8f8a80}
.rn-legal a{color:#8f8a80}.rn-legal a:hover{color:#fff}

/* Mobile nav */
@media(max-width:900px){
  .rn-burger{display:block}
  .rn-nav ul{flex-direction:column;align-items:stretch;width:100%;display:none}
  .rn-nav.open ul{display:flex}
  .rn-nav a{padding:13px 22px;border-top:1px solid rgba(255,255,255,.08)}
  .rn-nav .sub-menu{position:static;display:block;padding-left:16px}
}
