/*
Theme Name: Sunny Coast Coffee
Description: Custom theme for Sunshine Coffee Distributors (sunnycoastcoffee.com.au). Exact rebuild of the current design without a page builder: plain PHP templates, one stylesheet, one small script. Built by Sovereign Digital, 2026-08-31.
Author: Sovereign Digital
Version: 1.0.0
Requires PHP: 8.0
Text Domain: sunnycoast
*/

/* ---------- Fonts (self-hosted, same files the current site serves through OMGF) ---------- */
@font-face{font-family:'Lora';font-style:normal;font-weight:400 700;font-display:swap;src:url('assets/fonts/lora-normal-latin.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Lora';font-style:normal;font-weight:400 700;font-display:swap;src:url('assets/fonts/lora-normal-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Lora';font-style:italic;font-weight:400 700;font-display:swap;src:url('assets/fonts/lora-italic-latin.woff2') format('woff2')}
@font-face{font-family:'Manrope';font-style:normal;font-weight:200 800;font-display:swap;src:url('assets/fonts/manrope-normal-latin.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Manrope';font-style:normal;font-weight:200 800;font-display:swap;src:url('assets/fonts/manrope-normal-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}

/* Metric-matched fallbacks: text is laid out on these until the woff2 arrives, so the swap does not move anything. */
@font-face{font-family:'Lora Fallback';src:local('Georgia');ascent-override:100%;descent-override:27%;line-gap-override:0%;size-adjust:104%}
@font-face{font-family:'Manrope Fallback';src:local('Arial');ascent-override:93%;descent-override:26%;line-gap-override:0%;size-adjust:99%}

/* ---------- Tokens (from the current site's global kit) ---------- */
:root{
  --brown:#6C352A;      /* primary */
  --cream:#FFF1E1;      /* secondary */
  --text:#2D2926;
  --sun:#F3AA1E;        /* accent */
  --dark:#2B0F01;
  --beige:#EDE5DB;      /* "Bg Trans1" */
  --cream-61:rgba(255,241,225,.61); /* "Bg Trans2" */
  --line:rgba(43,15,1,.22);
  --serif:'Lora','Lora Fallback',Georgia,serif;
  --sans:'Manrope','Manrope Fallback',Arial,sans-serif;
  --container:1300px;
}

/* ---------- Reset / base ---------- */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:#fff;color:var(--text);font-family:var(--sans);font-size:16px;font-weight:400;line-height:1.5;overflow-x:hidden} /* the kit says 600 but the live site renders body copy at 400 (measured); nav, buttons and labels carry 600 explicitly */
img{max-width:100%;height:auto;display:block}
a{color:var(--brown);text-decoration:none}
a:hover{color:var(--sun)}
p{margin:0 0 1em}
ul{margin:0;padding:0;list-style:none}
h1,h2,h3,h4,h5,h6{font-family:var(--serif);color:var(--brown);text-transform:uppercase;margin:0 0 .5em;font-weight:300;line-height:1.2}
h1{font-size:112px;font-weight:700;line-height:1;text-align:center}
h2{font-size:51.2px;line-height:1.2}
h3{font-size:20.8px}
h4{font-size:20.8px}
.accent{color:var(--sun)}
.screen-reader-text{position:absolute!important;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);width:1px;height:1px;overflow:hidden;word-wrap:normal!important}
.container{max-width:var(--container);margin:0 auto;padding:0}
@media (max-width:1340px){.container{padding:0 20px}}
.btn{display:inline-block;background:var(--sun);color:#fff;font-family:var(--sans);font-size:15px;font-weight:600;line-height:1;padding:12px 24px;border-radius:3px;border:0;cursor:pointer;transition:background .2s}
.btn:hover{background:var(--brown);color:#fff}
.btn--brown{background:var(--brown)}
.btn--brown:hover{background:var(--sun)}
.sun{width:117px;height:auto}
.icon{display:inline-block;width:1em;height:1em;fill:currentColor;vertical-align:-.15em}

/* ---------- Top bar + header ---------- */
.topbar{position:relative;z-index:30;background:var(--brown);color:#fff;text-align:center;font-size:15px;font-weight:600;height:47px;display:flex;align-items:center;justify-content:center;gap:8px;padding:0 10px}
.topbar .icon{width:22px;height:22px}
.topbar .icon--truck{width:24px;height:24px;color:var(--sun);fill:currentColor}
.site-header{position:relative;z-index:20;height:139px}
.site-header .container{display:flex;align-items:center;justify-content:space-between;height:100%;padding:10px}
.site-header .brand img{width:256px;height:auto}
.nav-wrap{display:flex;align-items:center;gap:20px}
.main-nav ul{display:flex;align-items:center}
.main-nav a{display:block;padding:13px 20px;font-size:16px;font-weight:600;color:var(--brown);border-bottom:2px solid transparent}
.main-nav a:hover{color:var(--sun)}
.main-nav .current-menu-item > a,.main-nav .current_page_item > a,.main-nav .current-menu-ancestor > a{color:var(--sun);border-bottom-color:var(--sun)}
.cart-toggle{display:flex;align-items:center;gap:8px;padding:12px 24px;margin-left:10px;border-bottom:1px solid #F0E7DC;color:#BC9873} /* live: icon fill and badge both #bc9873 */
.cart-toggle .icon{width:30px;height:30px}
.cart-toggle .count{position:absolute;margin:-26px 0 0 26px;background:#BC9873;color:#fff;font-size:11px;line-height:18px;min-width:18px;text-align:center;border-radius:9px;padding:0 4px}
.cart-toggle .count[data-count="0"]{display:none}
.nav-toggle{display:none;background:none;border:0;padding:8px;cursor:pointer;color:var(--brown)}
.nav-toggle .icon{width:30px;height:30px}

/* ---------- Page hero (cream, sits behind the transparent header) ---------- */
.hero{background:var(--cream);margin-top:-139px;padding-top:139px;position:relative}
.hero__title{padding:0;margin:-10px 0 0}
.hero__title--home{font-size:112px;font-weight:700}
.hero__title--about{font-size:81.6px;font-weight:400}
.hero__title--services{font-size:86.4px;font-weight:400}
.hero__title--faq{font-size:112px;font-weight:700}
.hero__collage{position:relative;min-height:344px;margin-top:56px;background-repeat:no-repeat;background-size:contain;background-position:right bottom}
.hero__collage--tall{min-height:356px}
.hero__text{max-width:451px;padding:64px 0 0 100px}
.hero__text .btn{margin-top:14px}
@media (min-width:1025px){.hero__text .btn{display:none}} /* on the live site this button sits under the tilt band and never shows on desktop; it does show on mobile */
.hero__sun{margin:0 auto;padding-top:0}
.hero--plain{padding-bottom:0}
.hero--contact::after{display:none}
.hero--plain .hero__title{padding-bottom:70px}
/* tilt: brown wedge over the hero bottom, thicker on the left (same shape Elementor draws, rotated) */
.hero::after{content:"";position:absolute;left:0;right:0;bottom:0;height:50px;background:var(--brown);clip-path:polygon(0 0,100% 94%,100% 100%,0 100%);pointer-events:none}
.band{background:var(--brown);height:50px;position:relative}
.band::after{content:"";position:absolute;left:0;right:0;bottom:0;height:50px;background:var(--beige);clip-path:polygon(0 0,100% 94%,100% 100%,0 100%)}

/* ---------- Sections ---------- */
.sec{position:relative;padding:60px 0}
.sec--tall{padding:120px 0 60px}
.sec--discover{padding:120px 0}
.sec--discover .intro{max-width:1150px}
.sec--discover > .container > .sun{margin:0 auto}
.sec--discover .container > h2{margin-top:109px}
.sec--cafes{padding:78px 0 70px}
.sec--cafes h2{margin-bottom:50px}
.sec--questions{padding:60px 0 120px}
.sec--cream{background:var(--cream)}
.sec--white{background:#fff}
.sec--soft{background:var(--cream-61)}
.sec--grad-a{background:linear-gradient(180deg,var(--beige) 0%,var(--cream-61) 20%)}
.sec--grad-b{background:linear-gradient(180deg,var(--cream-61) 0%,var(--beige) 100%)}
.sec--beige{background:var(--beige)}
.two-col{display:flex;align-items:center;gap:20px}
.two-col > *{flex:1 1 0}
.two-col--gap90{gap:90px}
.two-col--gap40{gap:40px}
.masked{width:713px;max-width:100%;height:auto;-webkit-mask:url('assets/img/SCD_top.svg') center/contain no-repeat;mask:url('assets/img/SCD_top.svg') center/contain no-repeat;flex:0 0 auto}
.masked img{width:100%;height:475px;object-fit:cover}
.lead{max-width:560px}
.lead .btn{margin-top:14px}

/* Products for your business (home) */
.sec--biz{padding:60px 0 80px}
.biz{display:flex;gap:40px;align-items:stretch}
.biz__photo{flex:0 0 288px;min-height:402px;border-radius:500px 500px 10px 10px;background:#FF671C center/cover no-repeat}
.biz__box{flex:1;background:var(--brown);color:#fff;border-radius:10px;padding:50px 50px 50px 50px;position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:center}
.biz__box h2{color:#fff;max-width:520px}
.biz__box p{color:#fff;max-width:640px}
.biz__box .sun{position:absolute;right:60px;top:60px;width:167px}
.biz__box .btn{align-self:flex-start;margin-top:10px}

/* Product cards (home "discover" strip, Elementor Pro widget look) */
.pcards{margin-top:30px}
#main .pcards ul.products{gap:26px}
#main .pcards ul.products li.product{background:#fff;border:1px solid #eee;border-radius:0;overflow:hidden;text-align:center;padding:1px 0 16px;display:flex;flex-direction:column;align-items:center}
#main .pcards ul.products li.product .pthumb{aspect-ratio:auto;margin:0;padding:0;width:100%}
#main .pcards ul.products li.product .pthumb img{width:300px;height:300px;object-fit:contain;margin:0 auto}
#main .pcards ul.products li.product .woocommerce-loop-product__title{text-align:center;font-family:var(--serif);font-size:16px;font-weight:700;line-height:1;text-transform:capitalize;color:#272727;margin:26px 0 12px;padding:0 10px}
#main .pcards ul.products li.product .price{display:block;text-align:center;font-family:var(--sans);font-size:14px;font-weight:700;color:#272727;margin-bottom:12px}
#main .pcards ul.products li.product .button{display:block;width:calc(100% - 32px);margin:0 16px;background:#333;color:#fff;font-size:14px;font-weight:400;letter-spacing:0;line-height:38px;text-transform:uppercase;padding:0;text-align:center;border-radius:0;align-self:stretch}
#main .pcards ul.products li.product .button:hover{background:var(--brown)}
#main .pcards ul.products li.product .button::before{content:"";display:inline-block;width:12px;height:12px;margin-right:8px;vertical-align:-1px;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath d='M173.9 439.4l-166.4-166.4c-10-10-10-26.2 0-36.2l36.2-36.2c10-10 26.2-10 36.2 0L192 312.7 432.1 72.6c10-10 26.2-10 36.2 0l36.2 36.2c10 10 10 26.2 0 36.2l-294.4 294.4c-10 10-26.2 10-36.2 0z'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath d='M173.9 439.4l-166.4-166.4c-10-10-10-26.2 0-36.2l36.2-36.2c10-10 26.2-10 36.2 0L192 312.7 432.1 72.6c10-10 26.2-10 36.2 0l36.2 36.2c10 10 10 26.2 0 36.2l-294.4 294.4c-10 10-26.2 10-36.2 0z'/%3E%3C/svg%3E") center/contain no-repeat}
#main .pcards ul.products li.product .button.product_type_simple::before{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 576 512'%3E%3Cpath d='M528.1 301.3l47.3-208C578.8 78.3 567.4 64 552 64H159.2l-9.2-44.8C147.8 8 137.9 0 126.5 0H24C10.7 0 0 10.7 0 24v16c0 13.3 10.7 24 24 24h69.9l70.2 343.4C147.3 417.1 136 435.4 136 456c0 30.9 25.1 56 56 56s56-25.1 56-56c0-15.7-6.4-29.8-16.8-40h209.6C430.4 426.2 424 440.3 424 456c0 30.9 25.1 56 56 56s56-25.1 56-56c0-22.2-12.9-41.3-31.6-50.4l5.5-24.3c3.4-15-8-29.3-23.4-29.3H218.1l-6.5-32h293.1c11.2 0 20.9-7.8 23.4-18.7z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 576 512'%3E%3Cpath d='M528.1 301.3l47.3-208C578.8 78.3 567.4 64 552 64H159.2l-9.2-44.8C147.8 8 137.9 0 126.5 0H24C10.7 0 0 10.7 0 24v16c0 13.3 10.7 24 24 24h69.9l70.2 343.4C147.3 417.1 136 435.4 136 456c0 30.9 25.1 56 56 56s56-25.1 56-56c0-15.7-6.4-29.8-16.8-40h209.6C430.4 426.2 424 440.3 424 456c0 30.9 25.1 56 56 56s56-25.1 56-56c0-22.2-12.9-41.3-31.6-50.4l5.5-24.3c3.4-15-8-29.3-23.4-29.3H218.1l-6.5-32h293.1c11.2 0 20.9-7.8 23.4-18.7z'/%3E%3C/svg%3E")}
#main .pcards ul.products li.product .woocommerce-loop-product__link{width:100%}
.centre{text-align:center}
.centre .btn{margin-top:30px}

/* Cafes */
.cafes{display:flex;align-items:center;gap:20px;margin-top:30px}
.cafes img{width:310px;height:auto}
.cafes img:last-child{width:200px}

/* Our services / values (arch + icon boxes) */
.svc{display:flex;gap:20px}
.svc__left{flex:0 0 865px;display:flex;align-items:flex-start;gap:20px}
.svc__text{flex:0 0 380px;padding-top:187px}
.svc__text.svc__text--about{padding-top:111px}
.svc__text--about h2{margin-bottom:5px}
.svc__text.svc__text--services{padding-top:180px}
.svc__right.svc__right--about{padding-top:70px}
.svc__right.svc__right--services{padding-top:50px}
.svc__arch{position:relative;width:422px;height:488px;background:var(--sun);border-radius:0 0 300px 300px;padding-top:90px;margin-left:auto}
.svc__arch--top{border-radius:300px 300px 0 0}
.svc__arch img{position:absolute;left:0;top:38px;width:422px;height:500px;object-fit:cover;transform:rotate(12deg);max-width:none}
.svc__right{flex:1;padding:120px 0 0 50px}
.ibox{display:flex;gap:15px;margin-bottom:52px}
.ibox__icon{flex:0 0 54px;width:54px;height:54px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;background:var(--brown)}
.ibox__icon .icon{width:27px;height:27px}
.ibox__icon--sun{background:var(--sun)}
.ibox__icon--dark{background:var(--text)}
.ibox h3{margin:8px 0 5px;font-size:20.8px;font-weight:300}
.ibox p{margin:0;font-weight:600} /* icon-box descriptions render bold on the live site, unlike paragraph copy */
.ibox--centre{flex-direction:column;align-items:center;text-align:center}
.values{display:flex;gap:20px;align-items:flex-start}
.values__col{flex:0 0 380px}
.values__col--r{flex:1;padding-top:50px}
.values h2{margin-bottom:20px}

/* Shop the best (dark card) */
.best{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:60px 0}
.best__card{background:var(--dark);border-radius:10px;padding:80px;display:flex;align-items:center;justify-content:space-between;gap:40px}
.best__card h2{color:#fff;max-width:560px;margin:0 0 20px}
.best__card .sun{width:129px}
.best__promo{flex:0 0 510px;background:var(--sun);border-radius:10px;padding:0 40px 40px}
.best__promo h2{font-size:24px;line-height:1;margin:40px 0 24px;color:#fff}
.pill{display:flex;width:max-content;align-items:center;gap:10px;background:rgba(43,15,1,.38);border:1px solid rgba(43,15,1,.25);border-radius:10px;padding:6px 15px 6px 6px;color:#fff;font-size:14px;margin:0 8px 10px 0}
.pill .icon{width:28px;height:28px;color:#fff}

/* Got questions (home) + FAQ page arch photo */
.arch-photo{width:403px;height:305px;border-radius:300px 300px 10px 10px;background:center/cover no-repeat;flex:0 0 auto}
.arch-photo--tall{height:481px}
.questions{display:flex;align-items:center;gap:90px}
.questions__text{flex:1;text-align:center}
.questions__text .sun{margin:0 auto 20px}

/* ---------- FAQ accordion ---------- */
.faq-ghost{font-size:86.4px;font-weight:600;line-height:1;color:rgba(43,15,1,.06);margin:0 0 10px}
.acc{margin-top:10px}
.acc__item{margin-bottom:15px}
.acc__title{display:flex;align-items:center;gap:12px;width:100%;min-height:60px;text-align:left;background:none;border:0;cursor:pointer;padding:20px 20px 10px;border-radius:10px 10px 0 0;font-family:var(--serif);font-size:14px;text-transform:uppercase;color:var(--brown);letter-spacing:.2px}
.acc__title .icon{width:16px;height:16px;color:var(--sun);flex:0 0 16px}
.acc__title .icon--minus{display:none}
.acc__item.is-open .acc__title{background:var(--sun);color:var(--brown)}
.acc__item.is-open .acc__title .icon{color:#fff}
.acc__item.is-open .acc__title .icon--plus{display:none}
.acc__item.is-open .acc__title .icon--minus{display:block}
.acc__body{display:none;background:var(--sun);border-radius:0 0 10px 10px;padding:20px 30px 30px;color:#fff;font-size:14px}
.acc__item.is-open .acc__body{display:block}
.acc__body ul{list-style:disc;padding-left:20px}
.acc__body p:last-child{margin:0}
.faq-block{padding:60px 0 0;background:linear-gradient(180deg,var(--beige) 0%,var(--cream-61) 20%)}
.faq-block--first{padding-top:60px}

/* ---------- Contact ---------- */
.contact{display:flex;gap:60px;align-items:stretch;padding-top:45px}
.contact__info{flex:1;padding-top:20px}
.contact__info .sun{width:90px;margin-bottom:7px}
.contact__info h1{font-size:65.6px;font-weight:600;text-align:left;line-height:1;margin:0 0 20px;max-width:500px}
.contact__info h2.contact__lead{font-size:24px;font-weight:300;text-transform:none;line-height:1.5;max-width:460px;margin-bottom:20px}
.contact__info p{max-width:500px;margin:0}
.contact__info p{font-weight:400}
.contact__info .label{font-weight:700;color:var(--text)}
.contact__social{display:flex;align-items:center;justify-content:space-between;max-width:500px;margin-top:84px}
.contact__social h2{font-size:16px;margin:0;line-height:1}
.circle{display:inline-flex;align-items:center;justify-content:center;width:35px;height:35px;border-radius:50%;background:var(--brown);color:#fff}
.circle .icon{width:16px;height:16px}
.circle--sun{background:var(--sun)}
.contact__form{flex:0 0 671px;background:var(--sun);border-radius:400px 400px 0 0;padding:92px 90px 48px;margin-top:-59px}
.contact__form h3{text-align:center;font-size:24px;line-height:1;color:var(--brown);margin:0 0 30px}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px 10px}
.form-grid .full{grid-column:1/-1}
.form-grid label{display:block;font-size:12px;font-weight:600;text-transform:uppercase;color:#fff;margin-bottom:4px}
.form-grid label .req{color:var(--brown)}
.form-grid input,.form-grid textarea{width:100%;background:rgba(255,255,255,.06);border:1px solid #fff;border-radius:3px;padding:8px 16px;font:inherit;font-size:15px;color:#fff;height:40px}
.form-grid textarea{height:96px;padding:5px 14px;resize:vertical}
.form-grid input::placeholder{color:rgba(255,255,255,.7)}
.form-grid .btn{width:100%;height:40px;padding:0 16px;font-size:16px}
.form-note{background:#fff;color:var(--brown);border-radius:3px;padding:10px 14px;margin-bottom:16px;font-size:14px}
.hp{position:absolute;left:-9999px}
.findus{text-align:center;padding:62px 0 0}
.findus .sun{margin:0 auto 10px}
.findus p{font-weight:400}
.map{width:100%;height:370px;border:0;margin-top:30px;display:block}

/* ---------- Footer ---------- */
.marquee{background:var(--brown);position:relative;padding-top:60px;height:160px;overflow:hidden;border-bottom:1px solid rgba(255,255,255,.12)}
.marquee::before{content:"";position:absolute;left:0;top:0;right:0;height:40px;background:var(--beige);clip-path:polygon(0 0,100% 0,100% 100%,0 6%)}
.sec--white + .marquee::before,.hero + .marquee::before{background:#fff}
.marquee__track{display:flex;white-space:nowrap;width:max-content;animation:marquee 40s linear infinite}
.marquee__item{font-family:var(--serif);font-size:72px;font-weight:500;text-transform:uppercase;color:rgba(255,241,225,.16);line-height:1;padding:0 40px;display:inline-flex;align-items:center;gap:80px}
.marquee__item::after{content:"\2731";color:var(--sun);font-size:40px;font-family:var(--sans)}
@keyframes marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.site-footer{background:var(--brown);color:#fff;padding-top:40px}
.site-footer a{color:#fff}
.site-footer a:hover{color:var(--sun)}
.footer__main{border-top:1px solid rgba(255,255,255,.12);border-bottom:1px solid rgba(255,255,255,.12);padding:48px 0;margin:0 auto 30px;display:grid;grid-template-columns:1.4fr 1.1fr 1fr auto;gap:48px;align-items:start}
.footer__head{font-family:var(--sans);font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--sun);margin:0 0 16px}
.footer__logo img{width:299px}
.footer__contact,.footer__links{list-style:none;margin:0;padding:0}
.footer__contact li{display:flex;gap:12px;align-items:flex-start;margin-bottom:12px;font-size:15px;font-weight:600;line-height:1.45}
.footer__contact .icon{width:22px;height:22px;color:var(--sun);flex:0 0 22px;margin-top:2px}
.footer__links li{margin-bottom:10px;font-size:15px;font-weight:600;line-height:1.45}
.footer__social{padding-top:0}
.footer__bottom{height:58px;display:flex;align-items:center;justify-content:flex-end;font-size:14px;font-weight:500}
.footer__bottom a{color:var(--sun)}

/* ---------- WooCommerce: archive ---------- */
.shop-hero{background:var(--cream);margin-top:-139px;padding:150px 0 60px;text-align:center}
.shop-hero .sun{margin:0 auto 10px}
.shop-hero h1{font-size:81.6px;font-weight:400;margin:0}
.shop{padding:50px 50px 60px;background:linear-gradient(180deg,var(--beige) 0%,var(--cream-61) 20%)}
.shop__cats{display:flex;flex-wrap:wrap;gap:20px;font-size:14px;font-weight:600;margin-bottom:30px}
.shop__cats a{color:var(--text)}
.shop__cats a.is-active,.shop__cats a:hover{color:var(--sun)}
.shop__bar{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;font-size:14px}
.shop__bar .woocommerce-result-count{margin:0;font-weight:600}
.shop__bar select{font:inherit;font-size:14px;padding:6px 30px 6px 10px;border:1px solid #bbb;border-radius:3px;background:#fff}
.woocommerce ul.products,ul.products{display:grid!important;grid-template-columns:repeat(4,1fr);gap:20px;margin:0!important;padding:0;list-style:none}
.woocommerce ul.products::before,.woocommerce ul.products::after{display:none}
.woocommerce ul.products li.product,ul.products li.product{width:100%!important;float:none!important;margin:0!important;padding:0;text-align:left;display:flex;flex-direction:column;clear:none!important}
.woocommerce ul.products li.product .pthumb img{width:100%;height:100%;margin:0;box-shadow:none}
ul.products li.product .woocommerce-loop-product__link{display:block}
ul.products li.product .pthumb{background:#fff;aspect-ratio:1/1;display:flex;align-items:center;justify-content:center;margin-bottom:26px;padding:15px}
ul.products li.product .pthumb img{width:100%;height:100%;object-fit:contain}
ul.products li.product .woocommerce-loop-product__title{font-family:var(--serif);font-size:16px;font-weight:300;line-height:1.2;text-transform:uppercase;color:var(--brown);margin:0 0 8px;padding:0}
.woocommerce ul.products li.product .price,.woocommerce ul.products li.product .price .amount,ul.products li.product .price{font-family:var(--sans);font-size:14px;font-weight:700;color:var(--brown);margin:0 0 16px;display:block}
.woocommerce ul.products li.product .price .amount{display:inline}
.woocommerce ul.products li.product .price .gst{color:var(--sun);font-weight:600}
#main .pcards ul.products li.product .price .gst{color:inherit}
ul.products li.product .price del{opacity:.6}
ul.products li.product .price .gst{color:#B9A58F;font-weight:600;font-size:12px}
.woocommerce ul.products li.product .button,ul.products li.product .button{display:inline-block;background:var(--sun);color:#fff;font-size:14px;font-weight:600;letter-spacing:.3px;text-transform:uppercase;padding:11px 20px;border-radius:4px;margin:auto 0 0;align-self:flex-start;border:0;line-height:1.3}
ul.products li.product .button:hover{background:var(--brown)}
ul.products li.product .button.added{display:inline-block}
ul.products li.product .added_to_cart{font-size:12px;margin-left:10px}
.woocommerce nav.woocommerce-pagination{margin:40px 0 0;text-align:center}
.woocommerce-pagination ul.page-numbers{display:inline-flex;border:1px solid #ddd;border-radius:3px}
.woocommerce-pagination .page-numbers li{margin:0}
.woocommerce-pagination a.page-numbers,.woocommerce-pagination span.page-numbers{display:block;padding:6px 10px;font-size:13px;color:var(--brown);border-right:1px solid #ddd}
.woocommerce-pagination li:last-child .page-numbers{border-right:0}
.woocommerce-pagination span.current{background:#ddd}

/* ---------- WooCommerce: single product ---------- */
.product-hero{background:var(--cream);margin-top:-139px;padding:170px 0 100px}
.product-hero .container{display:flex;gap:90px;align-items:flex-start}
.product-hero .pgallery{flex:0 0 474px;min-height:760px;border-radius:400px 400px 0 0;overflow:hidden;position:relative}
.product-hero .pgallery img{width:474px;height:auto}
.woocommerce-product-gallery{position:relative;opacity:1!important}
.woocommerce-product-gallery .flex-viewport,.woocommerce-product-gallery__wrapper{margin:0}
.woocommerce-product-gallery__image img{width:100%;height:auto}
.woocommerce-product-gallery__trigger{position:absolute;right:16px;top:16px;width:36px;height:36px;border-radius:100%;background:#fff;display:flex;align-items:center;justify-content:center;z-index:2;color:var(--text)}
.woocommerce-product-gallery__trigger .icon{width:16px;height:16px}
.flex-control-thumbs{display:flex;gap:10px;margin-top:10px;list-style:none;padding:0;counter-reset:none}
.flex-control-thumbs li{margin:0}
.flex-control-thumbs li::marker{content:none}
.flex-control-thumbs img{border-radius:6px;opacity:.6;cursor:pointer}
.flex-control-thumbs img.flex-active,.flex-control-thumbs img:hover{opacity:1}
.flex-control-thumbs li{width:80px;cursor:pointer}
.psummary{flex:1;padding-top:10px}
.psummary h1.product_title{font-size:31px;font-weight:600;line-height:1;text-align:left;margin:0 0 20px}
.psummary .product_meta{font-size:14px;font-weight:700;color:var(--brown);margin-bottom:24px}
.psummary .product_meta span{margin-right:6px}
.psummary .product_meta a{color:var(--sun)}
.psummary .woocommerce-product-details__short-description{font-size:16px;font-weight:700;margin-bottom:34px}
.psummary .price{font-family:var(--sans);font-size:20px;font-weight:700;color:var(--brown);margin-bottom:34px;display:block}
.psummary .price del{opacity:.6}
.psummary table.variations{width:100%;border-collapse:collapse;margin-bottom:24px}
.psummary table.variations th,.psummary table.variations td{background:rgba(128,128,128,.07);padding:15px;text-align:left;vertical-align:middle;font-size:14px}
.psummary table.variations th{width:128px;text-align:center;font-weight:700}
.psummary table.variations td{padding-left:0}
.psummary table.variations tr:nth-child(even) th,.psummary table.variations tr:nth-child(even) td{background:transparent}
.psummary table.variations select{width:100%;height:42px;border:1px solid #666;border-radius:3px;padding:8px 48px 8px 16px;font:inherit;font-size:15px;font-weight:400;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232D2926' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") no-repeat calc(100% - 12px) 50%/16px 16px;appearance:none}
.psummary .reset_variations{font-size:12px;display:inline-block;margin-top:6px}
.psummary .woocommerce-variation-price{margin-bottom:16px}
.psummary form.cart{margin-bottom:20px}
.psummary form.cart .quantity{display:inline-block;margin-right:14px}
.psummary form.cart .qty{width:60px;height:36px;border:1px solid #D1BFA7;border-radius:4px;padding:6px;text-align:center;font:inherit}
.psummary .single_add_to_cart_button{background:var(--brown);color:#fff;border:0;border-radius:4px;padding:9px 14px;font:inherit;font-size:14px;font-weight:600;text-transform:uppercase;cursor:pointer;height:36px}
.psummary .single_add_to_cart_button:hover{background:var(--sun)}
.psummary .single_add_to_cart_button.disabled{opacity:.5;cursor:not-allowed}
.psummary .stock{font-size:14px}
.psummary .sun{margin-top:40px}
.woocommerce-variation-add-to-cart{display:flex;align-items:center}
.woocommerce-variation-description p{font-weight:400}
.product-description{padding:40px 0}
.related.products h2{font-size:32px;text-align:center;margin-bottom:30px}

/* ---------- WooCommerce: cart / checkout / account / notices ---------- */
.page-plain{padding:0 0 143px}
.page-plain.page-cart h1.entry-title{display:none} /* the live cart page hides its title with an inline style */
.page-plain.page-cart .entry-content{padding-top:10px}
.page-plain.page-cart{padding-bottom:85px}
.shop--cat .shop__bar{display:none}
.woocommerce-cart .return-to-shop{display:none}
.page-plain h1.entry-title{font-size:108.8px;font-weight:600;line-height:1.2;text-transform:none;text-align:left;margin:10px 0 0}
.page-plain .entry-content{padding-top:10px}
.woocommerce-info,.woocommerce-message,.woocommerce-error{background:#F6F5F8;border-left:3px solid #1E85BE;border-radius:4px;padding:12px 16px;margin:0 0 20px;list-style:none;font-weight:500}
.woocommerce-message{border-left-color:var(--sun)}
.woocommerce-error{border-left-color:#b81c23}
.woocommerce-info a.button,.woocommerce-message a.button{float:right;margin-left:10px}
.return-to-shop .button,.wc-proceed-to-checkout .button,.woocommerce button.button,.woocommerce a.button,.woocommerce input.button{display:inline-block;background:var(--brown);color:#fff;border:0;border-radius:4px;padding:12px 20px;font:inherit;font-size:14px;font-weight:600;text-transform:uppercase;cursor:pointer;text-align:center}
.woocommerce button.button:hover,.woocommerce a.button:hover{background:var(--sun);color:#fff}
.woocommerce a.button.alt,.woocommerce button.button.alt,.woocommerce input.button.alt,.woocommerce #respond input#submit.alt,.wc-proceed-to-checkout a.checkout-button,.woocommerce-checkout #place_order,.woocommerce button.button.alt.disabled,.woocommerce button.button:disabled{background:var(--brown)!important;color:#fff!important;border:0;border-radius:4px;font-family:var(--sans);font-weight:600;text-transform:uppercase;padding:12px 20px;font-size:14px;line-height:1.3}
.woocommerce a.button.alt:hover,.woocommerce button.button.alt:hover,.wc-proceed-to-checkout a.checkout-button:hover,.woocommerce-checkout #place_order:hover{background:var(--sun)!important}
.woocommerce button.button:disabled,.woocommerce button.button.disabled{opacity:.5}
.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info::before{display:none}
.woocommerce-info::before,.woocommerce-message::before,.woocommerce-error::before{display:none}
.woocommerce-info a.showcoupon{color:var(--brown);text-decoration:underline}
.wc-proceed-to-checkout .button{display:block;width:100%;margin-top:14px}
.woocommerce table.shop_table{width:100%;border-collapse:collapse;border:1px solid var(--line);border-radius:4px;margin-bottom:30px;font-size:15px}
.woocommerce table.shop_table th,.woocommerce table.shop_table td{padding:12px;border-bottom:1px solid var(--line);text-align:left;vertical-align:middle}
.woocommerce table.shop_table img{width:64px}
.woocommerce table.shop_table .product-remove a{font-size:22px;line-height:1;color:#b81c23}
.woocommerce .quantity .qty{width:64px;height:36px;border:1px solid #D1BFA7;border-radius:4px;text-align:center;font:inherit}
.woocommerce .coupon{display:flex;gap:8px;align-items:center}
.woocommerce .coupon input.input-text{height:40px;border:1px solid #bbb;border-radius:4px;padding:6px 10px;font:inherit}
.cart-collaterals{display:flex;justify-content:flex-end}
.cart_totals{width:100%;max-width:520px}
.woocommerce form .form-row{margin-bottom:14px}
.woocommerce form .form-row label{display:block;font-size:14px;margin-bottom:4px}
.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,.woocommerce form .form-row select,.select2-container .select2-selection--single{width:100%;height:42px;border:1px solid #bbb;border-radius:4px;padding:8px 12px;font:inherit;font-weight:400}
.woocommerce form .form-row textarea{height:auto;min-height:90px}
.woocommerce .col2-set{display:flex;gap:40px}
.woocommerce .col2-set .col-1,.woocommerce .col2-set .col-2{flex:1}
#order_review_heading{margin-top:30px}
.woocommerce-checkout #payment{background:var(--cream);border-radius:6px;padding:20px}
.woocommerce-checkout #payment ul.payment_methods{list-style:none;padding:0}
.woocommerce-checkout #payment li{margin-bottom:12px}
.woocommerce-checkout #payment .payment_box{background:#fff;border-radius:4px;padding:12px;margin-top:8px;font-size:14px;font-weight:400}
#place_order{width:100%}
.woocommerce-MyAccount-navigation ul li{margin-bottom:8px}
.woocommerce-account .woocommerce{display:flex;gap:40px}
.woocommerce-account .woocommerce-MyAccount-navigation{flex:0 0 240px}
.woocommerce-account .woocommerce-MyAccount-content{flex:1}
.woocommerce-form-login,.woocommerce-form-register{max-width:480px;background:var(--cream);padding:24px;border-radius:6px}
.blockUI.blockOverlay{background:rgba(255,255,255,.6)!important}
.woocommerce-mini-cart{display:none}

/* ---------- Generic page (policies) ---------- */
.page-beige{background:var(--beige);padding:0 50px 60px}
.page-beige .entry-content{max-width:860px;margin:0 auto;padding-top:90px}
.page-beige h2{margin-bottom:24px}
.page-beige p,.page-beige li{font-weight:400}
.page-beige ul{list-style:disc;padding-left:22px;margin-bottom:1em}
.page-beige strong{font-weight:700}

/* ---------- 404 / search ---------- */
.notfound{padding:0}
.notfound h1{font-size:108.8px;font-weight:600;line-height:1.2;text-align:left;text-transform:uppercase;margin:21px 0 0;padding-left:80px}
.notfound > .container > p{padding-left:80px;margin:0}
.search-results-list{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin-top:30px}
.search-results-list article{background:#fff;border:1px solid #eee;padding:16px}
.search-results-list h2{font-size:18px;text-transform:none;margin:12px 0 8px}
.search-results-list p{font-weight:400;font-size:14px}
.search-form{display:flex;gap:8px;max-width:520px;margin:20px 0}
.search-form input[type=search]{flex:1;height:42px;border:1px solid #bbb;border-radius:4px;padding:8px 12px;font:inherit}

/* ---------- Responsive ---------- */
@media (max-width:1330px){
  .svc__left{flex:0 0 62%}
  .contact__form{flex:0 0 55%;padding:60px 50px 40px}
  .footer__main{grid-template-columns:1.2fr 1.1fr 1fr auto;gap:32px}
}
@media (max-width:1024px){
  h1,.hero__title--home,.hero__title--about,.hero__title--services,.hero__title--faq,.shop-hero h1{font-size:64px}
  h2{font-size:38px}
  .nav-toggle{display:block}
  .main-nav{display:none;position:absolute;left:0;right:0;top:139px;background:var(--cream);padding:10px 20px 20px;box-shadow:0 10px 20px rgba(0,0,0,.08)}
  .main-nav.is-open{display:block}
  .main-nav ul{flex-direction:column;align-items:stretch}
  .main-nav a{padding:12px 0;border-bottom:1px solid rgba(108,53,42,.15)}
  .hero__collage{min-height:300px;background-size:contain}
  .hero__text{padding:40px 20px 0;max-width:480px}
  .two-col,.biz,.svc,.values,.questions,.contact,.best__card{flex-direction:column}
  .svc__left,.svc__text,.svc__arch,.values__col,.best__promo,.contact__form,.arch-photo,.masked{flex-basis:auto;width:100%;max-width:100%}
  .svc__left{gap:40px}
  .svc__arch{margin:0 auto;width:min(422px,100%);height:488px}
  .svc__arch img{left:50%;margin-left:-258px}
  .svc__right,.values__col--r{padding-top:0}
  #main .pcards ul.products{grid-template-columns:repeat(2,1fr)}
  .cafes{flex-wrap:wrap;justify-content:center}
  .cafes img,.cafes img:last-child{width:45%}
  .best__card{padding:40px}
  .footer__main{grid-template-columns:1fr 1fr;gap:40px 32px}
  ul.products,.woocommerce ul.products{grid-template-columns:repeat(3,1fr)}
  .product-hero .container{flex-direction:column;gap:40px}
  .product-hero .pgallery{flex-basis:auto;width:min(474px,100%);min-height:0}
  .woocommerce .col2-set{flex-direction:column}
}
@media (max-width:767px){
  body{font-size:16px}
  .site-header{height:auto}
  .site-header .container{flex-direction:column;align-items:flex-start;padding:10px}
  .site-header .brand img{width:326px;max-width:100%}
  .nav-wrap{width:100%;justify-content:center;gap:16px;padding:12px 0 6px}
  .nav-wrap .nav-toggle{order:1;background:#EDE5DB;border-radius:3px;padding:4px}
  .nav-wrap .cart-toggle{order:2}
  .main-nav{top:100%}
  h2,.lead,.hero__text,.biz__box,.svc__text,.ibox,.questions__text,.contact__info,.findus,.best__card,.best__promo{text-align:center}
  .ibox{flex-direction:column;align-items:center}
  .biz__box .btn,.lead .btn,.svc__text .btn{align-self:center}
  .biz__box{align-items:center}
  .svc__left{flex-direction:column-reverse}
  .footer__main{text-align:center;justify-items:center}
  .footer__contact{display:inline-block;text-align:left}
  .footer__contact li{justify-content:flex-start}
  .footer__logo img{margin:0 auto}
  .hero{padding-top:139px}
  .hero__title{margin-top:30px}
  .hero__collage{margin-top:0;padding-bottom:0;background-size:0 0}
  .hero__collage--tall::after{display:none} /* about / services / faq show no collage on mobile */
  .hero__collage--tall{display:none}
  .hero__collage--tall::after{display:none}
  .lead--bold{font-weight:600;text-align:left}
  .hero__collage::after{content:"";display:block;height:135px;background-image:inherit;background-size:contain;background-position:right bottom;background-repeat:no-repeat}
  .hero__text{padding:110px 20px 40px;max-width:100%}
  .hero__text .btn{display:inline-block;margin-top:20px}
  .hero::after,.band::after{height:30px}
  .band{height:30px}
  .cafes-title{font-size:14.4px!important;line-height:1.2}
  .biz__box .btn{align-self:flex-start}
  .lead--services p{font-weight:600;text-align:left}
  .biz__box{align-items:stretch}
  .best__promo{text-align:left}
  .best__card{align-items:stretch}
  .best__card .sun{display:none}
  .best__promo h2{text-align:left}
  .questions__text .sun{width:49px}
  .sec--discover .intro{text-align:center}
  #main .pcards ul.products li.product{width:100%}
  h1,.hero__title--home,.hero__title--about,.hero__title--services,.hero__title--faq,.shop-hero h1{font-size:40px;line-height:1}
  h2{font-size:28.8px;line-height:1.2}
  h3{font-size:16px}
  .cart-toggle{padding:8px 10px;margin:0;border:0}
  .hero__collage{min-height:0}
  .hero__text{padding:20px 20px 30px}
  .masked img{height:300px}
  .biz__photo{flex-basis:auto;min-height:320px}
  .biz__box{padding:30px}
  .biz__box .sun{position:static;width:200px;margin:0 auto 10px}
  #main .pcards ul.products{grid-template-columns:1fr;justify-items:center}
  #main .pcards ul.products li.product{width:318px;max-width:100%}
  .cafes img,.cafes img:last-child{width:45%}
  .svc__arch{height:420px}
  .svc__arch img{width:440px;height:490px;margin-left:-220px}
  .best__card{padding:30px 20px}
  .best__promo{padding:0 20px 20px}
  .arch-photo{width:100%;height:300px}
  .questions{gap:40px}
  .faq-ghost{font-size:36.8px}
  .contact__info h1{font-size:40px}
  .contact__form{padding:50px 20px 30px;border-radius:200px 200px 0 0}
  .form-grid{grid-template-columns:1fr}
  .marquee__item{font-size:40px;padding:0 20px;gap:40px}
  .footer__main{grid-template-columns:1fr;gap:36px}
  .footer__bottom{flex-direction:column;height:auto;padding:16px 0;gap:6px;text-align:center}
  .shop{padding:30px 0}
  .shop-hero .sun{width:49px}
  .shop__bar{flex-direction:column;align-items:flex-start;gap:10px}
  ul.products,.woocommerce ul.products{grid-template-columns:repeat(2,1fr)}
  .product-hero{padding:160px 0 60px}
  .psummary h1.product_title{font-size:26px}
  .page-plain h1.entry-title,.notfound h1{font-size:40px}
  .page-beige{padding:0 0 40px}
  .search-results-list{grid-template-columns:1fr}
}


/* ---------- Coffee product page (Green/Black/Blue Label) ---------- */
.chips{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 20px}
.chip{display:inline-block;background:rgba(43,15,1,.07);border:1px solid rgba(43,15,1,.10);color:var(--brown);font-size:13px;font-weight:600;border-radius:20px;padding:6px 14px}
.szcards{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:0 0 16px}
.szcard{background:#fff;border:1px solid rgba(43,15,1,.15);border-radius:10px;padding:14px 10px;text-align:center;cursor:pointer;font:inherit;display:flex;flex-direction:column;gap:4px;transition:border-color .15s}
.szcard:hover{border-color:var(--sun)}
.szcard.is-active{border:2px solid var(--sun);padding:13px 9px}
.szcard__size{font-family:var(--serif);font-size:18px;color:var(--brown);text-transform:uppercase}
.szcard__price{font-weight:700;color:var(--brown)}
.szcard__per{font-size:12px;color:#8a7b6c}
.grinds{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 20px}
.grinds__label{font-size:14px;font-weight:700;color:var(--brown);margin-right:6px}
.grind{background:#fff;border:1px solid rgba(43,15,1,.15);border-radius:20px;padding:8px 16px;font:inherit;font-size:14px;color:var(--text);cursor:pointer;transition:all .15s}
.grind:hover{border-color:var(--sun)}
.grind.is-active{background:var(--brown);border-color:var(--brown);color:#fff}
.psummary .coffee-variations table.variations{position:absolute;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);width:1px;height:1px;overflow:hidden}
.ptrust{padding:0 0 60px}
.ptrust__row{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.ptrust__card{background:var(--cream);border-radius:10px;padding:24px 20px;display:flex;flex-direction:column;gap:2px}
.ptrust__card .icon{width:28px;height:28px;color:var(--sun);margin-bottom:8px}
.ptrust__card strong{color:var(--brown);font-size:15px}
.ptrust__card span{font-size:14px;font-weight:400}
.pcafes__grid{display:flex;gap:60px;align-items:center}
.pcafes__grid > div:first-child{flex:1 1 55%}
.pquote{margin:24px 0 0;background:#fff;border-radius:10px;padding:24px 28px}
.pquote__stars{color:var(--sun);font-size:18px;letter-spacing:2px}
.pquote p{margin:8px 0 10px;font-weight:400;font-style:italic}
.pquote cite{font-style:normal;font-size:14px;font-weight:600;color:var(--brown)}
.pcafes__logos{flex:1 1 45%;display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:center;justify-items:center}
.pcafes__logos img{max-width:180px;height:auto}
.pstory__grid{display:flex;gap:60px;align-items:center}
.pstory__photos{flex:0 0 50%;display:grid;grid-template-columns:1fr 1fr;gap:16px}
.pstory__photos img{width:100%;height:320px;object-fit:cover}
.pstory__photos img:first-child{border-radius:300px 300px 10px 10px}
.pstory__photos img:last-child{border-radius:10px 10px 300px 300px}
.pfaq .acc{max-width:900px}
.pfaq__more{margin-top:20px;font-weight:600}
.pfaq__more a{text-decoration:underline}
.pblends .pcards ul.products{grid-template-columns:repeat(3,1fr)}
@media (max-width:1024px){
  .ptrust__row{grid-template-columns:repeat(2,1fr)}
  .pcafes__grid,.pstory__grid{flex-direction:column;gap:40px}
  .pstory__photos{width:100%}
}
@media (max-width:767px){
  .szcards{grid-template-columns:repeat(3,1fr)}
  .szcard__per{font-size:11px}
  .ptrust__row{grid-template-columns:1fr 1fr;gap:12px}
  .pcafes__logos{gap:12px}
  .pcafes__logos img{max-width:130px}
  .pstory__photos{grid-template-columns:1fr 1fr;gap:10px}
  .pstory__photos img{height:200px}
  .pblends .pcards ul.products{grid-template-columns:1fr}
}

/* ---------- Coffee pages v2: eyebrow, best value, lifestyle strip, specs, process videos ---------- */
.peyebrow{font-size:13px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--sun);margin:0 0 10px}
.szcard{position:relative}
.szcard__tag{position:absolute;top:-10px;left:50%;transform:translateX(-50%);background:var(--brown);color:#fff;font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;border-radius:12px;padding:3px 10px;white-space:nowrap}
.pfresh{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:60px}
.pfresh figure{margin:0;background:#fff;border-radius:10px;overflow:hidden}
.pfresh img{width:100%;height:280px;object-fit:cover;display:block}
.pfresh figcaption{padding:14px 18px;font-size:14px;font-weight:600;color:var(--brown)}
.pspecs h2{margin-bottom:36px}
.pspecs__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.pspecs__card{background:var(--cream);border-radius:10px;padding:24px 22px;display:flex;flex-direction:column;gap:6px}
.pspecs__k{font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--sun)}
.pspecs__card strong{font-family:var(--serif);font-size:20px;line-height:1.25;color:var(--brown);font-weight:400}
.pspecs__card span:not(.pspecs__k):not(.meter){font-size:14px;font-weight:400}
.meter{display:inline-flex;gap:5px;margin-top:6px}
.meter i{width:16px;height:16px;border:1.5px solid var(--brown);border-radius:3px;display:block}
.meter i.on{background:var(--brown)}
.pprocess{margin-top:70px}
.pprocess h3{font-family:var(--serif);font-weight:400;text-transform:uppercase;font-size:28px;line-height:1.1;color:var(--brown);margin:0 0 28px}
.pprocess__row{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.pvideo{margin:0;border-radius:10px;overflow:hidden;background:var(--beige);position:relative}
.pvideo video{width:100%;aspect-ratio:4/5;height:auto;object-fit:cover;display:block;background:var(--beige)}
.pvideo figcaption{position:absolute;left:14px;bottom:12px;background:rgba(43,15,1,.75);color:#fff;font-size:13px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;border-radius:20px;padding:5px 12px}
@media (max-width:1024px){
  .pspecs__grid{grid-template-columns:repeat(2,1fr)}
  .pprocess__row{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:767px){
  .pfresh{grid-template-columns:1fr;gap:14px;margin-top:40px}
  .pfresh img{height:220px}
  .pspecs__grid{grid-template-columns:1fr;gap:12px}
  .pspecs__card strong{font-size:18px}
  .pprocess{margin-top:50px}
  .pprocess h3{font-size:22px}
  .pprocess__row{gap:12px}
  .szcard__tag{font-size:9px;padding:2px 8px}
}
