@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@500;600;700&family=Manrope:wght@400;500;600;700&display=swap');
.keke-booking-app,.keke-booking-app *{box-sizing:border-box}.keke-booking-app{--navy:#101d4a;--sage:#dbe5d7;--sage2:#c5d4bf;--ivory:#f8f4e9;--cream:#fcfaf5;--gold:#c6a568;--muted:#657067;width:100%;font-family:"Manrope",Arial,sans-serif;color:var(--navy)}.keke-booking-app button,.keke-booking-app input,.keke-booking-app select,.keke-booking-app textarea{font:inherit}.keke-booking-app .kb-shell{width:min(1180px,calc(100% - 36px));margin:auto}.keke-booking-app .kb-top{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:30px}.keke-booking-app .kb-eyebrow{font-size:10px;letter-spacing:.2em;text-transform:uppercase;font-weight:800;color:#6d746d}.keke-booking-app h2{font:600 clamp(42px,5vw,68px)/.95 "Cormorant Garamond",Georgia,serif;letter-spacing:-.035em;margin:14px 0 0}.keke-booking-app .kb-note{max-width:470px;font-size:13px;line-height:1.7;color:var(--muted)}.keke-booking-app .kb-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin:0 0 22px}.keke-booking-app .kb-step{padding:12px 13px;border-radius:12px;background:#ebe9e1;color:#777;font-size:9px;letter-spacing:.08em;text-transform:uppercase;font-weight:800}.keke-booking-app .kb-step.active{background:var(--navy);color:#fff}.keke-booking-app .kb-step.done{background:var(--sage2);color:var(--navy)}.keke-booking-app .kb-panel{display:none;background:#fff;border:1px solid rgba(16,29,74,.11);border-radius:27px;padding:34px;box-shadow:0 18px 52px rgba(28,38,44,.08)}.keke-booking-app .kb-panel.active{display:block}.keke-booking-app .kb-panel-head{margin-bottom:26px}.keke-booking-app .kb-panel-head h3{font:600 37px/1 "Cormorant Garamond",Georgia,serif;margin:0}.keke-booking-app .kb-panel-head p{margin:9px 0 0;font-size:12px;line-height:1.65;color:var(--muted)}.keke-booking-app .kb-experiences{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.keke-booking-app .kb-exp{appearance:none;border:1px solid rgba(16,29,74,.12);background:#fff;border-radius:18px;padding:0;overflow:hidden;cursor:pointer;text-align:left;color:var(--navy);transition:.2s ease}.keke-booking-app .kb-exp:hover{transform:translateY(-2px);border-color:rgba(16,29,74,.28)}.keke-booking-app .kb-exp.selected{outline:3px solid rgba(198,165,104,.38);border-color:var(--gold)}.keke-booking-app .kb-exp-img{height:140px;background-size:cover;background-position:center;display:block}.keke-booking-app .kb-exp-copy{padding:14px;display:block}.keke-booking-app .kb-exp-copy b{display:block;font:600 23px/1 "Cormorant Garamond",Georgia,serif}.keke-booking-app .kb-exp-copy span{display:block;margin-top:6px;font-size:9px;line-height:1.45;color:#6b746d}.keke-booking-app .kb-calendar-layout{display:grid;grid-template-columns:1fr .65fr;gap:26px}.keke-booking-app .kb-calendar{background:var(--cream);border:1px solid rgba(16,29,74,.1);border-radius:22px;padding:21px}.keke-booking-app .kb-cal-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:17px}.keke-booking-app .kb-cal-head strong{font:600 27px/1 "Cormorant Garamond",Georgia,serif}.keke-booking-app .kb-cal-nav{display:flex;gap:7px}.keke-booking-app .kb-icon-btn{width:38px;height:38px;border-radius:50%;border:1px solid rgba(16,29,74,.12);background:#fff;color:var(--navy);cursor:pointer}.keke-booking-app .kb-week,.keke-booking-app .kb-days{display:grid;grid-template-columns:repeat(7,1fr);gap:5px}.keke-booking-app .kb-week span{text-align:center;font-size:8px;letter-spacing:.08em;text-transform:uppercase;font-weight:800;color:#7b817d;padding:6px 0}.keke-booking-app .kb-day{aspect-ratio:1;border:0;border-radius:12px;background:#fff;color:var(--navy);cursor:pointer;font-size:11px;font-weight:700}.keke-booking-app .kb-day:hover:not(:disabled){background:var(--sage)}.keke-booking-app .kb-day.selected{background:var(--navy);color:#fff}.keke-booking-app .kb-day:disabled{background:transparent;color:#b8b8b3;cursor:not-allowed;text-decoration:line-through}.keke-booking-app .kb-day.empty{visibility:hidden}.keke-booking-app .kb-date-card{background:var(--sage);border-radius:22px;padding:29px;display:flex;flex-direction:column;justify-content:center}.keke-booking-app .kb-date-card .small{font-size:9px;letter-spacing:.12em;text-transform:uppercase;font-weight:800}.keke-booking-app .kb-date-card strong{font:600 38px/1 "Cormorant Garamond",Georgia,serif;margin-top:10px}.keke-booking-app .kb-date-card p{font-size:11px;line-height:1.6;color:#59635a}.keke-booking-app .kb-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.keke-booking-app .kb-field.full{grid-column:1/-1}.keke-booking-app label{display:block;margin-bottom:7px;font-size:9px;letter-spacing:.08em;text-transform:uppercase;font-weight:800}.keke-booking-app input,.keke-booking-app select,.keke-booking-app textarea{width:100%;border:1px solid rgba(16,29,74,.15);background:#fff;border-radius:13px;padding:14px 15px;color:var(--navy);outline:none}.keke-booking-app input:focus,.keke-booking-app select:focus,.keke-booking-app textarea:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(198,165,104,.14)}.keke-booking-app textarea{min-height:112px;resize:vertical}.keke-booking-app .kb-custom-card{display:none;background:var(--cream);border-radius:19px;padding:23px;margin-bottom:16px}.keke-booking-app .kb-custom-card.active{display:block}.keke-booking-app .kb-custom-card h4{font:600 29px/1 "Cormorant Garamond",Georgia,serif;margin:0 0 15px}.keke-booking-app .kb-options{display:grid;grid-template-columns:1fr 1fr;gap:10px}.keke-booking-app .kb-check{display:flex;align-items:flex-start;gap:9px;padding:13px;border:1px solid rgba(16,29,74,.1);background:#fff;border-radius:13px;font-size:11px;line-height:1.45;text-transform:none;letter-spacing:0}.keke-booking-app .kb-check input{width:auto;margin-top:2px}.keke-booking-app .kb-review{background:var(--sage);border-radius:19px;padding:22px;margin-top:18px;font-size:11px;line-height:1.7}.keke-booking-app .kb-actions{display:flex;justify-content:space-between;gap:10px;margin-top:25px}.keke-booking-app .kb-btn{min-height:51px;padding:0 22px;border-radius:999px;border:0;text-transform:uppercase;letter-spacing:.09em;font-size:10px;font-weight:800;cursor:pointer}.keke-booking-app .kb-btn.primary{background:var(--navy);color:#fff}.keke-booking-app .kb-btn.secondary{background:var(--ivory);color:var(--navy);border:1px solid rgba(16,29,74,.12)}.keke-booking-app .kb-btn:disabled{opacity:.45;cursor:not-allowed}.keke-booking-app .kb-consent{display:flex;gap:10px;align-items:flex-start;margin-top:17px;padding:15px;border-radius:14px;background:#fff;border:1px solid rgba(16,29,74,.1);font-size:10.5px;line-height:1.55;color:#59635a;text-transform:none;letter-spacing:0}.keke-booking-app .kb-consent input{width:auto;margin-top:3px}.keke-booking-app .kb-error{display:none;margin-top:14px;padding:13px 15px;border-radius:12px;background:#fff1f1;color:#9e2f2f;font-size:11px}.keke-booking-app .kb-error.show{display:block}.keke-booking-app .kb-success{display:none;text-align:center;padding:48px 24px;background:var(--sage);border-radius:26px}.keke-booking-app .kb-success.show{display:block}.keke-booking-app .kb-success .check{width:64px;height:64px;border-radius:50%;background:var(--navy);color:#fff;display:flex;align-items:center;justify-content:center;margin:0 auto 18px;font-size:28px}.keke-booking-app .kb-success h3{font:600 44px/1 "Cormorant Garamond",Georgia,serif;margin:0}.keke-booking-app .kb-success p{max-width:650px;margin:14px auto 0;font-size:13px;line-height:1.7;color:#59635a}.keke-booking-app .kb-hp{position:absolute!important;left:-99999px!important}
@media(max-width:980px){.keke-booking-app .kb-experiences{grid-template-columns:repeat(2,1fr)}.keke-booking-app .kb-calendar-layout{grid-template-columns:1fr}.keke-booking-app .kb-date-card{min-height:190px}}
@media(max-width:640px){.keke-booking-app .kb-shell{width:calc(100% - 24px)}.keke-booking-app .kb-top{display:block}.keke-booking-app .kb-note{margin-top:14px}.keke-booking-app .kb-steps{grid-template-columns:1fr 1fr}.keke-booking-app .kb-panel{padding:22px 16px;border-radius:20px}.keke-booking-app .kb-experiences{grid-template-columns:1fr}.keke-booking-app .kb-exp{display:grid;grid-template-columns:120px 1fr}.keke-booking-app .kb-exp-img{height:110px}.keke-booking-app .kb-form-grid,.keke-booking-app .kb-options{grid-template-columns:1fr}.keke-booking-app .kb-actions{flex-direction:column-reverse}.keke-booking-app .kb-btn{width:100%}.keke-booking-app .kb-calendar{padding:14px}.keke-booking-app .kb-day{border-radius:9px}}


.keke-booking-app .kb-exp-pet-art{
  background:linear-gradient(145deg,#eef4e9,#dbe5d7)!important;
  display:flex!important;
  align-items:center;
  justify-content:center;
}
.keke-booking-app .kb-paw{font-size:54px;line-height:1}
.keke-booking-app .kb-adopt-summary{
  display:flex;
  flex-wrap:wrap;
  gap:7px 16px;
  align-items:center;
  margin:0 0 15px;
  padding:14px 16px;
  border-radius:14px;
  background:#dbe5d7;
  color:#101d4a;
}
.keke-booking-app .kb-adopt-summary strong{font:600 22px/1.05 "Cormorant Garamond",Georgia,serif}
.keke-booking-app .kb-adopt-summary span{font-size:10px;font-weight:700;color:#59635a}
.keke-booking-app .kb-adopt-includes{
  margin-top:13px;
  padding:14px 16px;
  border:1px solid rgba(16,29,74,.1);
  border-radius:14px;
  background:#fff;
  color:#59635a;
  font-size:10.5px;
  line-height:1.65;
}
.keke-booking-app .kb-adopt-includes strong{color:#101d4a}


/* v3.5 real experience customization */
.keke-booking-app .kb-custom-heading{display:grid;grid-template-columns:.8fr 1.2fr;gap:24px;align-items:end;margin-bottom:22px}
.keke-booking-app .kb-custom-heading h4{margin:5px 0 0}
.keke-booking-app .kb-custom-heading p{margin:0;color:#697169;font-size:11px;line-height:1.65}
.keke-booking-app .kb-custom-kicker{display:block;color:#9a7c43;font-size:9px;line-height:1.3;letter-spacing:.14em;text-transform:uppercase;font-weight:800}
.keke-booking-app .kb-choice-group{margin-top:14px;padding:18px;border-radius:16px;background:#fcfaf5;border:1px solid rgba(16,29,74,.09)}
.keke-booking-app .kb-choice-group h5{margin:0 0 12px;color:#101d4a;font:600 21px/1.05 "Cormorant Garamond",Georgia,serif}
.keke-booking-app .kb-choice-title{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px}
.keke-booking-app .kb-choice-title h5{margin:0}
.keke-booking-app .kb-choice-title span{flex:0 0 auto;padding:6px 9px;border-radius:999px;background:#dbe5d7;color:#101d4a;font-size:8.5px;line-height:1.2;text-transform:uppercase;letter-spacing:.07em;font-weight:800}
.keke-booking-app .kb-limited-group.kb-limit-hit{border-color:#d9aaa1;background:#fff8f6}
.keke-booking-app .kb-limited-group.kb-limit-hit .kb-choice-title span{background:#f2dfd9;color:#8d3e33}
.keke-booking-app .kb-check small{display:block;margin-top:3px;color:#9a7c43;font-size:8px;font-weight:800}
.keke-booking-app .kb-premium-choice{background:#fffaf0!important}
.keke-booking-app .kb-text-pref{margin-top:14px}
.keke-booking-app .kb-text-pref label{display:block;margin:0 0 7px;color:#101d4a;font-size:10px;font-weight:800}
.keke-booking-app .kb-text-pref textarea{width:100%;min-height:104px;resize:vertical;padding:13px 14px;border:1px solid rgba(16,29,74,.14);border-radius:13px;background:#fff;color:#101d4a;font:500 11px/1.55 "Manrope",Arial,sans-serif;outline:none}
.keke-booking-app .kb-text-pref textarea:focus{border-color:#c6a568;box-shadow:0 0 0 3px rgba(198,165,104,.12)}
.keke-booking-app .kb-mini-note{margin-top:12px;padding:12px 14px;border-radius:12px;background:#eef4eb;color:#65705f;font-size:9.5px;line-height:1.6}
@media(max-width:700px){
  .keke-booking-app .kb-custom-heading{grid-template-columns:1fr;gap:8px}
  .keke-booking-app .kb-choice-title{align-items:flex-start}
}
