/* ==========================================================================
   Sri Arunchunai Crackers - "Peacock Premium" theme layer
   --------------------------------------------------------------------------
   Loads AFTER style.css and colors/arunchunai.css, so it is the last word on
   look. Palette is sampled from assets/img/logo.png (the peacock mark):
   deep purple #2a1758, royal purple #512092, blue-violet #2550b4,
   peacock teal #14769f, gold #c9982f.

   Headings use DM Serif Display (assets/css/fonts/dm.css maps .display-*);
   body copy stays Urbanist.
   ========================================================================== */

:root{
  --pk-cream:      #fbf9f4;
  --pk-cream-2:    #f4eee3;
  --pk-white:      #ffffff;
  --pk-navy:       #1f2a55;
  --pk-navy-deep:  #161e3d;
  --pk-blue:       #2e4272;
  --pk-teal:       #3b6375;
  --pk-teal-lt:    #527c8f;
  --pk-gold:       #a9703c;   /* copper accent */
  --pk-gold-deep:  #8a5a2e;
  --pk-gold-lt:    #cf9a63;   /* lighter copper, for text on dark */
  --pk-ink:        #1d2735;
  --pk-muted:      #5d6879;
  --pk-line:       rgba(31,42,85,.14);
  --pk-shadow:     0 18px 50px -22px rgba(22,30,61,.35);
  --pk-shadow-sm:  0 8px 24px -14px rgba(22,30,61,.32);
  --pk-radius:     18px;
}

/* ---------- ground -------------------------------------------------------- */
body{ background:var(--pk-cream); color:var(--pk-ink); }
.wrapper.bg-light, section.bg-light, .bg-light{ background:var(--pk-cream) !important; }
.pk-alt{ background:var(--pk-cream-2) !important; }
h1,h2,h3,h4,h5,h6{ color:var(--pk-navy); }
p{ color:var(--pk-muted); }
a{ color:var(--pk-teal); }
a:hover{ color:var(--pk-blue); }

.pk-section{ padding:88px 0; }
@media (max-width:768px){ .pk-section{ padding:56px 0; } }
.pk-narrow{ max-width:760px; margin-left:auto; margin-right:auto; }

