/*
Theme Name: Curtis Markets
Theme URI: https://curtismarkets.com.au/
Author: Curtis Markets
Description: A warm, community-first theme for Gladstone Curtis Markets.
Version: 1.2.1
Text Domain: curtis-markets
*/

:root{--ink:#2c2a24;--muted:#716b5f;--paper:#fbf7ed;--cream:#efe5ce;--red:#b84232;--red-dark:#8f2f28;--yellow:#d89a2b;--sage:#5f7657;--green-dark:#304a35;--line:#d9c9aa;--shadow:0 12.8px 36px rgba(68,52,28,.14);--radius:9.6px}
*{box-sizing:border-box}
label{font-size:12px;font-weight:700;line-height:1.2}
input[type=text],input[type=email],input[type=url],input[type=tel],input[type=number],input[type=search],input[type=password],input[type=date],input[type=datetime-local],input[type=month],input[type=week],input[type=time]{box-sizing:border-box;min-height:28px;margin-top:4px;padding:5px 6px;font-size:10px;font-weight:400;color:#555;border:1px solid #c9c9c9;line-height:1.2}
textarea{box-sizing:border-box;font-size:12px;font-weight:400;color:#555;line-height:1.2}
html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.6;background-image:radial-gradient(rgba(92,72,38,.055) 0.56px,transparent 0.56px);background-size:7.2px 7.2px}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto}.wrap{width:min(928px,calc(100% - 32px));margin-inline:auto}.screen-reader-text{position:absolute!important;clip:rect(0.8px,0.8px,0.8px,0.8px);height:0.8px;width:0.8px;overflow:hidden}.site-header{position:sticky;top:0;z-index:20;background:rgba(251,247,237,.96);backdrop-filter:blur(11.2px);border-bottom:2.4px solid var(--green-dark);box-shadow:0 2.4px 0 rgba(216,154,43,.35)}.header-inner{min-height:65.6px;display:flex;align-items:center;justify-content:space-between;gap:19.2px}.brand{display:flex;align-items:center;gap:9.6px;font-family:Georgia,serif;font-weight:800;line-height:.9;letter-spacing:-.04em}.brand-mark{width:41.6px;height:41.6px;border:2.4px solid var(--red);border-radius:50% 46% 52% 44%;display:grid;place-items:center;color:var(--red);font-size:8.8px;text-align:center;line-height:1.02;transform:rotate(-5deg);background:#fff9eb}.brand-name{font-size:38.4px}.brand-name span{display:block;color:var(--red)}.header-logo{display:block;width:auto;max-width:320px;max-height:60.8px;height:auto;object-fit:contain}.brand-name{font-size:38.4px}.brand-name span{display:block;color:var(--red)}.main-nav ul{display:flex;align-items:center;gap:19.2px;list-style:none;margin:0;padding:0;font-weight:700;font-size:11.2px}.main-nav li{position:relative}.main-nav>ul>li>a{display:block;padding:12.8px 11.2px;border-radius:4.8px;min-height:38.4px}.main-nav>ul>li>a:hover,.main-nav>ul>li>a:focus{background:var(--cream)}.main-nav .sub-menu{display:none;position:absolute;top:100%;left:-11.2px;min-width:176px;padding:8px;background:#fffdf6;border:1.6px solid var(--green-dark);border-radius:6.4px;box-shadow:4px 4px 0 rgba(216,154,43,.32);z-index:30}.main-nav .sub-menu:before{content:"";position:absolute;top:-7.2px;left:17.6px;width:11.2px;height:11.2px;background:#fffdf6;border-left:1.6px solid var(--green-dark);border-top:1.6px solid var(--green-dark);transform:rotate(45deg)}.main-nav .sub-menu li{display:block}.main-nav .sub-menu a{display:block;padding:7.2px 9.6px;border-radius:4px;white-space:nowrap}.main-nav .sub-menu a:hover,.main-nav .sub-menu a:focus{background:var(--cream);color:var(--red)}.main-nav .menu-item-has-children:hover>.sub-menu,.main-nav .menu-item-has-children:focus-within>.sub-menu{display:block}.main-nav a:hover{color:var(--red)}.nav-cta,.button{display:inline-flex;align-items:center;justify-content:center;border-radius:5.6px;padding:10.4px 16.8px;background:var(--red);color:#fff;font-weight:800;border:1.6px solid var(--red);box-shadow:2.4px 2.4px 0 var(--green-dark);transition:.2s ease}.nav-cta:hover,.button:hover{background:var(--red-dark);border-color:var(--red-dark);transform:translateY(-1.6px)}.button.secondary{background:transparent;color:var(--red)}.button.secondary:hover{color:#fff}.menu-toggle{display:none;border:0;background:none;font-size:20.8px}.hero{padding:73.6px 0 67.2px;position:relative;overflow:hidden;background:linear-gradient(135deg,#e9d8b5 0%,#fbf7ed 62%);border-bottom:0.8px solid var(--line)}.hero:before{content:"MARKET DAY";position:absolute;right:6%;top:20px;color:rgba(48,74,53,.12);font:900 clamp(41.6px,10vw,104px)/1 Georgia,serif;letter-spacing:.03em;transform:rotate(-7deg)}.hero:after{content:"";position:absolute;width:240px;height:240px;border-radius:50%;background:rgba(240,181,60,.22);right:-72px;top:-72px}.hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:1.08fr .92fr;gap:56px;align-items:center}.eyebrow{color:var(--red);font-size:9.6px;font-weight:900;letter-spacing:.15em;text-transform:uppercase}.hero h1{font-family:Georgia,serif;font-size:clamp(38.4px,7vw,67.2px);line-height:.96;letter-spacing:-.065em;margin:14.4px 0 19.2px;max-width:560px}.hero h1 em{font-style:normal;color:var(--red)}.hero p{font-size:16px;color:var(--muted);max-width:480px;margin:0 0 25.6px}.actions{display:flex;gap:9.6px;flex-wrap:wrap}.event-card{background:var(--sage);color:#fff;border-radius:var(--radius);padding:22.4px;box-shadow:var(--shadow);position:relative;overflow:hidden;border:2.4px solid #d9e1c8}.event-card:after{content:"✦  LOCAL  ✦";position:absolute;right:14.4px;top:12.8px;color:#f4d993;font:700 9.6px Georgia,serif;letter-spacing:.12em}.event-card:before{content:"";position:absolute;inset:auto -48px -72px auto;width:168px;height:168px;border-radius:50%;background:var(--green-dark);opacity:.42}.event-card>*{position:relative;z-index:1}.event-card .eyebrow{color:#f7d377}.event-card h2{font-family:Georgia,serif;font-size:30.4px;line-height:1;margin:11.2px 0 19.2px}.event-details{display:grid;gap:12px;margin:0 0 20.8px}.event-details div{display:flex;gap:9.6px;align-items:flex-start}.event-details strong{display:block}.event-details span{color:#d8d1ca;font-size:11.2px}.section{padding:70.4px 0}.section.alt{background:var(--cream)}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:28.8px}.section h2{font-family:Georgia,serif;font-size:clamp(27.2px,5vw,44.8px);line-height:1;letter-spacing:-.05em;margin:8px 0 0}.section-heading p{max-width:352px;color:var(--muted);margin:0}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.feature{position:relative;min-height:240px;display:flex;flex-direction:column;justify-content:flex-end;overflow:hidden;background-color:#5f7657;background-position:center;background-size:cover;border:0.8px solid #bfae88;border-radius:var(--radius);padding:22.4px;box-shadow:3.2px 3.2px 0 rgba(216,154,43,.18);isolation:isolate}.feature:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(24,37,24,.08) 15%,rgba(24,37,24,.82) 100%);z-index:-1}.feature>*{position:relative;z-index:1}.feature .icon{flex:0 0 auto}.feature h3,.feature p{color:#fff;text-shadow:0 1.6px 6.4px rgba(0,0,0,.45)}.feature .icon{width:38.4px;height:38.4px;border-radius:11.2px;display:grid;place-items:center;background:#f9dfcf;color:var(--red);font-size:19.2px;margin-bottom:17.6px}.feature h3{margin:0 0 6.4px;font-family:Georgia,serif;font-size:20px}.feature p{color:#fff;margin:0}.split{display:grid;grid-template-columns:1fr 1fr;gap:44.8px;align-items:center}.split h2{margin-bottom:16px}.split p{color:var(--muted)}.map-frame{background:#fffdf6;padding:9.6px;border-radius:3.2px;box-shadow:var(--shadow);border:0.8px solid #c9b78e;transform:rotate(1deg)}.map-frame img{display:block;border-radius:9.6px}.notice{border-left:4px solid var(--yellow);padding:12.8px 16px;background:#fff;margin:19.2px 0;color:var(--muted)}.directory-preview{display:grid;grid-template-columns:1.1fr .9fr;gap:19.2px}.directory-card{border-radius:var(--radius);padding:27.2px;background:var(--sage);color:#fff;min-height:200px;border:2.4px solid #d9e1c8;box-shadow:4.8px 4.8px 0 var(--green-dark)}.directory-card h3{font-family:Georgia,serif;font-size:28.8px;line-height:1.05;margin:0 0 14.4px}.directory-card p{color:#edf2eb}.social-card{border-radius:var(--radius);padding:27.2px;background:var(--red);color:#fff}.social-card h3{font-family:Georgia,serif;font-size:27.2px;line-height:1.05;margin:0 0 11.2px}.social-card p{color:#ffe8e3}.social-card .button.secondary{background:#fff9eb;color:var(--green-dark);border-color:#fff9eb;box-shadow:2.4px 2.4px 0 rgba(48,74,53,.7)}.social-card .button.secondary:hover{background:var(--yellow);color:var(--ink);border-color:var(--yellow)}.page-shell{padding:60.8px 0}.page-shell .content{width:100%;max-width:656px;margin-inline:auto}.page-shell h1,.entry-title{font-family:Georgia,serif;font-size:38.4px;line-height:1;letter-spacing:-.06em;margin:0 0 19.2px}.content p,.content li{color:var(--muted);font-size:14.4px}.content h2,.content h3{font-family:Georgia,serif;color:var(--ink)}.site-footer{background:var(--ink);color:#fff;padding:46.4px 0 22.4px}.footer-grid{display:grid;grid-template-columns:1.2fr .8fr .8fr;gap:32px}.site-footer h3,.site-footer .widget-title{font-family:Georgia,serif;font-size:20px;margin:0 0 11.2px}.site-footer p,.site-footer li{color:#c9c2bb}.site-footer ul{padding:0;margin:0;list-style:none;display:grid;gap:6.4px}.site-footer .widget{margin:0 0 17.6px}.site-footer .widget ul{margin:0}.site-footer .widget a:hover{color:var(--yellow)}.widget{margin:0 0 22.4px}.widget-title{font-family:Georgia,serif;font-size:20.8px;line-height:1.1;margin:0 0 11.2px}.widget ul{padding:0;margin:0;list-style:none;display:grid;gap:7.2px}.widget li{color:var(--muted)}.widget a{color:var(--red);font-weight:700}.widget p{color:var(--muted);margin:0}.widget select,.widget input,.widget textarea{max-width:100%;border:0.8px solid var(--line);border-radius:8px;padding:8px;font:inherit}.widget input[type=submit],.widget button{background:var(--red);color:#fff;border:0;border-radius:799.2px;padding:8px 12.8px;font-weight:800}.archive-layout{display:grid;grid-template-columns:minmax(0,1fr) 240px;gap:22.4px;align-items:start}.archive-layout.page-no-sidebar{display:block}.page-shell .archive-layout.page-no-sidebar .content{max-width:100%}.site-sidebar{padding-top:62.4px}.footer-bottom{border-top:0.8px solid #3c3936;margin-top:33.6px;padding-top:14.4px;color:#a9a39d;font-size:10.4px;display:flex;justify-content:space-between;gap:16px}.plugin-content{padding:0}.plugin-content form,.plugin-content table{max-width:100%}@media(max-width:860px){.main-nav{display:none}.menu-toggle{display:block}.hero-grid,.split,.directory-preview,.archive-layout{grid-template-columns:1fr;gap:33.6px}.site-sidebar{padding-top:0}.hero{padding:51.2px 0}.feature-grid{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr}.section{padding:51.2px 0}.section-heading{display:block}.section-heading p{margin-top:14.4px}.main-nav .sub-menu{position:static;min-width:0;display:block;padding:3.2px 0 3.2px 12.8px;background:transparent;border:0;box-shadow:none}.main-nav .sub-menu:before{display:none}.main-nav .sub-menu a{padding:5.6px 8px;border-left:1.6px solid var(--yellow);border-radius:0}.main-nav .menu-item-has-children:hover>.sub-menu,.main-nav .menu-item-has-children:focus-within>.sub-menu{display:block}}@media(max-width:560px){.wrap{width:min(100% - 22.4px,928px)}.header-inner{min-height:56px}.header-logo{max-width:200px;max-height:41.6px}.brand-name{font-size:19.2px}.brand-mark{width:32px;height:32px;font-size:7.2px}.hero h1{font-size:41.6px}.hero p{font-size:13.6px}.footer-grid{grid-template-columns:1fr}.footer-bottom{display:block}.footer-bottom span{display:block;margin-top:6.4px}}

/* Full-width page option: remove both theme and plugin content caps. */
.page-shell .archive-layout.page-no-sidebar .content,
.page-shell .archive-layout.page-no-sidebar .plugin-content,
.page-shell .archive-layout.page-no-sidebar .plugin-content .cm-front{width:100%;max-width:none}
.page-shell .archive-layout.page-no-sidebar .plugin-content .cm-form-grid,
.page-shell .archive-layout.page-no-sidebar .plugin-content .cm-grid,
.page-shell .archive-layout.page-no-sidebar .plugin-content .cm-business-grid{width:100%}

/* Mobile header alignment: keep the wide logo clear of the menu controls at common phone widths. */
@media(max-width:860px){.header-inner{gap:8px}.brand{min-width:0;flex:1 1 auto}.header-logo{width:auto;max-width:min(200px,48vw);max-height:41.6px}.menu-toggle{flex:0 0 auto;padding:6.4px 4px;line-height:1}.nav-cta{flex:0 0 auto;padding:7.2px 9.6px;font-size:9.6px;white-space:nowrap;box-shadow:1.6px 1.6px 0 var(--green-dark)}}
@media(max-width:380px){.header-inner{gap:5.6px}.header-logo{max-width:44vw;max-height:38.4px}.nav-cta{padding-inline:7.2px;font-size:8.8px}.menu-toggle{font-size:18.4px;padding-inline:2.4px}}

/* Title-free pages need less empty space before their content. */
.page-shell:has(.archive-layout.page-title-hidden){padding-block:25.6px}
@media(max-width:860px){.page-shell:has(.archive-layout.page-title-hidden){padding-block:19.2px}}
@media(max-width:560px){.page-shell:has(.archive-layout.page-title-hidden){padding-block:14.4px}}
