/* Palette sampled from the client's logo; shared by the shop and owner panel. */
:root{
  --brand-primary:#486812;--brand-leaf:#86c33a;--brand-soft:#eef4e5;--brand-dark:#27371d;
  --ink:#27371d;--muted:#56634b;--paper:#fafbf7;--cream:#edf3e6;--white:#fff;--line:#d2dbca;--terra:#8f351e;
  --green:var(--brand-primary);--green-light:var(--brand-soft);
  --serif:Cormorant,Georgia,serif;--sans:Manrope,Arial,sans-serif;
  font-family:var(--sans)
}
body{font-family:var(--sans);font-size:16px;color:var(--ink)}
::selection{background:#d8edbc;color:var(--brand-dark)}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--brand-primary);outline-offset:4px}
input,select,textarea{font-family:var(--sans)}
h1,h2{font-weight:600}
.hero h1{line-height:1.02}
.hero h1 em,.section-heading h2 em,.story-copy h2 em{color:var(--brand-primary)}
.hero h1 em{text-decoration:underline;text-decoration-color:#c4e29f;text-decoration-thickness:3px;text-underline-offset:8px}
.hero-copy>p,.story-copy>p{font-size:16px;line-height:1.75;color:var(--muted)}
.section-heading>p{font-size:14px;line-height:1.75}
.desktop-nav{font-size:13px}
.desktop-nav a:hover{color:var(--brand-primary)}
.eyebrow{color:var(--brand-primary)}
.demo-bar,.delivery-strip{background:var(--brand-soft);color:var(--brand-dark)}
.demo-bar>span i{background:var(--brand-primary)}
.delivery-trigger{background:var(--white);border-color:var(--line)}
.delivery-trigger svg{color:var(--brand-primary)}
.delivery-trigger small{color:var(--muted)}
.delivery-strip button{color:var(--brand-primary);font-weight:600}
.button.primary,.button-primary{background:var(--brand-primary);color:var(--white);border-color:var(--brand-primary)}
.button.primary:hover,.button-primary:hover{background:#36500d;border-color:#36500d}
.category-card{background:var(--white);border-color:var(--line)}
.category-card.selected,.category-card[aria-pressed=true],.category-card[aria-selected=true]{background:var(--brand-soft);border-color:var(--brand-primary);box-shadow:inset 0 0 0 1px var(--brand-primary)}
.category-card small,.category-card.selected small{color:var(--muted)}
.category-card.selected{color:var(--brand-dark)}
.category-card:hover{background:#f3f7ed;border-color:var(--brand-primary)}
.product-meta{display:block;min-height:126px;padding-top:15px}
.product-meta h3{font:600 19px/1.35 var(--sans);letter-spacing:-.025em;max-width:none;color:var(--ink)}
.product-category{font-size:12px;line-height:1.6;color:var(--muted);margin-top:7px}
.product-price{display:flex;align-items:baseline;flex-wrap:wrap;text-align:left;font-size:16px;font-weight:650;color:var(--brand-primary);margin-top:9px;gap:7px}
.product-price small{font-size:11px;font-weight:400;color:var(--muted);text-align:left;margin-top:0}
.product-photo{background:var(--cream)}
.product-tag{color:var(--ink);background:var(--white)}
.buy-button{background:var(--brand-soft);border:1px solid #cddab9;color:var(--brand-primary);font-size:13px;font-weight:650;min-height:48px}
.buy-icon{background:#d9ebc4;color:var(--brand-primary)}
.buy-button:hover,.buy-button:focus-visible{background:var(--brand-primary);color:var(--white)}
.buy-button:hover .buy-icon,.buy-button:focus-visible .buy-icon{background:var(--white);color:var(--brand-primary)}
.search-field,.sort-field select{background:var(--white)}
.search-field input{font-size:14px}
.result-count,.catalogue-status,.product-specs,.product-specs dt,.detail-price span,.detail-copy>p.fine-print{color:var(--muted)}
.detail-copy h2{font:600 clamp(28px,3vw,38px)/1.16 var(--sans);letter-spacing:-.035em}
.detail-copy>p{font-size:15px;line-height:1.75}
.detail-price strong{font-family:var(--sans);color:var(--brand-primary)}
.detail-copy>p.fine-print,.product-specs dt,.detail-price span{font-size:12px}
.detail-total{font-size:15px!important}
.story-section{background:var(--brand-soft)}
.story-disclosure{font-size:12px;color:var(--muted)}
.order-steps h3{font-size:30px}
.order-steps article>span{color:var(--terra)}
.order-steps p,.location-copy p,.social-cards p{font-size:15px;line-height:1.75}
.payment-preview{background:var(--brand-soft);border-color:var(--line)}
.payment-preview p{color:var(--muted);font-size:13px}
.social-cards article:last-child{background:var(--brand-soft)}
.location-art{background:linear-gradient(29deg,#e8efdc 25%,#f7f9f1 25%,#f7f9f1 48%,#dce9ca 48%,#dce9ca 67%,#eef4e5 67%)}
.pin-illustration{color:var(--brand-primary);background:var(--brand-soft)}
.pin-dialog h2 em{color:var(--brand-primary)}
.pin-dialog>p,.small-dialog>p{font-size:15px;color:var(--muted)}
.pin-dialog input{border-color:#879974}
.pin-dialog input::placeholder,input::placeholder,textarea::placeholder{color:#617055;opacity:1}
.pin-error,.form-error{color:#8f351e}
footer{background:var(--brand-dark);color:var(--white)}
footer .eyebrow{color:#d8edbc}
footer h2 em{color:#c7e49f}
.footer-bottom{border-color:#657752}
.footer-bottom p{color:#e0e8d7;font-size:12px}
.mobile-dock{background:#fffffff5;border-color:var(--line);color:var(--brand-primary)}
/* Owner interface uses the same colour roles and the same true font family. */
.admin-header{border-color:var(--line)}
.demo-pill,.notice{background:var(--brand-soft);border-color:var(--line);color:var(--ink)}
.notice p,.login-card>p,.login-story>p,.small-note,.row-meta,.stat-label,.stat-foot,.category-row p,.dashboard-heading p,.dashboard-footer{color:var(--muted)}
.login-card,.stat,.product-row,.category-row,.editor-dialog{background:var(--white);border-color:var(--line)}
.login-story>p,.login-card>p{font-size:16px;line-height:1.75}
.stat-link{background:var(--brand-primary);color:var(--white)}
.stat-link .stat-label,.stat-link .stat-foot{color:#f0f5e9}
.stat strong{font-family:var(--sans)}
.row-action,.status,.text-link,.text-button,.button-quiet,.tab.active{color:var(--brand-primary)}
.tab.active{border-color:var(--brand-primary)}
.row-action.danger{color:#8f351e}
.row-action:disabled{color:#68735f}
input,select,textarea{border-color:#879974;background:var(--white);color:var(--ink)}
.image-editor,.login-photo,code{background:var(--brand-soft)}
.confirm-question{color:var(--muted)}
/* Original logo artwork is never recoloured, stretched or rewritten. */
.brand-logo{display:block;width:146px;height:auto;aspect-ratio:6940/4739;object-fit:contain}
.site-header{height:118px;background:var(--paper)}
.site-header .brand,.admin-header .brand{flex-shrink:0}
.brand .brand-emblem{display:block;position:relative;font-size:0;line-height:0;letter-spacing:0}
.brand-crown{display:none}
.footer-brand{display:inline-flex;padding:10px 14px;background:#fff;border-radius:8px}
.footer-brand .brand-logo{width:200px}
.admin-header{height:118px}
.admin-header .brand-logo{width:132px}
@supports(clip-path:polygon(0 0,100% 0,100% 100%)){
  .brand .brand-logo{clip-path:polygon(0 35%,34% 35%,34% 0,100% 0,100% 100%,0 100%)}
  .brand .brand-crown{display:block;position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:contain;clip-path:polygon(0 0,34% 0,34% 35%,0 35%);transform-origin:17.3% 35%}
}
@media(max-width:800px){.site-header{height:110px}.site-header .brand-logo{width:138px}}
@media(max-width:600px){
  html{scroll-padding-top:118px}.site-header{height:106px}.site-header .brand-logo{width:128px}
  .admin-header{height:106px;padding-block:10px}.admin-header .brand-logo{width:116px}.header-links{gap:10px}
  .footer-bottom{flex-wrap:wrap}.footer-brand .brand-logo{width:180px}
  .hero-copy>p,.story-copy>p,.detail-copy>p,.pin-dialog>p{font-size:16px}
  .product-meta{min-height:148px;padding-top:13px}.product-meta h3{font-size:17px;line-height:1.4}
  .product-category{font-size:12px}.product-price{font-size:15px}.product-price small{font-size:11px}
  .buy-button{font-size:12px;padding:10px 9px}.buy-icon{width:21px;height:21px}
  .order-steps p,.location-copy p,.social-cards p{font-size:15px}
  .section-heading>p{font-size:14px}.search-field input{font-size:16px}
  .login-story>p,.login-card>p{font-size:16px}.small-note{font-size:12px!important}
}
@media(max-width:360px){
  .site-header .brand-logo{width:118px}.admin-header .brand-logo{width:106px}.admin-header{padding-inline:16px}
  .admin-header .demo-pill{font-size:8px;padding:5px 7px}.product-meta h3{font-size:16px}
  .buy-button{font-size:11px}.product-meta{min-height:164px}
}

/* Genuine collection photography is shown with its full framing. */
.category-card img{object-fit:contain;background:#eff1e9}
.collection-dialog .detail-image img{object-fit:contain;background:#eff1e9}
.collection-dialog .detail-copy{display:flex;flex-direction:column;justify-content:center;gap:1rem}
.collection-dialog .detail-copy p{margin:0}
.collection-dialog .detail-copy .button{margin-top:.5rem}
.merchant-qr{display:block;max-width:100%;width:150px;height:auto;object-fit:contain;border-radius:10px}
.payment-dialog-placeholder .merchant-qr{width:auto;max-width:100%;height:min(42dvh,320px);object-fit:contain;margin:0 auto}
.upi-line{overflow-wrap:anywhere}
.shop-email{display:block;overflow-wrap:anywhere;margin:0 0 1rem;font-size:.875rem}
#shop-hours{font-weight:600;margin:.7rem 0}
.collection-toolbar[hidden]{display:none}

.owner-pending{max-width:680px;padding:8vh 24px}.owner-pending img{max-width:60%;height:auto;margin-bottom:2rem}.owner-pending p{margin:1.5rem 0 2rem;line-height:1.7}

.collection-section[hidden]{display:none}

.payment-dialog-placeholder p{overflow-wrap:anywhere;font-size:14px;line-height:1.6;user-select:all;color:var(--ink)}

.payment-dialog-placeholder{display:flex;flex-direction:column;align-items:center;gap:1rem}.payment-dialog-placeholder p{width:100%;max-width:100%;min-width:0}.payment-dialog-placeholder .merchant-qr{flex:none}

/* Payment details stay easy to reach without interrupting WhatsApp ordering. */
#payment-dialog{width:min(540px,calc(100% - 24px));padding:30px 28px 24px}
#payment-dialog h2{font-size:clamp(30px,5vw,40px);line-height:1.1;margin:12px 0 20px}
#payment-dialog .payment-dialog-placeholder{gap:14px}
#payment-dialog .payment-dialog-placeholder p{margin:0;font-size:14px;text-align:center}
#payment-dialog>p:last-child{font-size:13px;line-height:1.6;margin:16px 0 0}
.payment-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}
.payment-actions .button{flex:1;min-height:44px;padding:11px 12px;font-size:13px;gap:6px;white-space:normal;justify-content:center;text-align:center}
.payment-details-link{min-height:44px}
@media(max-width:600px){.mobile-dock a,.mobile-dock button{min-width:0;flex:1}.mobile-dock{gap:4px}.mobile-dock a,.mobile-dock button{font-size:10px}#payment-dialog{padding:26px 20px 20px}#payment-dialog .merchant-qr{height:min(36dvh,300px)}.payment-actions .button{font-size:12px}}

@media(max-width:360px){#payment-dialog .payment-dialog-placeholder p{font-size:13px}}
