/*
Theme Name: QuotesFresh
Theme URI: https://quotesfresh.com/
Description: A fresh-market stand for quotes. Crisp white background, citrus crate colours per shelf, bold grotesk headlines, quote crates with a juicy top stripe and a leaf dot, a fresh-pick card on the home page and a quote card maker.
Version: 1.0.0
Requires at least: 6.0
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: quotesfresh
*/

/* Fonts: Familjen Grotesk, Golos Text and Noto families (SIL OFL), served locally. */
@font-face{font-family:"Familjen Grotesk";src:url(assets/fonts/familjen-grotesk-latin-400-normal.woff2) format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"Familjen Grotesk";src:url(assets/fonts/familjen-grotesk-latin-600-normal.woff2) format("woff2");font-weight:600;font-display:swap}
@font-face{font-family:"Familjen Grotesk";src:url(assets/fonts/familjen-grotesk-latin-700-normal.woff2) format("woff2");font-weight:700;font-display:swap}
@font-face{font-family:"Golos Text";src:url(assets/fonts/golos-text-latin-400-normal.woff2) format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"Golos Text";src:url(assets/fonts/golos-text-latin-600-normal.woff2) format("woff2");font-weight:600;font-display:swap}
@font-face{font-family:"Noto Sans Devanagari";src:url(assets/fonts/noto-sans-devanagari-devanagari-400-normal.woff2) format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"Noto Sans Devanagari";src:url(assets/fonts/noto-sans-devanagari-devanagari-600-normal.woff2) format("woff2");font-weight:600;font-display:swap}
@font-face{font-family:"Noto Sans Tamil";src:url(assets/fonts/noto-sans-tamil-tamil-400-normal.woff2) format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"Noto Sans Gurmukhi";src:url(assets/fonts/noto-sans-gurmukhi-gurmukhi-400-normal.woff2) format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"Noto Nastaliq Urdu";src:url(assets/fonts/noto-nastaliq-urdu-arabic-400-normal.woff2) format("woff2");font-weight:400;font-display:swap}
:root{
	--bg:#fdfdfa;--panel:#ffffff;--card:#ffffff;--edge:#e8e8df;--edge2:#d5d5c6;
	--ink:#161d18;--ink2:#47503f;--faint:#86907c;
	--card-ink:#161d18;--card-ink2:#5a6450;
	--hot:#16a34a;--berry:#be185d;--tang:#ea580c;--plum:#7e22ce;--sky:#0284c7;--st:#16a34a;
	--disp:"Familjen Grotesk",system-ui,sans-serif;
	--ui:"Golos Text",system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
	--shadow:0 1px 2px rgba(22,29,24,.06),0 14px 28px -20px rgba(22,29,24,.25);
	--r:16px;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:86px;overflow-x:clip}
body{margin:0;background:var(--bg);color:var(--ink);font:400 16.5px/1.65 var(--ui);overflow-x:clip}
body::before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;opacity:.6;background:
	radial-gradient(420px 300px at 90% -4%,rgba(22,163,74,.09),transparent 65%),
	radial-gradient(380px 300px at -4% 24%,rgba(234,88,12,.08),transparent 60%)}
img{max-width:100%;height:auto}
a{color:var(--hot)}
h1,h2,h3{font-family:var(--disp);letter-spacing:-.4px}
[lang="hi"],[lang="mr"]{font-family:"Noto Sans Devanagari",var(--ui)}
[lang="ta"]{font-family:"Noto Sans Tamil",var(--ui)}
[lang="pa"]{font-family:"Noto Sans Gurmukhi",var(--ui)}
[lang="ur"]{font-family:"Noto Nastaliq Urdu",var(--ui);line-height:2}