/* ---------- shared type --------------------------------------------------- */
.pk-eyebrow{
  font-size:.72rem; font-weight:700; letter-spacing:.22em; text-transform:uppercase;
  color:var(--pk-teal); margin-bottom:1rem; display:block;
}
.pk-eyebrow.on-dark{ color:var(--pk-gold-lt); }
.pk-title{
  font-family:"DM Serif Display",Georgia,serif; font-weight:400;
  color:var(--pk-navy); line-height:1.12; letter-spacing:normal;
  font-size:clamp(1.9rem,1.15rem + 2.4vw,3.15rem); margin-top:0; margin-bottom:1.1rem;
}
.pk-title.on-dark{ color:#fff; }
.pk-title.pk-narrow{ margin-left:auto; margin-right:auto; }
.pk-lede{ font-size:1.06rem; line-height:1.75; color:var(--pk-muted); }
.pk-lede.on-dark{ color:rgba(255,255,255,.82); }

/* gold diamond divider */
.pk-rule{ display:flex; align-items:center; justify-content:center; gap:.7rem; margin:1.4rem 0 1.8rem; }
.pk-rule::before,.pk-rule::after{
  content:""; height:1px; width:64px;
  background:linear-gradient(90deg,transparent,var(--pk-gold));
}
.pk-rule::after{ background:linear-gradient(90deg,var(--pk-gold),transparent); }
.pk-rule i{
  width:7px; height:7px; background:var(--pk-gold); transform:rotate(45deg); display:block;
}
.pk-rule.start{ justify-content:flex-start; }
.pk-rule.start::before{ display:none; }

/* ---------- buttons ------------------------------------------------------- */
/* Sized in px, not rem, on purpose: this template sets the root font-size to
   20px, so the rem-based padding here rendered these ~68px tall. A control
   height wants to be deterministic, so the box metrics are absolute and only
   colour varies between the variants. Target height is 40px. */
.pk-btn{
  display:inline-flex; align-items:center; justify-content:center; gap:8px;
  padding:9px 20px; border-radius:5px; font-weight:600;
  font-size:15px; line-height:1.35; white-space:nowrap;
  border:1px solid transparent; text-decoration:none; cursor:pointer;
  transition:transform .18s ease, box-shadow .18s ease, background .18s ease, color .18s ease;
}
.pk-btn:hover{ transform:translateY(-1px); }
.pk-btn-gold{ background:var(--pk-gold); color:#fff; box-shadow:0 10px 26px -14px rgba(138,90,46,.9); }
.pk-btn-gold:hover{ background:#bd7f45; color:#fff; }
.pk-btn-navy{ background:var(--pk-navy); color:#fff; }
.pk-btn-navy:hover{ background:var(--pk-blue); color:#fff; }
.pk-btn-ghost{ border-color:var(--pk-line); color:var(--pk-navy); background:transparent; }
.pk-btn-ghost:hover{ border-color:var(--pk-teal); color:var(--pk-teal); }
.pk-btn-ghost.on-dark{ border-color:rgba(255,255,255,.4); color:#fff; }
.pk-btn-ghost.on-dark:hover{ border-color:var(--pk-gold-lt); color:var(--pk-gold-lt); }

/* ---------- top utility bar ---------------------------------------------- */
.pk-topbar{
  background:var(--pk-navy-deep); color:rgba(255,255,255,.78);
  font-size:.82rem; letter-spacing:.02em;
}
.pk-topbar a{ color:rgba(255,255,255,.78); text-decoration:none; }
.pk-topbar a:hover{ color:var(--pk-gold-lt); }
.pk-topbar .pk-flag{ color:var(--pk-gold-lt); font-weight:600; }
.pk-topbar .inner{ display:flex; flex-wrap:wrap; gap:.4rem 1.6rem; align-items:center;
  justify-content:space-between; padding:.55rem 0; }

/* ---------- navbar -------------------------------------------------------- */
.navbar.pk-nav{ background:rgba(251,249,244,.94); border-bottom:1px solid var(--pk-line); padding:.55rem 0; }
.navbar.pk-nav .nav-link{ color:var(--pk-navy) !important; font-weight:600; font-size:.95rem; }
.navbar.pk-nav .nav-link:hover,.navbar.pk-nav .nav-link.active{ color:var(--pk-teal) !important; }
.navbar.pk-nav .navbar-brand img{ height:72px; width:auto; }
@media (max-width:600px){ .navbar.pk-nav .navbar-brand img{ height:54px; } }

/* ---------- hero ---------------------------------------------------------- */
.pk-hero{ position:relative; overflow:hidden; padding:72px 0 0; background:var(--pk-cream); }
.pk-hero::before{
  content:""; position:absolute; left:-25%; right:55%; top:-30%; height:120%;
  background:radial-gradient(closest-side,rgba(59,99,117,.10),transparent 70%);
  pointer-events:none;
}
.pk-hero::after{
  content:""; position:absolute; left:60%; right:-20%; top:-20%; height:110%;
  background:radial-gradient(closest-side,rgba(169,112,60,.14),transparent 70%);
  pointer-events:none;
}
.pk-hero .inner{ position:relative; z-index:1; }
.pk-hero-figure{
  border-radius:22px; overflow:hidden; box-shadow:var(--pk-shadow);
  border:1px solid rgba(169,112,60,.4); background:#fff; line-height:0;
}
.pk-hero-figure img{ width:100%; height:auto; display:block; }

/* ---------- gradient band ------------------------------------------------- */
.pk-band{
  position:relative; overflow:hidden; color:#fff;
  background:linear-gradient(135deg,var(--pk-teal) 0%,var(--pk-blue) 52%,var(--pk-navy) 100%);
}
.pk-band::after{
  content:""; position:absolute; right:-10%; bottom:-60%; width:60%; height:160%;
  background:radial-gradient(closest-side,rgba(169,112,60,.22),transparent 70%);
  pointer-events:none;
}
.pk-band .container{ position:relative; z-index:1; }
.pk-band p{ color:rgba(255,255,255,.82); }

/* stat row inside the band */
.pk-stat{ text-align:center; padding:.4rem 0; }
.pk-stat .n{
  font-family:"DM Serif Display",Georgia,serif; font-size:2.5rem; line-height:1;
  color:var(--pk-gold-lt); display:block; margin-bottom:.4rem;
}
.pk-stat .l{ font-size:.8rem; letter-spacing:.16em; text-transform:uppercase; color:rgba(255,255,255,.8); }
@media (min-width:769px){ .pk-stat.divide{ border-left:1px solid rgba(255,255,255,.16); } }

/* ---------- cards --------------------------------------------------------- */
.pk-card{
  background:var(--pk-white); border:1px solid var(--pk-line); border-radius:var(--pk-radius);
  padding:2rem 1.75rem; height:100%; box-shadow:var(--pk-shadow-sm);
  transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.pk-card:hover{ transform:translateY(-4px); box-shadow:var(--pk-shadow); border-color:rgba(169,112,60,.55); }
.pk-card h4{ font-size:1.12rem; margin:0 0 .5rem; color:var(--pk-navy); }
.pk-card p{ margin:0; font-size:.94rem; line-height:1.65; }
.pk-card .ico{
  width:52px; height:52px; border-radius:14px; display:flex; align-items:center; justify-content:center;
  background:linear-gradient(135deg,rgba(59,99,117,.14),rgba(169,112,60,.18));
  margin-bottom:1.15rem;
}
.pk-card .ico img{ width:28px; height:28px; object-fit:contain; }

/* bank / detail card */
.pk-bank{
  background:var(--pk-white); border:1px solid var(--pk-line); border-radius:14px;
  padding:1.4rem 1.35rem; height:100%; box-shadow:var(--pk-shadow-sm);
  border-top:3px solid var(--pk-gold);
}
.pk-bank dl{ margin:0; }
.pk-bank dt{ font-size:.72rem; letter-spacing:.12em; text-transform:uppercase; color:var(--pk-muted); font-weight:600; }
.pk-bank dd{ margin:0 0 .7rem; font-weight:600; color:var(--pk-navy); font-size:.95rem; word-break:break-word; }
.pk-bank dd:last-child{ margin-bottom:0; }

/* ---------- FAQ ----------------------------------------------------------- */
.pk-faq{ border:1px solid var(--pk-line); border-radius:14px; background:#fff; overflow:hidden; }
.pk-faq + .pk-faq{ margin-top:.85rem; }
.pk-faq summary{
  list-style:none; cursor:pointer; padding:1.1rem 3rem 1.1rem 1.3rem; position:relative;
  font-weight:600; color:var(--pk-navy); font-size:1rem;
}
.pk-faq summary::-webkit-details-marker{ display:none; }
.pk-faq summary::after{
  content:""; position:absolute; right:1.3rem; top:50%; width:9px; height:9px;
  border-right:2px solid var(--pk-teal); border-bottom:2px solid var(--pk-teal);
  transform:translateY(-70%) rotate(45deg); transition:transform .2s ease;
}
.pk-faq[open] summary::after{ transform:translateY(-30%) rotate(-135deg); }
.pk-faq[open] summary{ color:var(--pk-teal); }
.pk-faq .body{ padding:0 1.3rem 1.2rem; color:var(--pk-muted); line-height:1.7; font-size:.95rem; }
.pk-faq .body p{ margin:0 0 .4rem; }
.pk-faq .body p:last-child{ margin-bottom:0; }

/* ---------- contact ------------------------------------------------------- */
.pk-contact{
  background:#fff; border:1px solid var(--pk-line); border-radius:var(--pk-radius);
  overflow:hidden; box-shadow:var(--pk-shadow-sm);
}
.pk-contact iframe{ width:100%; height:100%; min-height:340px; border:0; display:block; }
.pk-contact .pad{ padding:2.4rem; }
.pk-contact .row-item{ display:flex; gap:1rem; margin-bottom:1.5rem; }
.pk-contact .row-item:last-child{ margin-bottom:0; }
.pk-contact .row-item .dot{
  flex:0 0 40px; height:40px; border-radius:12px; display:flex; align-items:center; justify-content:center;
  background:rgba(59,99,117,.1); color:var(--pk-teal); font-size:1.05rem;
}
.pk-contact h5{ font-size:.78rem; letter-spacing:.14em; text-transform:uppercase; color:var(--pk-muted);
  margin:0 0 .3rem; font-weight:700; }
.pk-contact .val{ color:var(--pk-navy); font-weight:600; margin:0; line-height:1.55; }
.pk-contact .val a{ color:var(--pk-navy); text-decoration:none; }
.pk-contact .val a:hover{ color:var(--pk-teal); }

/* ---------- brands / logos ----------------------------------------------- */
.pk-brand{
  background:#fff; border:1px solid var(--pk-line); border-radius:14px; padding:1.2rem;
  display:flex; align-items:center; justify-content:center; height:100%;
}
.pk-brand img{ max-height:56px; width:auto; opacity:.9; }

/* ---------- footer -------------------------------------------------------- */
.pk-footer{ background:var(--pk-navy-deep); color:rgba(255,255,255,.7); padding:72px 0 0; }
.pk-footer h4{ color:#fff; font-size:.82rem; letter-spacing:.16em; text-transform:uppercase; margin-bottom:1.2rem; }
.pk-footer a{ color:rgba(255,255,255,.7); text-decoration:none; }
.pk-footer a:hover{ color:var(--pk-gold-lt); }
.pk-footer address{ font-style:normal; line-height:1.8; margin:0 0 .8rem; }
.pk-footer .list{ list-style:none; padding:0; margin:0; line-height:2.1; }
.pk-footer .bar{
  border-top:1px solid rgba(255,255,255,.12); margin-top:56px; padding:1.4rem 0;
  font-size:.85rem; color:rgba(255,255,255,.55);
}
.pk-footer .brandmark{ background:#fff; border-radius:12px; padding:.7rem .9rem; display:inline-block; margin-bottom:1.2rem; }
.pk-footer .brandmark img{ height:58px; width:auto; display:block; }

/* ---------- price list ---------------------------------------------------- */
.pk-orderbar{
  position:sticky; top:0; z-index:1000;
  background:var(--pk-navy); color:#fff; box-shadow:0 6px 20px -10px rgba(0,0,0,.5);
}
.pk-orderbar .inner{ display:flex; align-items:center; justify-content:space-between; gap:1rem;
  padding:.7rem 0; flex-wrap:wrap; }
.pk-orderbar .meta{ display:flex; gap:2rem; flex-wrap:wrap; font-size:.92rem; }
.pk-orderbar .meta b{ color:var(--pk-gold-lt); font-weight:700; }
/* Price grid. Metrics are in px for the same reason the buttons are: this
   template sets the root font-size to 20px, so rem values rendered the body
   text at 19px and the rows at 80px tall. A dense price list wants ~14px text
   and ~48px rows. Numeric columns use tabular figures so the rupee amounts
   line up digit-for-digit down the column. */
.pk-table{ width:100%; border-collapse:separate; border-spacing:0; background:#fff;
  border:1px solid var(--pk-line); border-radius:8px; overflow:hidden; }
.pk-table thead th{
  background:var(--pk-navy); color:#fff; font-size:11px; line-height:1.4;
  letter-spacing:.1em; text-transform:uppercase; font-weight:700;
  padding:11px 12px; text-align:center; border:0; white-space:nowrap;
}
.pk-table td{
  padding:8px 12px; border-bottom:1px solid var(--pk-line);
  vertical-align:middle; font-size:14px; line-height:1.45;
}
.pk-table tbody tr:last-child td{ border-bottom:0; }
.pk-table tbody tr:nth-child(even) td{ background:#fcfaf6; }
.pk-table tbody tr:hover td{ background:#f6f1e8; }
.pk-table .cat th{
  background:linear-gradient(135deg,rgba(59,99,117,.12),rgba(169,112,60,.14));
  color:var(--pk-navy); text-align:center; font-family:"DM Serif Display",Georgia,serif;
  font-size:15px; line-height:1.4; letter-spacing:.06em; text-transform:uppercase;
  padding:9px 12px; font-weight:400;
}
.pk-table .pname{ font-weight:600; color:var(--pk-navy); font-size:14px; line-height:1.4; margin:0; }
.pk-table .rate,
.pk-table .amt{ font-size:14px; font-weight:700; text-align:right; white-space:nowrap;
  font-variant-numeric:tabular-nums; font-feature-settings:"tnum"; }
.pk-table .rate{ color:var(--pk-navy); }
.pk-table .amt{ color:var(--pk-teal); }
.pk-table .unit{ text-align:center; color:var(--pk-muted); font-size:12.5px; white-space:nowrap; }
.pk-table .thumb{ width:1%; padding-left:14px; padding-right:6px; }
/* Head cells align with the data underneath them, not all centred: product
   left, money right, the rest centred. */
.pk-table thead th:first-child{ width:1%; }
.pk-table thead th:nth-child(2){ text-align:left; }
.pk-table thead th:nth-child(4),
.pk-table thead th:nth-child(6){ text-align:right; }
/* Rows with no product photo fall back to the company logo in pricelist.php.
   Across 81 rows that repetition is noisy, so the placeholder is played down
   while real product shots stay at full strength. */
.pk-table .thumb img[src$="logo.png"]{ height:20px; opacity:.28; }
.pk-table .thumb img{ height:32px; width:auto; border-radius:4px; display:block; }
.pk-qty{
  width:74px; padding:6px 10px; border:1px solid var(--pk-line); border-radius:5px;
  font-size:14px; line-height:1.35; text-align:center; font-weight:600;
  color:var(--pk-navy); background:#fff; font-variant-numeric:tabular-nums;
}
.pk-qty:focus{ outline:none; border-color:var(--pk-teal); box-shadow:0 0 0 3px rgba(59,99,117,.14); }
.pk-steps{ list-style:none; counter-reset:s; padding:0; margin:0; }
.pk-steps li{ counter-increment:s; position:relative; padding-left:2.4rem; margin-bottom:.7rem;
  color:var(--pk-muted); line-height:1.6; }
.pk-steps li::before{
  content:counter(s); position:absolute; left:0; top:-1px; width:26px; height:26px; border-radius:50%;
  background:rgba(59,99,117,.12); color:var(--pk-teal); font-weight:700; font-size:.8rem;
  display:flex; align-items:center; justify-content:center;
}

/* ---------- legal / prose pages ------------------------------------------ */
.pk-prose{ background:#fff; border:1px solid var(--pk-line); border-radius:var(--pk-radius);
  padding:3rem; box-shadow:var(--pk-shadow-sm); }
@media (max-width:768px){ .pk-prose{ padding:1.6rem; } }
.pk-prose h2{ font-family:"DM Serif Display",Georgia,serif; font-weight:400; font-size:1.45rem;
  margin:2.2rem 0 .9rem; color:var(--pk-navy); }
.pk-prose h2:first-child{ margin-top:0; }
.pk-prose p,.pk-prose li{ color:var(--pk-muted); line-height:1.8; font-size:.97rem; }
.pk-prose a{ color:var(--pk-teal); }

/* page masthead for inner pages */
.pk-masthead{ background:linear-gradient(135deg,var(--pk-teal) 0%,var(--pk-blue) 55%,var(--pk-navy) 100%);
  color:#fff; padding:64px 0; text-align:center; }
.pk-masthead h1{ font-family:"DM Serif Display",Georgia,serif; font-weight:400; color:#fff;
  font-size:clamp(1.8rem,1.2rem + 2vw,2.7rem); margin:0; }
.pk-masthead .crumb{ color:rgba(255,255,255,.72); font-size:.85rem; margin-top:.6rem; }
.pk-masthead .crumb a{ color:var(--pk-gold); text-decoration:none; }

/* ---------- misc ---------------------------------------------------------- */
.pk-note{ background:rgba(169,112,60,.12); border:1px solid rgba(169,112,60,.45);
  border-radius:12px; padding:1rem 1.2rem; color:#6b4a09; font-size:.92rem; }
.pk-chip{ display:inline-block; background:rgba(59,99,117,.1); color:var(--pk-teal);
  border-radius:999px; padding:.35rem .9rem; font-size:.8rem; font-weight:600; letter-spacing:.04em; }

/* ---------- booking terms ------------------------------------------------- */
.pk-terms ul{ list-style:none; margin:0; padding:0; }
.pk-terms li{ position:relative; padding-left:1.35rem; margin-bottom:.6rem;
  color:var(--pk-muted); font-size:.94rem; line-height:1.65; }
.pk-terms li:last-child{ margin-bottom:0; }
.pk-terms li::before{ content:""; position:absolute; left:0; top:.55rem; width:6px; height:6px;
  background:var(--pk-gold); transform:rotate(45deg); }
.pk-terms dl{ margin:0; display:grid; grid-template-columns:1fr auto; gap:.55rem 1rem;
  align-items:baseline; }
.pk-terms dt{ color:var(--pk-muted); font-size:.94rem; }
.pk-terms dd{ margin:0; color:var(--pk-navy); font-weight:700; font-size:.94rem; white-space:nowrap; }

/* the one number a customer must know before booking, so it gets the gold */
.pk-minval{ margin-top:1.3rem; padding-top:1.2rem; border-top:1px solid var(--pk-line); }
.pk-minval .l{ display:block; font-size:.72rem; letter-spacing:.12em; text-transform:uppercase;
  color:var(--pk-muted); font-weight:600; margin-bottom:.35rem; }
.pk-minval .n{ font-family:"DM Serif Display",Georgia,serif; font-size:2rem; line-height:1;
  color:var(--pk-gold); }

.pk-termsbar{ margin-top:2.75rem; padding-top:1.9rem; border-top:1px solid var(--pk-line);
  display:flex; flex-wrap:wrap; gap:.7rem; justify-content:center; }

/* --------------------------------------------------------------------------
   Legacy overrides.
   style.css carries a hand-appended block (after its sourceMappingURL) from
   the previous design: `#products{padding-top:200px}` and a `#products h1`
   rule that paints the heading solid #2e3193 with white text. Both fight the
   new price-list layout, so they are neutralised here rather than edited into
   the 844 KB vendor file.
   -------------------------------------------------------------------------- */
/* Price-list header. The customer came here to see prices, so the page gets
   them to the first row fast: a single compact head row instead of a centred
   hero, with the ordering steps tucked into a details/summary. */
/* ID-level, deliberately: style.css carries a legacy `#products{padding-top:200px}`
   and a `#products h1{background:#2e3193;color:#fff!important}` appended after its
   sourceMappingURL. A class selector loses to those, so these must match on the id. */
section#products.pk-listing{ padding:26px 0 64px; }
@media (max-width:768px){ section#products.pk-listing{ padding:18px 0 40px; } }
.pk-listhead{
  display:flex; flex-wrap:wrap; gap:16px 40px; align-items:flex-start;
  justify-content:space-between; padding-bottom:18px; margin-bottom:22px;
  border-bottom:1px solid var(--pk-line);
}
.pk-listhead-title{ flex:0 0 auto; }
.pk-listhead .pk-eyebrow{ margin-bottom:2px; font-size:10.5px; }
#products .pk-listhead h1{
  font-family:"DM Serif Display",Georgia,serif; font-weight:400;
  font-size:30px; line-height:1.15; margin:0 0 2px;
  color:var(--pk-navy) !important; background:none; padding:0; text-align:left;
}
.pk-listhead-meta{ flex:1 1 420px; max-width:640px; }
.pk-listhead-meta p{ margin:0; font-size:13.5px; line-height:1.6; color:var(--pk-muted); }
.pk-listhead-meta strong{ color:var(--pk-navy); }
.pk-howto{ margin-top:8px; }
.pk-howto summary{
  cursor:pointer; list-style:none; display:inline-flex; align-items:center; gap:6px;
  font-size:13px; font-weight:600; color:var(--pk-teal);
}
.pk-howto summary::-webkit-details-marker{ display:none; }
.pk-howto summary::after{
  content:""; width:6px; height:6px; border-right:2px solid currentColor;
  border-bottom:2px solid currentColor; transform:translateY(-2px) rotate(45deg);
  transition:transform .2s ease;
}
.pk-howto[open] summary::after{ transform:translateY(1px) rotate(-135deg); }
.pk-howto .pk-steps{ margin-top:10px; }
.pk-howto .pk-steps li{ font-size:13px; margin-bottom:6px; padding-left:28px; }
.pk-howto .pk-steps li::before{ width:20px; height:20px; font-size:11px; }

/* Running total + minimum-order feedback in the sticky price-list bar.
   The customer needs to see where the basket stands while they are still
   entering quantities, so the total is the loudest thing in the bar. */
.pk-orderbar .meta{ align-items:center; gap:.4rem 1.6rem; }
.pk-orderbar .meta .lbl,
.pk-orderbar .meta .tot{
  font-size:.78rem; letter-spacing:.14em; text-transform:uppercase;
  color:rgba(255,255,255,.62); display:inline-flex; align-items:baseline; gap:.5rem;
}
.pk-orderbar .meta .lbl b{ font-size:1rem; letter-spacing:0; text-transform:none; }
.pk-orderbar .meta .tot b{
  font-family:"DM Serif Display",Georgia,serif; font-weight:400;
  font-size:1.5rem; letter-spacing:0; text-transform:none; color:var(--pk-gold-lt);
}
.pk-minnote{
  font-size:.82rem; font-weight:600; border-radius:999px; padding:.3rem .85rem;
  white-space:nowrap; letter-spacing:.01em;
  text-transform:none;   /* it is a sentence, not a label - keep it readable */
}
.pk-minnote:empty{ display:none; }
.pk-minnote.short{ background:rgba(207,154,99,.18); color:#e6b98a; }
.pk-minnote.met{ background:rgba(255,255,255,.14); color:#fff; }
.pk-minnote.met::before{ content:"\2713\00a0"; }
@media (max-width:575px){
  .pk-orderbar .inner{ gap:.5rem; }
  .pk-orderbar .meta{ gap:.3rem 1rem; width:100%; }
  .pk-orderbar .meta .tot b{ font-size:1.25rem; }
  .pk-minnote{ font-size:.75rem; padding:.25rem .7rem; white-space:normal; }
}

/* compact booking terms inside the price-list header expander */
.pk-howto.pk-terms ul{ margin-top:10px; }
.pk-howto.pk-terms li{ font-size:13px; margin-bottom:6px; padding-left:18px; }
.pk-howto.pk-terms li::before{ top:.42rem; width:5px; height:5px; }
.pk-howto.pk-terms p{ font-size:13px; }

/* ==========================================================================
   Discount display  --  the "50% OFF" the client sets in admin/settings.php.

   Nothing here changes what anything costs: the bold figure is the same net
   rate the table has always printed, and the struck-out one beside it is the
   list price computed from it in pricing.php. The pair has to read at a
   glance down a 127-row table, so the struck price is deliberately quieter --
   smaller, muted, with only the strike itself picked out in copper.
   ========================================================================== */

/* The two prices are separate columns, so they line up digit-for-digit down
   the page and a customer can read either one on its own. */
.pk-table .rate.was{ font-size:13px; font-weight:600; color:var(--pk-muted); }

/* The line is drawn on an <s> inside the cell, not on the cell itself.
   text-decoration set on a table-cell is the one place browsers disagree about
   whether it reaches the cell's own text, and <s> carries a line-through from
   the UA stylesheet regardless -- so the price stays struck even if every
   custom rule below is overridden or fails to load. <s> is also the right
   element semantically: a price that is no longer the one on offer.

   The colour and thickness are progressive enhancement. Where
   text-decoration-color is unsupported the line falls back to the cell's own
   muted grey, which still reads as struck through. */
.pk-table .rate.was s{
  -webkit-text-decoration:line-through rgba(169,112,60,.85);
          text-decoration:line-through rgba(169,112,60,.85);
  text-decoration-thickness:1.5px;   /* after the shorthand, which resets it */
  text-decoration-skip-ink:none;     /* never break the line for a descender */
}
.pk-table .rate.now{ color:var(--pk-navy); font-weight:700; }

/* With the offer running the table is 7 columns wide, not 6: thumb, product,
   unit, actual price, offer rate, qty, amount. The head cells over the three
   money columns have to move with them, or they sit left of their own
   figures. */
.pk-table-offer thead th:nth-child(4),
.pk-table-offer thead th:nth-child(5),
.pk-table-offer thead th:nth-child(7){ text-align:right; }
.pk-table-offer thead th:nth-child(6){ text-align:center; }

/* The struck column is supporting information, so it gives up its padding
   first and stays visibly quieter than the price being charged. */
.pk-table-offer td.rate.was,
.pk-table-offer thead th:nth-child(4){ padding-right:6px; }
.pk-table-offer td.rate.now,
.pk-table-offer thead th:nth-child(5){ padding-left:6px; }
.pk-table-offer thead th:nth-child(4){ color:rgba(255,255,255,.72); font-weight:600; }

/* Headline badge under "Price List". Copper, because the peacock teal is
   already carrying the section headings and the two would compete. */
.pk-offer{
  display:inline-flex; align-items:baseline; gap:9px;
  margin-top:10px; padding:7px 16px 8px;
  border-radius:999px;
  background:linear-gradient(135deg,var(--pk-gold-deep),var(--pk-gold-lt));
  color:#fff;
  box-shadow:0 10px 22px -14px rgba(138,90,46,.95);
  font-family:"DM Serif Display",Georgia,serif; font-weight:400;
  font-size:18px; line-height:1; letter-spacing:.03em;
  white-space:nowrap;
}
.pk-offer em{
  font-family:inherit; font-style:normal;
  font-size:10.5px; letter-spacing:.16em; text-transform:uppercase;
  color:rgba(255,255,255,.82);
}

/* "You save" in the sticky bar, styled as a quieter sibling of the total so
   it reads as a consequence of the basket rather than a second total. */
.pk-orderbar .meta .sav{
  font-size:.78rem; letter-spacing:.14em; text-transform:uppercase;
  color:rgba(255,255,255,.62); display:inline-flex; align-items:baseline; gap:.5rem;
}
.pk-orderbar .meta .sav b{
  font-size:1rem; letter-spacing:0; text-transform:none;
  color:#fff; font-weight:700;
}
@media (max-width:575px){
  .pk-offer{ font-size:16px; padding:6px 13px 7px; }
}
