/* ===================================================================
   BLOOM - trips: cards, single trip template, global closing block.
   Warm cream, coral, peach, natural brown and olive. Strong type.
   =================================================================== */
:root{
  --bt-cream:#FDF9F5; --bt-sand:#F7EFE7; --bt-blush:#FBEDE7; --bt-peach:#FDF3EE;
  --bt-coral:#D4785A; --bt-coral-ink:#9C4A28; --bt-olive:#7B8465;
  --bt-ink:#211913; --bt-body:#372E27; --bt-quiet:#63584F;
  --bt-line:rgba(33,25,19,.12); --bt-line2:rgba(212,120,90,.30);
  --bt-serif:'Frank Ruhl Libre',Georgia,serif;
  --bt-sans:Assistant,-apple-system,'Segoe UI',sans-serif;
}

/* ---------- shared shell ---------- */
.bt-wrap{width:min(1220px,100% - 64px);margin-inline:auto}
.bt-wrap--mid{width:min(940px,100% - 64px)}
.bt-wrap--narrow{width:min(800px,100% - 64px)}
.bt-center{text-align:center}
.bt-sec{padding:78px 0}
.bt-sec--intro{padding:64px 0 54px}
.bt-sec--gal{background:var(--bt-cream)}
.bt-sec--expect{background:var(--bt-peach)}
.bt-sec--inc{background:var(--bt-cream)}
.bt-sec--more{background:var(--bt-cream)}

.bt-h2{font-family:var(--bt-serif);font-weight:400;color:var(--bt-ink);
  font-size:clamp(30px,3.3vw,44px);line-height:1.22;margin:0 0 18px;letter-spacing:-.01em}
.bt-h2.bt-center + .bt-lead{margin-top:-4px}
.bt-h2.bt-center::after{content:"";display:block;width:64px;height:2px;background:var(--bt-coral);
  margin:20px auto 0;border-radius:2px}
.bt-h3{font-family:var(--bt-serif);font-weight:400;color:var(--bt-ink);font-size:26px;line-height:1.3;margin:0 0 16px}
.bt-lead{font-family:var(--bt-sans);font-size:20px;line-height:1.8;color:var(--bt-body);margin:0 0 30px}
.bt-prose{font-family:var(--bt-sans);font-size:19.5px;line-height:1.92;color:var(--bt-body)}
.bt-prose p{margin:0 0 1.15em}
.bt-prose p:last-child{margin-bottom:0}
.bt-prose strong{color:var(--bt-ink);font-weight:600}

.bt-btn{display:inline-block;background:var(--bt-coral);color:#fff;border:1px solid var(--bt-coral);
  border-radius:100px;padding:16px 42px;font-family:var(--bt-sans);font-size:18px;font-weight:600;
  text-decoration:none;letter-spacing:.01em;transition:background-color .25s ease,border-color .25s ease,transform .25s ease}
.bt-btn:hover,.bt-btn:focus{background:var(--bt-coral-ink);border-color:var(--bt-coral-ink);color:#fff;transform:translateY(-1px)}
.bt-btn--big{padding:19px 58px;font-size:20px}
.bt-btn--hero{margin-top:26px;padding:17px 46px;font-size:19px;box-shadow:0 6px 22px rgba(0,0,0,.22)}

/* ---------- trip cards ---------- */
.bt-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:34px}
.bt-card{position:relative;display:flex;flex-direction:column;background:#fff;
  border:1px solid var(--bt-line);border-radius:8px;overflow:hidden;
  transition:border-color .28s ease,transform .28s ease,box-shadow .28s ease}
.bt-card:hover{border-color:var(--bt-line2);transform:translateY(-4px);box-shadow:0 14px 34px rgba(33,25,19,.10)}
.bt-card-media{position:relative;margin:0;line-height:0;background:var(--bt-blush)}
.bt-card-media img{display:block;width:100%;height:330px;object-fit:cover;max-height:none!important;border-radius:0!important}
.bt-card-ph{display:block;height:330px;background:var(--bt-blush)}
.bt-card-tag{position:absolute;top:16px;inset-inline-start:16px;inset-inline-end:16px;
  background:rgba(253,249,245,.95);color:var(--bt-ink);font-family:var(--bt-sans);
  font-size:14.5px;font-weight:600;letter-spacing:.01em;padding:9px 14px;border-radius:3px;
  text-align:center;line-height:1.5}