/* ------------------------------------------------------------------ header */
.fh-skip{position:absolute;left:-999px;top:8px;background:var(--ink);color:#fff;padding:8px 14px;border-radius:10px;z-index:99}
.fh-skip:focus{left:8px}
.fh-wrap{max-width:1120px;margin:0 auto;padding:0 18px}
.fh-top{position:sticky;top:0;z-index:40;background:rgba(253,253,250,.93);backdrop-filter:blur(8px);border-bottom:1px solid var(--edge)}
.fh-top-row{display:flex;align-items:center;gap:16px;min-height:62px}
.fh-logo{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink);flex:none}
.fh-logo span{font:700 21px/1 var(--disp);letter-spacing:-.6px}
.fh-logo b{font-weight:700;color:var(--hot)}
.fh-nav{display:flex;gap:2px;margin-left:auto}
.fh-nav a{color:var(--ink2);text-decoration:none;font:600 14px/1 var(--ui);padding:10px 12px;border-radius:12px}
.fh-nav a:hover{background:#f0f4ec;color:var(--ink)}
.fh-menubtn{display:flex;align-items:center;gap:8px;border:0;background:var(--ink);color:#fff;font:600 13.5px/1 var(--ui);border-radius:12px;padding:10px 16px;cursor:pointer}
.fh-menubtn-bars{width:15px;height:2px;background:currentColor;position:relative;display:inline-block}
.fh-menubtn-bars::before,.fh-menubtn-bars::after{content:"";position:absolute;left:0;right:0;height:2px;background:currentColor}
.fh-menubtn-bars::before{top:-5px}.fh-menubtn-bars::after{top:5px}
.fh-drawer{border-top:1px solid var(--edge);background:var(--panel);box-shadow:var(--shadow)}
.fh-drawer-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:18px;padding:20px 18px 24px}
.fh-drawer-h{margin:0 0 7px;font:700 12px/1 var(--disp);letter-spacing:1.6px;text-transform:uppercase;color:var(--st)}
.fh-drawer-col ul{list-style:none;margin:0;padding:0}
.fh-drawer-col a{display:block;color:var(--ink2);text-decoration:none;font:600 14.5px/1.3 var(--ui);padding:6px 0}
.fh-drawer-col a:hover{color:var(--st)}

/* -------------------------------------------------------------------- hero */
.fh-hero{padding:46px 0 30px}
.fh-hero-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);gap:40px;align-items:start}
.fh-pill{display:inline-flex;align-items:center;gap:8px;background:#ecfbf1;border:1px solid #bce8cb;color:#116b34;border-radius:12px;padding:8px 13px;font:600 12.5px/1 var(--ui);letter-spacing:.8px;text-transform:uppercase;margin:0 0 16px}
.fh-pill::before{content:"";width:9px;height:9px;border-radius:50% 50% 50% 2px;background:var(--hot);transform:rotate(45deg)}
.fh-hero h1{margin:0 0 14px;font:700 clamp(30px,4.4vw,48px)/1.06 var(--disp)}
.fh-hero-lede{margin:0 0 18px;font-size:17.5px;color:var(--ink2);max-width:52ch}
.fh-tryvibes{display:flex;flex-wrap:wrap;gap:8px}
.fh-tryvibes button{border:1px solid var(--edge2);background:var(--panel);color:var(--ink2);font:600 13px/1 var(--ui);border-radius:12px;padding:8px 14px;cursor:pointer}
.fh-tryvibes button[aria-pressed=true]{background:var(--hot);border-color:var(--hot);color:#fff}

/* fresh pick crate */
.fh-phone{position:relative}
.fh-phone-shell{position:relative;background:var(--panel);border:1px solid var(--edge);border-radius:20px;box-shadow:var(--shadow);padding:22px 24px 16px;text-align:center;overflow:hidden}
.fh-phone-shell::before{content:"";position:absolute;left:0;right:0;top:0;height:10px;background:repeating-linear-gradient(90deg,var(--hot) 0 28px,var(--tang) 28px 56px,var(--berry) 56px 84px,var(--plum) 84px 112px,var(--sky) 112px 140px)}
.fh-phone-pic{width:64px;height:64px;margin:8px auto 10px;border-radius:50% 50% 50% 4px;background:linear-gradient(135deg,#bce8cb,#16a34a);transform:rotate(45deg);position:relative}
.fh-phone-pic span{position:absolute;inset:16px;border-radius:50%;background:#fff;transform:rotate(-45deg)}
.fh-phone-user{margin:0 0 8px;font:700 10.5px/1 var(--disp);letter-spacing:2.6px;text-transform:uppercase;color:var(--faint)}
.fh-phone-caption{margin:0 auto 12px;font:600 20px/1.5 var(--disp);color:var(--card-ink);min-height:90px;max-width:32ch;white-space:pre-line}
.fh-phone-use{display:flex;justify-content:space-between;align-items:baseline;gap:10px;margin:0;border-top:1px solid var(--edge);padding-top:10px;font:600 13px/1.3 var(--ui);color:var(--faint)}
.fh-phone-use a{color:var(--tang);text-decoration:none;font-weight:600}
.fh-phone-acts{display:flex;gap:9px;margin-top:14px;justify-content:center}

/* ----------------------------------------------------------------- buttons */
.fh-btn{display:inline-flex;align-items:center;gap:7px;border:1px solid var(--edge2);background:var(--panel);color:var(--ink);font:600 14px/1 var(--ui);border-radius:12px;padding:10px 17px;cursor:pointer;text-decoration:none}
.fh-btn:hover{border-color:var(--hot);color:var(--hot)}
.fh-btn--hot{background:var(--hot);border-color:var(--hot);color:#fff}
.fh-btn--hot:hover{background:#12813b;border-color:#12813b;color:#fff}

/* ----------------------------------------------------------------- streams */
.fh-stream{padding:26px 0 8px}
.fh-stream-h{margin:0 0 16px;font:700 24px/1.1 var(--disp);display:flex;align-items:center;gap:11px}
.fh-stream-h::before{content:"";width:13px;height:13px;border-radius:50% 50% 50% 2px;background:var(--st);transform:rotate(45deg)}
.fh-tiles{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(225px,1fr));gap:15px}
.fh-tile a{display:flex;flex-direction:column;gap:10px;height:100%;background:var(--panel);border:1px solid var(--edge);border-radius:var(--r);padding:0 13px 13px;text-decoration:none;color:var(--card-ink);box-shadow:var(--shadow);transition:transform .14s ease,border-color .14s ease;overflow:hidden}
.fh-tile a:hover{transform:translateY(-4px);border-color:var(--st)}
.fh-tile-bubble{position:relative;margin:0 -13px 0;border-radius:0;padding:20px 15px 14px;font:600 15.5px/1.55 var(--disp);color:var(--card-ink);background:color-mix(in srgb,var(--st) 8%,#fff);border-top:6px solid var(--st);white-space:pre-line}
.fh-tile-meta{display:flex;justify-content:space-between;align-items:baseline;gap:8px}
.fh-tile-meta b{font:700 15.5px/1.3 var(--disp);color:var(--card-ink)}
.fh-tile-meta small{color:var(--card-ink2);font-size:12px;flex:none}

/* ------------------------------------------------------------- page header */
.fh-pagehead{padding:40px 0 10px;border-bottom:1px solid var(--edge);background:linear-gradient(180deg,color-mix(in srgb,var(--st) 7%,var(--bg)) 0%,var(--bg) 100%)}
.fh-trail{display:flex;flex-wrap:wrap;gap:6px;list-style:none;margin:0 0 12px;padding:0;font:600 12.5px/1 var(--ui);color:var(--faint)}
.fh-trail a{color:var(--faint);text-decoration:none}
.fh-trail a:hover{color:var(--st)}
.fh-trail li+li::before{content:"\203A";margin-right:6px}
.fh-pagehead h1{margin:0 0 10px;font:700 clamp(27px,3.8vw,42px)/1.08 var(--disp)}
.fh-pagehead-meta{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 18px}
.fh-pagehead-meta span{background:var(--panel);border:1px solid var(--edge2);border-radius:10px;color:var(--ink2);font:600 12px/1 var(--ui);letter-spacing:.6px;text-transform:uppercase;padding:7px 11px}

/* ---------------------------------------------------------- bar and chips */
.fh-opening{max-width:72ch}
.fh-opening p{margin:0 0 12px;color:var(--ink2)}
.fh-bar{position:sticky;top:62px;z-index:30;display:flex;flex-wrap:wrap;align-items:center;gap:10px;background:rgba(255,255,255,.94);backdrop-filter:blur(8px);border:1px solid var(--edge);border-radius:16px;box-shadow:var(--shadow);padding:9px 14px;margin:20px 0}
.fh-view{display:inline-flex;border:1px solid var(--edge2);border-radius:10px;overflow:hidden;flex:none}
.fh-view button{border:0;background:transparent;color:var(--ink2);font:600 12.5px/1 var(--ui);padding:8px 13px;cursor:pointer}
.fh-view button[aria-pressed=true]{background:var(--ink);color:#fff}
body[data-fh-view=roman] .fh-row-roman{display:block}
body[data-fh-view=roman] .fh-row-text:has(+ .fh-row-roman){display:none}
.fh-row-roman{display:none}
.fh-vibes{display:flex;flex-wrap:wrap;gap:6px}
.fh-chip{border:1px solid var(--edge2);background:transparent;color:var(--ink2);font:600 12.5px/1 var(--ui);border-radius:10px;padding:7px 11px;cursor:pointer}
.fh-chip span{opacity:.6}
.fh-chip[aria-pressed=true]{background:var(--hot);border-color:var(--hot);color:#fff}
.fh-jumps{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 6px}
.fh-jumps a{background:var(--panel);border:1px solid var(--edge);border-radius:10px;color:var(--ink2);text-decoration:none;font:600 13px/1 var(--ui);padding:8px 13px}
.fh-jumps a:hover{border-color:var(--st);color:var(--st)}

/* -------------------------------------------------------------------- rows */
.fh-part{padding:8px 0 4px}
.fh-part h2{margin:18px 0 6px;font:700 22px/1.15 var(--disp)}
.fh-part>p{margin:0 0 12px;color:var(--ink2);max-width:72ch}
.fh-rows{display:grid;grid-template-columns:repeat(auto-fill,minmax(310px,1fr));gap:13px;margin:14px 0 8px}
.fh-row{position:relative;display:flex;flex-direction:column;gap:9px;background:var(--panel);border:1px solid var(--edge);border-radius:var(--r);box-shadow:var(--shadow);padding:16px 16px 13px;overflow:hidden}
.fh-row::before{content:"";position:absolute;left:0;right:0;top:0;height:5px;background:var(--st);opacity:.85}
.fh-row::after{content:"";position:absolute;right:13px;top:13px;width:9px;height:9px;border-radius:50% 50% 50% 2px;background:var(--st);opacity:.5;transform:rotate(45deg)}
.fh-row[hidden]{display:none}
.fh-row-text,.fh-row-roman{margin:4px 0 0;font:600 17px/1.6 var(--disp);color:var(--card-ink);white-space:pre-line;overflow-wrap:break-word}
.fh-row-by{display:none}
.fh-row-acts{display:flex;gap:7px;order:3}
.fh-do{border:1px solid var(--edge2);background:transparent;color:var(--ink);font:600 12.5px/1 var(--ui);border-radius:10px;padding:7px 14px;cursor:pointer}
.fh-do:hover{border-color:var(--hot);color:var(--hot)}
.fh-do--card{color:var(--tang)}
.fh-row-meta{display:flex;flex-wrap:wrap;align-items:center;gap:7px;font:600 12px/1 var(--ui);order:2}
.fh-vibe{background:color-mix(in srgb,var(--st) 9%,#fff);border:1px solid color-mix(in srgb,var(--st) 28%,#fff);color:var(--st);border-radius:8px;padding:5px 9px;letter-spacing:.6px;text-transform:uppercase;font-weight:600;font-size:10.5px}
.fh-use{color:var(--faint)}
.fh-tags{display:none}
.fh-tool{display:none}

/* ------------------------------------------------------------ prose, guide */
.fh-read{display:grid;grid-template-columns:minmax(0,1fr);gap:26px;padding:26px 0 10px}
.fh-read--narrow{max-width:820px}
.fh-prose{max-width:72ch}
.fh-prose p{margin:0 0 13px;color:var(--ink2)}
.fh-prose h2{margin:26px 0 10px;font:700 23px/1.15 var(--disp);color:var(--ink)}
.fh-prose h3{margin:18px 0 8px;font:700 18px/1.2 var(--disp)}
.fh-prose ul,.fh-prose ol{margin:0 0 13px;padding-left:22px;color:var(--ink2)}
.fh-prose li{margin:0 0 6px}
.fh-guide{border-top:1px solid var(--edge);margin-top:18px;padding-top:6px;max-width:72ch}
.fh-guide h2{font:700 23px/1.15 var(--disp)}
.fh-guide p,.fh-guide li{color:var(--ink2)}
.fh-guide ul,.fh-guide ol{padding-left:22px}
.fh-table{overflow-x:auto;margin:0 0 14px}
.fh-table table{border-collapse:collapse;width:100%;background:var(--panel);border:1px solid var(--edge);border-radius:12px;font-size:15px}
.fh-table th,.fh-table td{text-align:left;border-bottom:1px solid var(--edge);padding:10px 13px;color:var(--ink2)}
.fh-table th{font:700 12.5px/1.2 var(--ui);letter-spacing:.8px;text-transform:uppercase;color:var(--ink)}
.fh-faq{max-width:72ch;padding:4px 0 10px}
.fh-faq h2{font:700 23px/1.15 var(--disp)}
.fh-faq details{background:var(--panel);border:1px solid var(--edge);border-radius:12px;margin:0 0 9px;box-shadow:var(--shadow)}
.fh-faq summary{cursor:pointer;font:600 15.5px/1.35 var(--ui);padding:13px 16px;color:var(--ink)}
.fh-faq-a{padding:0 16px 13px;color:var(--ink2)}
.fh-faq-a p{margin:0 0 8px}

/* ------------------------------------------------------------ photo cards */
.fh-cards{padding:8px 0 20px}
.fh-cards-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin:0 0 12px}
.fh-cards-head h2{margin:0;font:700 23px/1.15 var(--disp)}
.fh-cards-head p{margin:0;color:var(--faint);font-size:14px}
.fh-cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(168px,1fr));gap:13px;overflow:clip;padding:2px}
.fh-cards-grid figure{margin:0;background:var(--panel);border:1px solid var(--edge);border-radius:14px;padding:7px;box-shadow:var(--shadow)}
.fh-cards-grid img{display:block;width:100%;border-radius:9px}
.fh-cards-grid figcaption{font:600 12px/1.4 var(--ui);color:var(--faint);padding:7px 3px 1px}

/* ---------------------------------------------------------------- related */
.fh-related{padding:6px 0 26px}
.fh-related h2{font:700 23px/1.15 var(--disp)}
.fh-related ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:9px}
.fh-related a{display:inline-block;background:var(--panel);border:1px solid var(--edge2);border-radius:12px;color:var(--ink2);text-decoration:none;font:600 13.5px/1 var(--ui);padding:9px 15px}
.fh-related a:hover{border-color:var(--st);color:var(--st)}

/* ------------------------------------------------------- posts, blog lists */
.fh-latest{padding:10px 0 30px}
.fh-latest h2{font:700 23px/1.15 var(--disp)}
.fh-latest ul{list-style:none;margin:0;padding:0;display:grid;gap:9px}
.fh-latest a{display:flex;justify-content:space-between;gap:14px;background:var(--panel);border:1px solid var(--edge);border-radius:14px;padding:13px 16px;text-decoration:none;color:var(--ink)}
.fh-latest b{font:600 15.5px/1.35 var(--ui)}
.fh-latest small{color:var(--faint);flex:none}
.fh-latest-more{display:inline-block;margin-top:12px;color:var(--hot);font-weight:600}
.fh-postlist{display:grid;gap:11px;padding:4px 0 26px}
.fh-postrow{background:var(--panel);border:1px solid var(--edge);border-radius:14px;padding:15px 18px;box-shadow:var(--shadow)}
.fh-postrow h2{margin:0 0 5px;font:700 18px/1.3 var(--disp)}
.fh-postrow a{color:var(--ink);text-decoration:none}
.fh-postrow a:hover{color:var(--st)}
.fh-date{color:var(--faint);font-size:13px}
.fh-list-title{padding:34px 0 6px}
.fh-list-title h1{margin:0;font:700 clamp(26px,3.5vw,36px)/1.1 var(--disp)}
.fh-pager{display:flex;gap:10px;justify-content:center;padding:4px 0 30px}
.fh-pager a,.fh-pager span{background:var(--panel);border:1px solid var(--edge);border-radius:10px;padding:9px 14px;color:var(--ink2);text-decoration:none;font:600 14px/1 var(--ui)}
.fh-pager .current{background:var(--hot);border-color:var(--hot);color:#fff}

/* --------------------------------------------------------------------- ad */
.fh-ad{margin:18px auto;text-align:center}

/* ------------------------------------------------------------------ toast */
.fh-toast{position:fixed;left:50%;bottom:26px;transform:translateX(-50%);z-index:90;background:var(--ink);color:#fff;font:600 14px/1 var(--ui);border-radius:12px;padding:12px 20px;box-shadow:var(--shadow)}

/* ----------------------------------------------------------------- footer */
.fh-foot{margin-top:34px;border-top:1px solid var(--edge);background:var(--panel)}
.fh-foot-grid{display:grid;grid-template-columns:minmax(0,1.3fr) repeat(auto-fit,minmax(150px,1fr));gap:26px;padding:34px 18px 26px}
.fh-foot-brand p{margin:0 0 8px;color:var(--ink2);font-size:14.5px;max-width:40ch}
.fh-logo--foot{margin:0 0 10px}
.fh-logo--foot span{font:700 20px/1 var(--disp)}
.fh-foot-h{margin:0 0 8px;font:700 12px/1 var(--disp);letter-spacing:1.6px;text-transform:uppercase;color:var(--st)}
.fh-foot-col ul{list-style:none;margin:0;padding:0}
.fh-foot-col a{display:block;color:var(--ink2);text-decoration:none;font:600 14px/1.4 var(--ui);padding:5px 0}
.fh-foot-col a:hover{color:var(--st)}
.fh-foot-legal{display:flex;flex-wrap:wrap;gap:8px 18px;align-items:center;border-top:1px solid var(--edge);padding:14px 18px 18px;font-size:13px;color:var(--faint)}
.fh-foot-legal a{color:var(--faint)}

/* ------------------------------------------------------------- responsive */
@media (max-width:900px){
	.fh-hero-grid{grid-template-columns:1fr;gap:26px}
	.fh-nav{display:none}
}
@media (max-width:640px){
	.fh-hero{padding:30px 0 20px}
	.fh-bar{position:static}
	.fh-rows{grid-template-columns:1fr}
	.fh-tiles{grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}
	.fh-foot-grid{grid-template-columns:1fr 1fr}
}
