/* =====================================================================
   pages.css — shared styles for Fetraco sub-pages (destinations, packages,
   stays, experiences). Loaded AFTER styles.css (reuses its :root tokens).
   Self-contained chrome: sticky header, page hero, breadcrumb, content
   blocks, cards, itinerary timeline, FAQ, CTA band. 100% responsive.
   ===================================================================== */
:root{
  --pg-max: 1200px;
  --pg-pad: clamp(18px, 4vw, 56px);
  --pg-radius: 18px;
  --pg-line: rgba(13,15,12,.10);
}
*{ box-sizing:border-box; }
.pg{ margin:0; font-family:var(--font-ui,Inter,system-ui,sans-serif); color:var(--ink,#0d0f0c); background:var(--cream,#f6f1e7); -webkit-font-smoothing:antialiased; }
.pg img{ max-width:100%; display:block; }
.pg a{ color:inherit; text-decoration:none; }
.pg picture{ display:block; }
.wrap{ width:100%; max-width:var(--pg-max); margin-inline:auto; padding-inline:var(--pg-pad); }
.pg ::selection{ background:var(--gold,#c9a24b); color:#fff; }

/* ---------------- HEADER ---------------- */
.site-head{
  position:fixed; inset:0 0 auto 0; z-index:60;
  display:flex; align-items:center; justify-content:space-between;
  gap:18px; padding:16px var(--pg-pad);
  transition:background .35s var(--ease,ease), box-shadow .35s, padding .35s;
}
/* soft top scrim — keeps the transparent navbar crisp & defined over bright hero
   images, then fades away once the bar turns solid on scroll */
.site-head::before{
  content:""; position:absolute; left:0; right:0; top:0; height:150px; z-index:-1;
  pointer-events:none; opacity:1;
  background:linear-gradient(180deg, rgba(8,11,8,.62) 0%, rgba(8,11,8,.34) 38%, rgba(8,11,8,0) 100%);
  transition:opacity .35s var(--ease,ease);
}
.site-head.is-stuck::before{ opacity:0; }
.site-head__brand b, .site-head__brand small{ text-shadow:0 1px 10px rgba(0,0,0,.45); }
.site-nav a{ text-shadow:0 1px 10px rgba(0,0,0,.4); }
.site-head.is-stuck .site-head__brand b,
.site-head.is-stuck .site-head__brand small,
.site-head.is-stuck .site-nav a{ text-shadow:none; }
.site-head__brand{ display:flex; align-items:center; gap:11px; }
.site-head__brand img{ width:42px; height:42px; object-fit:contain; filter:drop-shadow(0 2px 6px rgba(0,0,0,.35)); }
.site-head__brand b{ font-family:var(--font-display,sans-serif); font-weight:800; font-size:1.18rem; line-height:1; letter-spacing:-.01em; color:#fff; }
.site-head__brand small{ display:block; font-size:.62rem; letter-spacing:.32em; text-transform:uppercase; color:var(--gold-soft,#e6c585); margin-top:3px; }
.site-nav{ display:flex; align-items:center; gap:clamp(14px,2vw,30px); }
.site-nav a{ position:relative; font-size:.92rem; font-weight:500; color:rgba(255,255,255,.92); padding:6px 0; }
.site-nav a::after{ content:""; position:absolute; left:0; bottom:0; width:0; height:2px; background:var(--gold,#c9a24b); transition:width .3s var(--ease,ease); }
.site-nav a:hover::after, .site-nav a.is-active::after{ width:100%; }
.site-nav a.is-active{ color:#fff; }
.site-head__cta{
  display:inline-flex; align-items:center; gap:10px; flex-shrink:0; white-space:nowrap;
  padding:9px 9px 9px 20px; border-radius:999px; position:relative; overflow:hidden;
  font-family:var(--font-ui,Inter,sans-serif); font-weight:700; font-size:.9rem; letter-spacing:.01em; color:#1a1407;
  background:linear-gradient(135deg,#ecd49b 0%,#d4af5e 45%,#c9a24b 100%);
  box-shadow:0 10px 24px -12px rgba(201,162,75,.75), inset 0 1px 0 rgba(255,255,255,.45);
  transition:transform .3s var(--ease,ease), box-shadow .3s, filter .3s;
}
/* idle sheen sweep */
.site-head__cta::before{ content:""; position:absolute; inset:0; border-radius:inherit; background:linear-gradient(115deg,transparent 30%,rgba(255,255,255,.5) 48%,transparent 62%); transform:translateX(-120%); transition:transform .6s var(--ease,ease); pointer-events:none; }
.site-head__cta:hover::before{ transform:translateX(120%); }
.site-head__cta svg{ width:16px; height:16px; padding:6px; box-sizing:content-box; border-radius:50%; background:rgba(26,20,7,.16); transition:transform .3s var(--ease,ease); }
.site-head__cta:hover{ transform:translateY(-2px); filter:brightness(1.04); box-shadow:0 16px 30px -12px rgba(201,162,75,.95), inset 0 1px 0 rgba(255,255,255,.55); }
.site-head__cta:hover svg{ transform:translateX(3px); }
.site-head__burger{ display:none; width:44px; height:44px; border:0; background:rgba(255,255,255,.12); border-radius:12px; cursor:pointer; flex-direction:column; gap:5px; align-items:center; justify-content:center; backdrop-filter:blur(6px); }
.site-head__burger span{ width:20px; height:2px; background:#fff; border-radius:2px; transition:.3s; }
/* solid state on scroll */
.site-head.is-stuck{ background:rgba(17,19,16,.92); backdrop-filter:blur(14px) saturate(1.2); box-shadow:0 10px 30px -16px rgba(0,0,0,.6); padding-top:10px; padding-bottom:10px; }

/* ---------------- PAGE HERO ---------------- */
.phero{ position:relative; min-height:clamp(360px,56vh,560px); display:flex; align-items:flex-end; color:#fff; overflow:hidden; background:#0d0f0c; }
.phero__media{ position:absolute; inset:0; z-index:0; }
/* the <img> sits inside an inline <picture>, so height:100% wouldn't resolve —
   pin both to the hero box so the banner fills it on every screen (esp. tall
   mobile heros) and the heading/paragraph sit OVER the image, not below it */
.phero__media picture{ position:absolute; inset:0; display:block; }
.phero__media img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.phero__media::after{ content:""; position:absolute; inset:0; background:linear-gradient(180deg, rgba(10,12,9,.30) 0%, rgba(10,12,9,.12) 42%, rgba(10,12,9,.78) 100%); }
.phero__inner{ position:relative; z-index:1; width:100%; max-width:var(--pg-max); margin-inline:auto; padding:0 var(--pg-pad) clamp(34px,6vh,68px); }
.crumb{ display:flex; flex-wrap:wrap; gap:8px; align-items:center; font-size:.82rem; color:rgba(255,255,255,.8); margin-bottom:18px; }
.crumb a:hover{ color:var(--gold-soft,#e6c585); }
.crumb span{ opacity:.6; }
.phero__eyebrow{ font-family:var(--font-serif,serif); font-style:italic; color:var(--gold-soft,#e6c585); font-size:clamp(1rem,1.8vw,1.25rem); margin:0 0 10px; }
.phero__title{ font-family:var(--font-display,sans-serif); font-weight:800; letter-spacing:-.02em; line-height:1.02; font-size:clamp(2.1rem,5.6vw,4rem); margin:0; text-shadow:0 4px 30px rgba(0,0,0,.35); }
.phero__lead{ max-width:62ch; margin:16px 0 0; font-size:clamp(1rem,1.5vw,1.16rem); line-height:1.65; color:rgba(255,255,255,.92); }
.phero__meta{ display:flex; flex-wrap:wrap; gap:10px; margin-top:20px; }
.chip{ display:inline-flex; align-items:center; gap:7px; padding:7px 14px; border-radius:999px; background:rgba(255,255,255,.14); border:1px solid rgba(255,255,255,.22); font-size:.82rem; font-weight:600; backdrop-filter:blur(6px); }
.chip svg{ width:15px; height:15px; }
.chip--gold{ background:var(--gold,#c9a24b); color:#1a1407; border-color:transparent; }

/* ---------------- SECTIONS ---------------- */
.section{ padding:clamp(48px,7vh,96px) 0; }
.section--tint{ background:linear-gradient(180deg,#fff, var(--cream,#f6f1e7)); }
.section--dark{ background:linear-gradient(160deg,#10231f,#0c0f0c); color:#fff; }
.eyebrow{ font-family:var(--font-serif,serif); font-style:italic; color:var(--gold,#c9a24b); font-size:clamp(.95rem,1.5vw,1.15rem); margin:0 0 10px; }
.h2{ font-family:var(--font-display,sans-serif); font-weight:800; letter-spacing:-.02em; font-size:clamp(1.6rem,3.6vw,2.6rem); line-height:1.08; margin:0 0 6px; }
.lead-sub{ max-width:64ch; color:var(--card-value,#5b5750); font-size:clamp(.98rem,1.4vw,1.08rem); line-height:1.65; margin:8px 0 0; }
.section--dark .lead-sub{ color:rgba(255,255,255,.78); }
.prose{ max-width:72ch; }
.prose p{ font-size:clamp(1rem,1.4vw,1.1rem); line-height:1.8; color:#3f3b34; margin:0 0 1.1em; }
.section--dark .prose p{ color:rgba(255,255,255,.84); }
.split{ display:grid; grid-template-columns:1.2fr .8fr; gap:clamp(28px,4vw,60px); align-items:start; }
.facts{ display:grid; gap:14px; }
.fact{ background:#fff; border:1px solid var(--pg-line); border-radius:14px; padding:18px 20px; box-shadow:0 18px 40px -30px rgba(0,0,0,.5); }
.fact h4{ margin:0 0 4px; font-size:.78rem; letter-spacing:.14em; text-transform:uppercase; color:var(--gold,#c9a24b); }
.fact p{ margin:0; font-size:.98rem; line-height:1.55; color:#3f3b34; }

/* ---------------- CARD GRIDS ---------------- */
.grid{ display:grid; gap:clamp(18px,2.4vw,28px); grid-template-columns:repeat(auto-fill,minmax(280px,1fr)); margin-top:clamp(26px,4vh,44px); }
.grid--3{ grid-template-columns:repeat(3,1fr); }
.grid--4{ grid-template-columns:repeat(4,1fr); }
.card{ position:relative; display:flex; flex-direction:column; background:#fff; border-radius:var(--pg-radius); overflow:hidden; box-shadow:0 22px 50px -30px rgba(0,0,0,.5); transition:transform .35s var(--ease,ease), box-shadow .35s; border:1px solid var(--pg-line); }
.card:hover{ transform:translateY(-6px); box-shadow:0 34px 60px -30px rgba(0,0,0,.55); }
.card__media{ position:relative; aspect-ratio:4/3; overflow:hidden; }
/* the <img> lives inside an inline <picture>, so height:100% wouldn't resolve —
   pin both to the media box so object-fit:cover crops to the centre (not the top,
   which left tall shots like Kochi showing only sky) */
.card__media picture{ position:absolute; inset:0; display:block; }
.card__media img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; transition:transform .7s var(--ease,ease); }
.card:hover .card__media img{ transform:scale(1.06); }
.card__badge{ position:absolute; top:12px; left:12px; display:inline-flex; align-items:center; gap:5px; padding:5px 11px; border-radius:999px; background:rgba(13,15,12,.62); color:#fff; font-size:.78rem; font-weight:700; backdrop-filter:blur(5px); }
.card__badge svg{ width:13px; height:13px; fill:var(--gold-soft,#e6c585); }
.card__body{ padding:18px 20px 22px; display:flex; flex-direction:column; gap:8px; flex:1; }
.card__kicker{ font-size:.74rem; letter-spacing:.12em; text-transform:uppercase; color:var(--gold,#c9a24b); font-weight:700; }
.card__title{ font-family:var(--font-display,sans-serif); font-weight:700; font-size:1.22rem; letter-spacing:-.01em; margin:0; }
.card__text{ font-size:.94rem; line-height:1.6; color:var(--card-value,#5b5750); margin:0; }
.card__foot{ margin-top:auto; padding-top:8px; display:flex; align-items:center; justify-content:space-between; gap:10px; }
.card__link{ display:inline-flex; align-items:center; gap:7px; font-weight:700; font-size:.9rem; color:var(--gold-dark,#a9842f); }
.card__link svg{ width:16px; height:16px; transition:transform .3s; }
.card:hover .card__link svg{ transform:translateX(4px); }
.card__price{ font-weight:700; font-size:.92rem; color:var(--ink,#0d0f0c); }

/* feature list (things to do) */
.features{ display:grid; gap:16px; grid-template-columns:repeat(auto-fill,minmax(290px,1fr)); margin-top:clamp(22px,3.5vh,40px); }
.feature{ display:flex; gap:14px; background:#fff; border:1px solid var(--pg-line); border-radius:14px; padding:18px 20px; box-shadow:0 16px 38px -30px rgba(0,0,0,.5); }
.feature__ic{ flex:0 0 40px; height:40px; border-radius:11px; display:grid; place-items:center; background:linear-gradient(150deg,var(--gold,#c9a24b),var(--gold-soft,#e6c585)); color:#1a1407; font-weight:800; }
.feature h4{ margin:0 0 4px; font-size:1.04rem; font-family:var(--font-display,sans-serif); }
.feature p{ margin:0; font-size:.92rem; line-height:1.55; color:var(--card-value,#5b5750); }

/* ---------------- GALLERY STRIP ---------------- */
.gallery-grid{ display:grid; gap:12px; grid-template-columns:repeat(4,1fr); grid-auto-rows:180px; margin-top:clamp(22px,3.5vh,40px); }
.gallery-grid a{ overflow:hidden; border-radius:14px; }
.gallery-grid img{ width:100%; height:100%; object-fit:cover; transition:transform .6s var(--ease,ease); }
.gallery-grid a:hover img{ transform:scale(1.07); }
.gallery-grid .tall{ grid-row:span 2; }
.gallery-grid .wide{ grid-column:span 2; }

/* ---------------- ITINERARY TIMELINE ---------------- */
.timeline{ position:relative; margin-top:clamp(26px,4vh,44px); }
.timeline::before{ content:""; position:absolute; left:19px; top:8px; bottom:8px; width:2px; background:linear-gradient(var(--gold,#c9a24b),transparent); }
.tl-item{ position:relative; padding:0 0 26px 58px; }
.tl-item__dot{ position:absolute; left:8px; top:2px; width:24px; height:24px; border-radius:50%; background:var(--gold,#c9a24b); color:#1a1407; display:grid; place-items:center; font-weight:800; font-size:.78rem; box-shadow:0 0 0 5px rgba(201,162,75,.18); }
.tl-item h4{ margin:0 0 5px; font-family:var(--font-display,sans-serif); font-size:1.14rem; }
.tl-item__day{ font-size:.72rem; letter-spacing:.14em; text-transform:uppercase; color:var(--gold,#c9a24b); font-weight:700; }
.tl-item p{ margin:5px 0 0; font-size:.96rem; line-height:1.7; color:#3f3b34; }

/* pills / highlights */
.pills{ display:flex; flex-wrap:wrap; gap:10px; margin-top:18px; }
.pill{ display:inline-flex; align-items:center; gap:8px; padding:9px 15px; border-radius:12px; background:#fff; border:1px solid var(--pg-line); font-size:.9rem; font-weight:600; box-shadow:0 10px 26px -22px rgba(0,0,0,.5); }
.pill svg{ width:16px; height:16px; color:var(--gold,#c9a24b); }

/* ---------------- FAQ ---------------- */
.faq{ max-width:820px; margin-top:clamp(22px,3.5vh,40px); }
.faq details{ border:1px solid var(--pg-line); border-radius:14px; background:#fff; margin-bottom:12px; overflow:hidden; }
.faq summary{ list-style:none; cursor:pointer; padding:18px 22px; font-weight:700; font-size:1.02rem; display:flex; align-items:center; justify-content:space-between; gap:14px; }
.faq summary::-webkit-details-marker{ display:none; }
.faq summary::after{ content:"+"; font-size:1.5rem; color:var(--gold,#c9a24b); transition:transform .3s; line-height:1; }
.faq details[open] summary::after{ transform:rotate(45deg); }
.faq p{ margin:0; padding:0 22px 20px; line-height:1.7; color:#3f3b34; }

/* ---------------- CTA BAND ---------------- */
.cta-band{ position:relative; overflow:hidden; text-align:center; border-radius:24px; margin:clamp(40px,6vh,80px) auto 0; color:#fff;
  background:radial-gradient(120% 150% at 50% 0%, #1a3a30 0%, #102a22 40%, #0a0d0b 100%);
  border:1px solid rgba(230,197,133,.18); box-shadow:0 36px 80px -44px rgba(0,0,0,.85);
  padding:clamp(30px,4.4vw,52px); }
.cta-band::before{ content:""; position:absolute; left:50%; top:-42%; width:66%; height:80%; transform:translateX(-50%); background:radial-gradient(closest-side, rgba(230,197,133,.18), transparent 70%); pointer-events:none; }
.cta-band > *{ position:relative; }
.cta-band__eyebrow{ font-family:var(--font-serif,serif); font-style:italic; color:var(--gold-soft,#e6c585); margin:0 0 8px; letter-spacing:.02em; }
.cta-band h3{ font-family:var(--font-display,sans-serif); font-weight:800; letter-spacing:-.02em; font-size:clamp(1.5rem,3.3vw,2.3rem); margin:0 0 10px; }
.cta-band p{ max-width:46ch; margin:0 auto 22px; color:rgba(255,255,255,.8); line-height:1.55; }
.btn{ display:inline-flex; align-items:center; gap:9px; white-space:nowrap; padding:13px 26px; border-radius:999px; font-weight:700; font-size:.98rem; cursor:pointer; transition:transform .25s, box-shadow .25s; }
.btn--gold{ background:var(--gold,#c9a24b); color:#1a1407; box-shadow:0 14px 30px -12px rgba(201,162,75,.8); }
.btn--gold:hover{ transform:translateY(-3px); }
.btn--ghost{ background:rgba(255,255,255,.1); color:#fff; border:1px solid rgba(255,255,255,.25); }
.btn-row{ display:flex; flex-wrap:wrap; gap:14px; justify-content:center; }

/* reveal */
.reveal{ opacity:0; transform:translateY(22px); transition:opacity .7s var(--ease,ease), transform .7s var(--ease,ease); }
.reveal.is-in{ opacity:1; transform:none; }

/* ---------------- RESPONSIVE ---------------- */
@media (max-width:980px){
  .grid--3,.grid--4{ grid-template-columns:repeat(2,1fr); }
  .split{ grid-template-columns:1fr; }
  .gallery-grid{ grid-template-columns:repeat(2,1fr); grid-auto-rows:150px; }
}
@media (max-width:760px){
  .site-nav, .site-head__cta{ display:none; }
  .site-head__burger{ display:flex; }
  .site-head__brand small{ display:none; }
  /* mobile dropdown nav */
  .site-nav.is-open{ display:flex; position:fixed; inset:64px 0 auto 0; flex-direction:column; align-items:stretch; gap:0; background:rgba(15,17,14,.97); backdrop-filter:blur(14px); padding:8px var(--pg-pad) 20px; }
  .site-nav.is-open a{ padding:15px 4px; font-size:1.05rem; border-bottom:1px solid rgba(255,255,255,.08); }
  .site-nav.is-open a::after{ display:none; }
}
@media (max-width:560px){
  .grid,.grid--3,.grid--4,.features{ grid-template-columns:1fr; }
  .gallery-grid{ grid-template-columns:repeat(2,1fr); }
  .phero{ min-height:64vh; }
}
@media (prefers-reduced-motion:reduce){
  .reveal{ opacity:1; transform:none; transition:none; }
  .card:hover{ transform:none; }
}

/* ---------------- SUB-PAGE FOOTER ---------------- */
.pfoot{ background:linear-gradient(180deg,#0c0f0c,#0a0d0a); color:rgba(255,255,255,.78); padding:clamp(48px,7vh,84px) 0 0; margin-top:clamp(40px,6vh,80px); }
.pfoot__top{ display:grid; grid-template-columns:1.5fr 1fr 1fr 1.3fr; gap:clamp(24px,4vw,52px); padding-bottom:clamp(34px,5vh,56px); border-bottom:1px solid rgba(255,255,255,.1); }
.pfoot__brand img{ width:46px; height:46px; object-fit:contain; }
.pfoot__brand b{ display:block; font-family:var(--font-display,sans-serif); font-weight:800; font-size:1.3rem; color:#fff; margin-top:10px; }
.pfoot__brand small{ font-size:.64rem; letter-spacing:.3em; text-transform:uppercase; color:var(--gold-soft,#e6c585); }
.pfoot__blurb{ margin:14px 0 0; font-size:.92rem; line-height:1.65; max-width:34ch; }
.pfoot__col h4{ margin:0 0 16px; font-size:.74rem; letter-spacing:.16em; text-transform:uppercase; color:var(--gold,#c9a24b); }
.pfoot__col ul{ list-style:none; margin:0; padding:0; display:grid; gap:11px; }
.pfoot__col a{ font-size:.92rem; color:rgba(255,255,255,.78); transition:color .25s; }
.pfoot__col a:hover{ color:var(--gold-soft,#e6c585); }
.pfoot__contact li{ display:flex; gap:10px; font-size:.92rem; margin-bottom:11px; line-height:1.5; }
.pfoot__contact svg{ width:17px; height:17px; flex:0 0 17px; color:var(--gold,#c9a24b); margin-top:2px; }
.pfoot__rate{ display:inline-flex; align-items:center; gap:7px; margin-top:6px; padding:7px 13px; border-radius:999px; background:rgba(201,162,75,.16); border:1px solid rgba(201,162,75,.35); color:var(--gold-soft,#e6c585); font-size:.8rem; font-weight:700; }
.pfoot__bar{ display:flex; flex-wrap:wrap; gap:12px; align-items:center; justify-content:space-between; padding:22px 0 28px; font-size:.82rem; color:rgba(255,255,255,.55); }
.pfoot__bar a{ color:rgba(255,255,255,.7); }
@media (max-width:860px){ .pfoot__top{ grid-template-columns:1fr 1fr; } }
@media (max-width:520px){ .pfoot__top{ grid-template-columns:1fr; } }

/* ---------------- BOOKING PAGE (search results + WhatsApp enquiry) ---------------- */
.phero--compact{ min-height:clamp(280px,42vh,420px); }
.bk-summary{ font-weight:500; }
#bk-results-note{ margin-bottom:4px; }
.bk-book-btn{ border:0; background:none; cursor:pointer; font-family:inherit; font-weight:700; font-size:.9rem; color:var(--gold-dark,#a9842f); padding:0; }
.bk-book-btn:hover{ text-decoration:underline; }

.bk-form{ margin-top:8px; }
.bk-grid{ display:grid; grid-template-columns:1fr 1fr; gap:16px 18px; }
.bk-field{ display:flex; flex-direction:column; gap:6px; }
.bk-field--full{ grid-column:1 / -1; }
.bk-field span{ font-size:.78rem; font-weight:700; letter-spacing:.04em; text-transform:uppercase; color:var(--card-value,#5b5750); }
.bk-field input, .bk-field select, .bk-field textarea{
  font-family:inherit; font-size:1rem; color:var(--ink,#0d0f0c);
  padding:12px 14px; border:1px solid var(--pg-line,rgba(13,15,12,.12)); border-radius:12px; background:#fff;
  width:100%; transition:border-color .2s, box-shadow .2s;
}
.bk-field textarea{ resize:vertical; min-height:74px; }
.bk-field input:focus, .bk-field select:focus, .bk-field textarea:focus{ outline:none; border-color:var(--gold,#c9a24b); box-shadow:0 0 0 3px rgba(201,162,75,.18); }

.bk-actions{ display:flex; flex-wrap:wrap; gap:12px; margin-top:20px; align-items:center; }
.bk-wa{ background:#25d366; color:#06371b; box-shadow:0 14px 30px -12px rgba(37,211,102,.7); }
.bk-wa:hover{ transform:translateY(-2px); box-shadow:0 18px 34px -12px rgba(37,211,102,.85); }
.bk-wa svg{ flex:0 0 18px; }
.bk-note{ width:100%; margin:10px 0 0; font-size:.92rem; min-height:1.2em; }
.bk-note.is-ok{ color:#1c7a43; }
.bk-note.is-err{ color:#b4451f; }
.bk-aside .fact h4{ color:var(--gold,#c9a24b); }
.bk-link{ border:0; background:none; padding:0; cursor:pointer; font-family:inherit; font-size:inherit; font-weight:700; color:var(--gold-dark,#a9842f); }
.bk-link:hover{ text-decoration:underline; }

@media (max-width:560px){ .bk-grid{ grid-template-columns:1fr; } .bk-actions{ flex-direction:column; align-items:stretch; } .bk-actions .btn{ justify-content:center; } }

/* footer social row */
.pfoot__social{ display:flex; gap:10px; margin-top:18px; list-style:none; padding:0; flex-wrap:wrap; }
.pfoot__social a{ width:36px; height:36px; border-radius:50%; display:grid; place-items:center; color:#cdbfa3; border:1px solid rgba(230,197,133,.28); transition:color .3s, background .3s, border-color .3s, transform .3s; }
.pfoot__social a:hover{ color:#1a1407; background:var(--gold-soft,#e6c585); border-color:var(--gold-soft,#e6c585); transform:translateY(-2px); }
.pfoot__social svg{ width:17px; height:17px; }