.bt-card-tag i{font-style:normal;color:var(--bt-line2);margin:0 6px}
.bt-card-tag b{font-weight:700;color:var(--bt-olive)}
.bt-card-tag b.is-few{color:#A8642B}
.bt-card-tag b.is-full,.bt-card-tag b.is-closed{color:var(--bt-quiet)}
.bt-card-tag b.is-soon{color:var(--bt-coral-ink)}
.bt-card-body{display:flex;flex-direction:column;flex:1 1 auto;padding:26px 26px 28px;text-align:center}
.bt-card-title{margin:0;font-family:var(--bt-serif);font-weight:400;font-size:29px;line-height:1.28;color:var(--bt-ink)}
.bt-card-title a{color:inherit;text-decoration:none}
.bt-card-link::after{content:"";position:absolute;inset:0;z-index:2}
.bt-card-text{margin:14px 0 0;font-family:var(--bt-sans);font-size:17.5px;line-height:1.8;color:var(--bt-body)}
.bt-card-foot{margin-top:auto;padding-top:20px}
.bt-card-dates{margin:14px 0 0;font-family:var(--bt-sans);font-size:19px;font-weight:700;color:var(--bt-ink)}
.bt-card-days{margin:3px 0 0;font-family:var(--bt-sans);font-size:16.5px;color:var(--bt-quiet)}
.bt-card-btn{display:inline-block;margin-top:18px;background:var(--bt-coral);color:#fff;
  border-radius:100px;padding:14px 36px;font-family:var(--bt-sans);font-size:17px;font-weight:600;
  transition:background-color .25s ease}
.bt-card:hover .bt-card-btn{background:var(--bt-coral-ink)}

/* ---------- hero ---------- */
.bt-hero{position:relative;background:var(--bt-ink) center/cover no-repeat;
  min-height:clamp(430px,62vh,660px);display:flex;align-items:flex-end;justify-content:center}
.bt-hero::after{content:"";position:absolute;inset:0;
  background:linear-gradient(to top,rgba(24,17,13,.72) 0%,rgba(24,17,13,.34) 46%,rgba(24,17,13,.20) 100%)}
.bt-hero-in{position:relative;z-index:2;width:min(900px,100% - 56px);text-align:center;padding:0 0 64px;color:#fff}
.bt-hero-kicker{margin:0 0 14px;font-family:var(--bt-sans);font-size:16px;font-weight:600;
  letter-spacing:.22em;text-transform:uppercase;color:#F6DCCE}
.bt-hero-title{margin:0;font-family:var(--bt-serif);font-weight:400;color:#fff;
  font-size:clamp(38px,5.4vw,68px);line-height:1.1;letter-spacing:-.015em;
  text-shadow:0 2px 18px rgba(0,0,0,.30)}
.bt-hero-sub{margin:18px auto 0;max-width:660px;font-family:var(--bt-sans);font-size:20px;
  line-height:1.75;color:#F7ECE4}

/* ---------- facts bar ---------- */
.bt-bar{background:var(--bt-sand);border-bottom:1px solid var(--bt-line)}
.bt-bar-in{display:flex;flex-wrap:wrap;justify-content:center}
.bt-bar-cell{flex:1 1 170px;text-align:center;padding:24px 18px}
.bt-bar-cell + .bt-bar-cell{border-inline-start:1px solid var(--bt-line2)}
.bt-bar-k{display:block;font-family:var(--bt-sans);font-size:14.5px;font-weight:700;
  letter-spacing:.14em;color:var(--bt-coral-ink);margin-bottom:7px}
.bt-bar-v{display:block;font-family:var(--bt-sans);font-size:19.5px;font-weight:600;color:var(--bt-ink);line-height:1.45}

/* ---------- gallery ---------- */
.bt-gal{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:34px}
.bt-gal-i{margin:0;line-height:0;border-radius:6px;overflow:hidden;background:var(--bt-blush)}
.bt-gal-i.is-wide{grid-column:span 2;grid-row:span 2}
.bt-gal-i img{width:100%;height:100%;min-height:210px;object-fit:cover;display:block;max-height:none!important;border-radius:0!important}
.bt-gal-i.is-wide img{min-height:436px}

/* ---------- what awaits ---------- */
.bt-expect{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:34px 30px;margin-top:42px}
.bt-expect-i{text-align:center;padding:0 6px}
.bt-ic{width:54px;height:54px;color:var(--bt-coral-ink);margin:0 auto 18px;display:block;stroke-width:1.5}
.bt-expect-i h3{margin:0 0 11px;font-family:var(--bt-sans);font-weight:700;font-size:20.5px;
  line-height:1.35;color:var(--bt-ink);letter-spacing:-.005em}
.bt-expect-i p{margin:0;font-family:var(--bt-sans);font-size:18px;line-height:1.8;color:var(--bt-body)}

/* ---------- full-width image band ---------- */
.bt-band{line-height:0}
.bt-band img{width:100%;height:clamp(280px,42vh,460px);object-fit:cover;display:block;max-height:none!important}

/* ---------- who is leading ---------- */
.bt-leader{display:grid;grid-template-columns:minmax(0,420px) minmax(0,1fr);gap:52px;align-items:center}
.bt-leader-img{line-height:0;border-radius:8px;overflow:hidden}
.bt-leader-img img{width:100%;height:auto;display:block;max-height:none!important;border-radius:0!important}
.bt-leader-txt{font-family:var(--bt-sans);font-size:19.5px;line-height:1.92;color:var(--bt-body)}
.bt-leader-txt p{margin:0 0 1.1em}

/* ---------- included / not ---------- */
.bt-inc{display:grid;grid-template-columns:repeat(2,1fr);gap:44px}
.bt-inc-col{background:#fff;border:1px solid var(--bt-line);border-radius:8px;padding:32px 34px 34px}
.bt-ul{list-style:none;margin:0;padding:0}
.bt-ul li{position:relative;padding-inline-start:30px;margin:0 0 13px;
  font-family:var(--bt-sans);font-size:18px;line-height:1.72;color:var(--bt-body)}
.bt-ul li::before{position:absolute;inset-inline-start:0;top:0;font-weight:700}
.bt-ul.is-yes li::before{content:"\2713";color:var(--bt-olive)}
.bt-ul.is-no li::before{content:"\2013";color:var(--bt-quiet)}

/* ---------- technical details: price block + topic cards ---------- */
.bt-sec--tech{background:var(--bt-cream)}
.bt-h4{font-family:var(--bt-sans);font-size:18px;font-weight:700;color:var(--bt-ink);margin:0 0 12px}
.bt-tic{width:30px;height:30px;color:var(--bt-coral);flex:0 0 auto}
.bt-tprice{background:#fff;border:1px solid var(--bt-line2);border-radius:10px;overflow:hidden;margin:36px 0 30px}
.bt-tprice-head{display:flex;flex-wrap:wrap;align-items:center;gap:14px;
  background:var(--bt-peach);padding:24px 30px;border-bottom:1px solid var(--bt-line2)}
.bt-tprice-head h3{margin:0;font-family:var(--bt-serif);font-weight:400;font-size:28px;color:var(--bt-ink)}
.bt-tprice-v{margin-inline-start:auto;font-family:var(--bt-serif);font-size:36px;line-height:1.1;color:var(--bt-coral-ink)}
.bt-tprice-n{flex:1 1 100%;font-family:var(--bt-sans);font-size:16.5px;color:var(--bt-quiet)}
.bt-tprice-txt{padding:26px 30px 0}
.bt-tprice-cols{display:grid;grid-template-columns:1fr 1fr;gap:34px;padding:28px 30px 32px}
.bt-tgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:24px}
.bt-tcard{background:#fff;border:1px solid var(--bt-line);border-radius:10px;padding:26px 28px 28px;transition:border-color .25s ease}
.bt-tcard:hover{border-color:var(--bt-line2)}
.bt-tcard header{display:flex;align-items:center;gap:13px;margin:0 0 14px;padding-bottom:14px;border-bottom:1px solid var(--bt-line)}
.bt-tcard header h3{margin:0;font-family:var(--bt-sans);font-size:21px;font-weight:700;color:var(--bt-ink);line-height:1.35}
.bt-tbody{font-family:var(--bt-sans);font-size:18px;line-height:1.85;color:var(--bt-body)}
.bt-tbody p{margin:0 0 .9em}
.bt-tbody p:last-child{margin-bottom:0}

/* ---------- technical accordion ---------- */
.bt-acc{margin-top:32px;border-top:1px solid var(--bt-line)}
.bt-sec--tech .bt-acc{margin-inline:auto;margin-top:34px;background:#fff;border:1px solid var(--bt-line);border-radius:10px;padding:0 26px}
.bt-sec--tech .bt-acc-i summary{display:flex;align-items:center;gap:13px}
.bt-sec--tech .bt-acc-i summary span{flex:1}
.bt-acc-i{border-bottom:1px solid var(--bt-line)}
.bt-acc-i summary{list-style:none;cursor:pointer;padding:22px 0 22px 40px;position:relative;
  font-family:var(--bt-sans);font-size:20px;font-weight:600;color:var(--bt-ink);line-height:1.5}
.bt-acc-i summary::-webkit-details-marker{display:none}
.bt-acc-i summary::after{content:"+";position:absolute;inset-inline-end:6px;top:19px;
  font-size:26px;font-weight:400;color:var(--bt-coral);line-height:1;transition:transform .25s ease}
.bt-acc-i[open] summary::after{content:"\2013"}
.bt-acc-i summary:hover{color:var(--bt-coral-ink)}
.bt-acc-b{padding:0 0 24px;font-family:var(--bt-sans);font-size:18.5px;line-height:1.88;color:var(--bt-body)}
.bt-acc-b p{margin:0 0 1em}
.bt-acc-b p:last-child{margin-bottom:0}

/* ---------- price + join ---------- */
.bt-sec--join{background:var(--bt-peach);padding:74px 0}
.bt-join{border:1px solid var(--bt-line2);border-radius:8px;overflow:hidden;background:#fff}
.bt-join-head{background:var(--bt-coral);color:#fff;text-align:center;padding:22px 28px;
  font-family:var(--bt-sans);font-size:23px;font-weight:700;line-height:1.4}
.bt-join-head span{display:block;font-size:17px;font-weight:500;opacity:.94;margin-top:5px}
.bt-join-body{padding:40px 30px 44px;text-align:center}
.bt-join-price{margin:0;font-family:var(--bt-serif);font-size:clamp(42px,5vw,62px);line-height:1.1;color:var(--bt-ink)}
.bt-join-note{margin:10px 0 0;font-family:var(--bt-sans);font-size:17.5px;color:var(--bt-quiet)}
.bt-join-status{display:block;width:fit-content;margin:22px auto 0;padding:9px 24px;border-radius:100px;
  font-family:var(--bt-sans);font-size:17px;font-weight:600;background:#EDF2E9;color:#4A6B3E}
.bt-join-status.is-few{background:#FBEEE0;color:#8E5620}
.bt-join-status.is-soon{background:var(--bt-blush);color:var(--bt-coral-ink)}
.bt-join-status.is-full,.bt-join-status.is-closed{background:#EFEAE5;color:var(--bt-quiet)}
.bt-join-body .bt-btn{margin-top:26px}
.bt-join-small{margin:18px auto 0;max-width:520px;font-family:var(--bt-sans);font-size:16.5px;
  line-height:1.7;color:var(--bt-quiet)}

/* ---------- registration flow: form, payment, confirmation ---------- */
.bs-wrap{width:min(880px,100% - 40px);margin-inline:auto;font-family:var(--bt-sans);
  font-size:18px;line-height:1.8;color:var(--bt-body)}
.bs-h2{font-family:var(--bt-serif);font-weight:400;font-size:clamp(26px,3vw,34px);
  color:var(--bt-ink);margin:0 0 18px;line-height:1.25}
.bs-empty{text-align:center;padding:60px 0;font-size:19px}

.bs-trip{display:grid;grid-template-columns:minmax(0,300px) minmax(0,1fr);gap:30px;
  align-items:center;background:#fff;border:1px solid var(--bt-line);border-radius:10px;
  overflow:hidden;padding:0 30px 0 0;margin-bottom:26px}
.bs-trip-img{line-height:0;height:100%}
.bs-trip-img img{width:100%;height:100%;min-height:230px;object-fit:cover;display:block;max-height:none!important;border-radius:0!important}
.bs-trip-txt{padding:26px 0}
.bs-kicker{margin:0 0 6px;font-size:15px;font-weight:700;letter-spacing:.1em;color:var(--bt-coral-ink)}
.bs-trip-title{margin:0 0 14px;font-family:var(--bt-serif);font-weight:400;font-size:30px;line-height:1.25;color:var(--bt-ink)}
.bs-facts{list-style:none;margin:0 0 14px;padding:0;display:flex;flex-wrap:wrap;gap:8px 26px}
.bs-facts li{display:flex;flex-direction:column}
.bs-facts span{font-size:14px;font-weight:700;letter-spacing:.08em;color:var(--bt-coral-ink)}
.bs-facts b{font-size:18px;color:var(--bt-ink)}
.bs-sum{margin:0 0 12px;font-size:17px;line-height:1.75}
.bs-back a{color:var(--bt-coral-ink);font-weight:600}

.bs-steps{display:flex;gap:10px;margin:0 0 26px}
.bs-steps span{flex:1;text-align:center;padding:13px 8px;border-radius:100px;
  background:#fff;border:1px solid var(--bt-line);font-size:16px;font-weight:600;color:var(--bt-quiet)}
.bs-steps .is-on{background:var(--bt-coral);border-color:var(--bt-coral);color:#fff}
.bs-steps .is-done{background:var(--bt-peach);border-color:var(--bt-line2);color:var(--bt-coral-ink)}

.bs-form,.bs-pay,.bs-order,.bs-done{background:#fff;border:1px solid var(--bt-line);
  border-radius:10px;padding:32px 34px 36px;margin-bottom:24px}
.bs-field{margin:0 0 22px}
.bs-label{display:block;margin:0 0 8px;font-size:17.5px;font-weight:600;color:var(--bt-ink);line-height:1.5}
.bs-label i{color:var(--bt-coral);font-style:normal}
.bs-form input[type=text],.bs-form input[type=tel],.bs-form input[type=email],.bs-form textarea{
  width:100%;padding:14px 16px;border:1px solid rgba(33,25,19,.24);border-radius:5px;
  background:#fff;font-family:var(--bt-sans);font-size:18px;color:var(--bt-ink);line-height:1.6}
.bs-form textarea{min-height:92px;resize:vertical}
.bs-form input:focus,.bs-form textarea:focus{outline:2px solid rgba(212,120,90,.55);outline-offset:1px;border-color:var(--bt-coral)}
.bs-radios{display:flex;flex-direction:column;gap:10px}
.bs-radios label{display:flex;align-items:center;gap:11px;padding:14px 16px;border:1px solid var(--bt-line);
  border-radius:6px;cursor:pointer;font-size:18px;transition:border-color .2s ease,background-color .2s ease}
.bs-radios label:hover{border-color:var(--bt-line2);background:var(--bt-peach)}
.bs-radios input{accent-color:var(--bt-coral);width:19px;height:19px}

.bs-terms{margin:30px 0 20px}
.bs-terms h3{font-family:var(--bt-serif);font-weight:400;font-size:24px;color:var(--bt-ink);margin:0 0 12px}
.bs-terms-box{max-height:260px;overflow-y:auto;background:var(--bt-cream);border:1px solid var(--bt-line);
  border-radius:8px;padding:20px 24px;font-size:16.5px;line-height:1.8}
.bs-terms-box h4{margin:0 0 8px;font-size:17px;font-weight:700;color:var(--bt-coral-ink)}
.bs-terms-box h4+p{margin-top:0}
.bs-terms-box p{margin:0 0 1em}
.bs-check{display:flex;align-items:flex-start;gap:12px;margin:6px 0 26px;font-size:17.5px;
  line-height:1.65;cursor:pointer}
.bs-check input{margin-top:5px;width:21px;height:21px;accent-color:var(--bt-coral);flex:0 0 auto}
.bs-submit{display:block;width:100%;background:var(--bt-coral);color:#fff;border:1px solid var(--bt-coral);
  border-radius:100px;padding:18px 30px;font-family:var(--bt-sans);font-size:19px;font-weight:600;
  cursor:pointer;transition:background-color .25s ease}
.bs-submit:hover,.bs-submit:focus{background:var(--bt-coral-ink);border-color:var(--bt-coral-ink)}
.bs-note{margin:14px 0 0;font-size:16px;line-height:1.7;color:var(--bt-quiet);text-align:center}
.bs-err{background:#FBEAE6;border:1px solid #E0A594;color:#8E3218;border-radius:8px;
  padding:16px 20px;margin:0 0 20px;font-size:17.5px;font-weight:600}

.bs-table{width:100%;border-collapse:collapse;font-size:18px;background:transparent;border:0;margin:0}
.bs-table tr,.bs-table tbody tr{background:transparent!important;border:0}
.bs-table th,.bs-table td{background:transparent!important;border:0!important;border-top:1px solid var(--bt-line)!important}
.bs-table tr:first-child th,.bs-table tr:first-child td{border-top:0!important}
.bs-table th{text-align:start;width:190px;padding:13px 0;color:var(--bt-quiet);font-weight:600;vertical-align:top}
.bs-table td{padding:13px 0;color:var(--bt-ink);font-weight:600;text-align:start}
.bs-table .is-total th,.bs-table .is-total td{font-size:22px;color:var(--bt-ink);padding-top:18px}
.bs-table .is-total td{color:var(--bt-coral-ink);font-family:var(--bt-serif);font-weight:400;font-size:30px}

.bs-plans{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px;margin:0 0 24px}
.bs-plan{position:relative;cursor:pointer}
.bs-plan input{position:absolute;opacity:0;pointer-events:none}
.bs-plan-in{display:flex;flex-direction:column;gap:6px;align-items:center;text-align:center;
  padding:22px 16px;border:1px solid var(--bt-line);border-radius:9px;background:#fff;
  transition:border-color .2s ease,background-color .2s ease,box-shadow .2s ease}
.bs-plan-in b{font-size:19px;color:var(--bt-ink)}
.bs-plan-in em{font-style:normal;font-size:17px;color:var(--bt-quiet)}
.bs-plan:hover .bs-plan-in{border-color:var(--bt-line2)}
.bs-plan input:checked + .bs-plan-in{border-color:var(--bt-coral);background:var(--bt-peach);
  box-shadow:0 0 0 1px var(--bt-coral) inset}
.bs-plan input:checked + .bs-plan-in em{color:var(--bt-coral-ink);font-weight:600}
.bs-sumline{display:flex;justify-content:space-between;align-items:baseline;
  border-top:1px solid var(--bt-line);padding-top:20px;font-size:19px}
.bs-sumline b{font-family:var(--bt-serif);font-weight:400;font-size:34px;color:var(--bt-ink)}
.bs-breakdown{margin:6px 0 24px;font-size:17px;color:var(--bt-coral-ink);font-weight:600}

.bs-done{text-align:center}
.bs-done-mark{margin:0 0 10px;font-family:var(--bt-serif);font-size:clamp(28px,3.6vw,40px);
  line-height:1.25;color:var(--bt-coral-ink)}
.bs-done .bs-table{text-align:start;margin:22px auto 0;max-width:520px}
.bs-next{text-align:start;max-width:560px;margin:30px auto 0;background:var(--bt-peach);
  border-radius:9px;padding:24px 28px}
.bs-next h3{margin:0 0 12px;font-family:var(--bt-serif);font-weight:400;font-size:23px;color:var(--bt-ink)}
.bs-next ol{margin:0;padding-inline-start:22px}
.bs-next li{margin:0 0 10px;font-size:17.5px;line-height:1.75}
.bs-next .bs-note{text-align:start;margin-top:14px}
.bs-done .bs-back{margin-top:28px}
.bt-join-spots{margin:14px 0 0;font-size:17.5px;font-weight:600;color:var(--bt-coral-ink)}

@media (max-width:767px){
  .bs-wrap{width:calc(100% - 28px);font-size:17.5px}
  .bs-trip{grid-template-columns:1fr;padding:0;gap:0}
  .bs-trip-txt{padding:22px 20px 24px}
  .bs-trip-img img{min-height:190px}
  .bs-form,.bs-pay,.bs-order,.bs-done{padding:24px 20px 28px}
  .bs-steps{gap:6px}
  .bs-steps span{font-size:14px;padding:11px 4px}
  .bs-plans{grid-template-columns:1fr}
  .bs-table th{width:120px;font-size:16.5px}
  .bs-table td{font-size:17px}
  .bs-table .is-total td{font-size:26px}
  .bs-next{padding:20px 18px}
}

/* ---------- global closing block ---------- */
.bt-ask{background:var(--bt-cream);padding:74px 0 78px;border-top:1px solid var(--bt-line)}
.bt-ask .bt-h2{margin-bottom:14px}
.bt-ask .bt-lead{margin-bottom:34px}
.bt-form .wpforms-container{margin:0!important}
.bt-form .wpforms-field-label{font-family:var(--bt-sans)!important;font-size:16.5px!important;
  font-weight:600!important;color:var(--bt-ink)!important}
.bt-form input[type=text],.bt-form input[type=email],.bt-form input[type=tel],.bt-form textarea,.bt-form select{
  font-family:var(--bt-sans)!important;font-size:17.5px!important;color:var(--bt-ink)!important;
  border:1px solid rgba(33,25,19,.22)!important;border-radius:4px!important;padding:14px 15px!important;
  background:#fff!important}
.bt-form button[type=submit]{background:var(--bt-coral)!important;border:1px solid var(--bt-coral)!important;
  color:#fff!important;border-radius:100px!important;padding:16px 48px!important;
  font-family:var(--bt-sans)!important;font-size:18px!important;font-weight:600!important}
.bt-form button[type=submit]:hover{background:var(--bt-coral-ink)!important;border-color:var(--bt-coral-ink)!important}

/* ---------- responsive ---------- */
@media (max-width:1024px){
  .bt-wrap,.bt-wrap--mid,.bt-wrap--narrow{width:min(100% - 48px,860px)}
  .bt-sec{padding:60px 0}
  .bt-cards{grid-template-columns:repeat(2,1fr);gap:26px}
  .bt-card-media img,.bt-card-ph{height:290px}
  .bt-gal{grid-template-columns:repeat(2,1fr)}
  .bt-gal-i.is-wide{grid-column:span 2;grid-row:auto}
  .bt-gal-i.is-wide img{min-height:300px}
  .bt-leader{grid-template-columns:1fr;gap:30px}
  .bt-inc{grid-template-columns:1fr;gap:24px}
}
@media (max-width:767px){
  .bt-wrap,.bt-wrap--mid,.bt-wrap--narrow{width:calc(100% - 36px)}
  .bt-sec{padding:48px 0}
  .bt-sec--intro{padding:40px 0 34px}
  .bt-cards{grid-template-columns:1fr;gap:26px}
  .bt-card-media img,.bt-card-ph{height:250px}
  .bt-card-body{padding:22px 20px 26px}
  .bt-card-title{font-size:26px}
  .bt-card-btn{width:100%;padding:15px 20px}
  .bt-hero{min-height:clamp(380px,66vh,520px)}
  .bt-hero-in{padding-bottom:44px}
  .bt-hero-sub{font-size:18px}
  .bt-btn{width:100%;text-align:center;padding:16px 22px}
  .bt-bar-cell{flex:1 1 50%;padding:18px 12px}
  .bt-bar-cell + .bt-bar-cell{border-inline-start:0}
  .bt-bar-in > .bt-bar-cell:nth-child(odd){border-inline-end:1px solid var(--bt-line2)}
  .bt-bar-cell{border-top:1px solid var(--bt-line2)}
  .bt-bar-in > .bt-bar-cell:nth-child(-n+2){border-top:0}
  .bt-prose,.bt-leader-txt{font-size:18.5px;line-height:1.88}
  .bt-gal{grid-template-columns:1fr;gap:12px}
  .bt-gal-i img,.bt-gal-i.is-wide img{min-height:230px}
  .bt-expect{grid-template-columns:1fr;gap:26px;text-align:start}
  .bt-expect-i{display:grid;grid-template-columns:44px 1fr;gap:0 16px;text-align:start;align-items:start}
  .bt-ic{margin:2px 0 0;width:38px;height:38px;grid-row:span 2}
  .bt-acc-i summary{font-size:18.5px;padding:19px 34px 19px 0}
  .bt-join-body{padding:32px 20px 36px}
  .bt-inc-col{padding:26px 22px 28px}
  .bt-tprice-cols{grid-template-columns:1fr;gap:26px;padding:24px 20px 26px}
  .bt-tprice-head{padding:20px 20px;gap:10px}
  .bt-tprice-head h3{font-size:24px}
  .bt-tprice-v{font-size:30px}
  .bt-tprice-txt{padding:22px 20px 0}
  .bt-tcard{padding:22px 20px 24px}
  .bt-tcard header h3{font-size:19.5px}
  .bt-sec--tech .bt-acc{padding:0 18px}
  .bt-tgrid{gap:18px}
}
