/* Global components rendered on every page. */

/* --- Floating consult CTA -------------------------------------------------- */
.sk-fabWrap{
  position:fixed;right:50px;bottom:60px;z-index:1000;
  display:flex;flex-direction:column;align-items:flex-end;gap:24px;
}
.sk-fab,
.sk-reserve{
  width:80px;height:80px;border-radius:50%;
  background-color:var(--clay);color:var(--white);
  display:flex;align-items:center;justify-content:center;text-align:center;
  box-shadow:0 4px 20px rgba(0,0,0,.25);
}
.sk-fab__text,
.sk-reserve__text{
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  color:inherit;font-size:13px;font-weight:600;line-height:1.5;letter-spacing:-.05em;
}
.sk-fab__text span,
.sk-reserve__text span{display:block;white-space:nowrap;}
.sk-fab__text span:first-child::after,
.sk-reserve__text span:first-child::after{
  content:"";display:block;width:100%;height:1px;margin-top:1px;background-color:currentColor;
}
@media (hover:hover){
  .sk-fab,.sk-reserve{transition:background-color .15s cubic-bezier(.45,0,.55,1),transform .15s cubic-bezier(.45,0,.55,1);}
  .sk-fab:hover,.sk-reserve:hover{background-color:#B98B6D;transform:scale(1.04);}
}
@media (max-width:1200px){
  .sk-fabWrap{right:24px;bottom:24px;z-index:3000;}
  .sk-fab,.sk-reserve{width:56px;height:56px;}
  .sk-fab__text,.sk-reserve__text{font-size:10px;line-height:1.6;}
}
@media (max-width:768px){
  .sk-fabWrap{
    right:16px;
    right:calc(16px + env(safe-area-inset-right, 0px));
    bottom:18px;
    bottom:calc(18px + env(safe-area-inset-bottom, 0px));
    gap:12px;
  }
  .sk-fab,.sk-reserve{width:54px;height:54px;}
  .sk-fab__text,.sk-reserve__text{font-size:10px;line-height:1.45;}
}

/* --- Reservation popup ---------------------------------------------------- */
.sk-reserve-modal{
  --sk-reserve-accent:var(--clay);
  --sk-reserve-accent-hover:#B98B6D;
  --sk-reserve-focus:rgba(196,153,126,.45);
  --sk-reserve-surface:#FAF7F5;
  --sk-reserve-field:#F1ECE8;
  --sk-reserve-line:#E3DBD5;
  display:none;
}
.sk-reserve-modal.is-open{display:block;}
.sk-reserve-modal__backdrop{display:none;}
.sk-reserve-popupContainer{
  --sk-reserve-unit:clamp(9px,.52vw,10px);
  position:fixed;right:calc(var(--sk-reserve-unit) * 5);bottom:calc(var(--sk-reserve-unit) * 15.6);z-index:1000;
  width:calc(var(--sk-reserve-unit) * 36);height:max-content;max-height:calc(var(--sk-reserve-unit) * 60);
  overflow:hidden auto;overscroll-behavior:contain;
  opacity:0;visibility:hidden;
  font-family:var(--sans);
  background-color:var(--sk-reserve-surface);
  border-radius:calc(var(--sk-reserve-unit) * .4);box-shadow:calc(var(--sk-reserve-unit) * 1) calc(var(--sk-reserve-unit) * 1) calc(var(--sk-reserve-unit) * 3) rgba(0,0,0,.25);
  scrollbar-width:thin;scrollbar-color:#d2d2d2 transparent;
  transition:opacity .3s cubic-bezier(.45,0,.55,1),visibility .3s cubic-bezier(.45,0,.55,1);
}
.sk-reserve-popupContainer button,
.sk-reserve-popupContainer input,
.sk-reserve-popupContainer select,
.sk-reserve-popupContainer option{font-family:var(--sans);}
.sk-reserve-modal.is-open .sk-reserve-popupContainer{opacity:1;visibility:visible;}
.sk-reserve-popupContainer::-webkit-scrollbar{width:4px;}
.sk-reserve-popupContainer::-webkit-scrollbar-track{background:transparent;}
.sk-reserve-popupContainer::-webkit-scrollbar-thumb{background:#d2d2d2;border-radius:2px;}
.sk-reserve-modal__quickLinks{
  display:flex;position:relative;overflow:hidden;
  background-color:var(--sk-reserve-surface);
  border-radius:calc(var(--sk-reserve-unit) * .4) calc(var(--sk-reserve-unit) * .4) 0 0;
}
.sk-reserve-modal__quickLink{
  flex:1;min-width:0;height:calc(var(--sk-reserve-unit) * 5.6);padding:0 calc(var(--sk-reserve-unit) * 1.2);display:flex;align-items:center;gap:calc(var(--sk-reserve-unit) * .6);
  background-color:var(--sk-reserve-surface);color:var(--ink);transition:background-color .15s cubic-bezier(.45,0,.55,1);
}
.sk-reserve-modal__quickLink + .sk-reserve-modal__quickLink{border-left:1px solid var(--sk-reserve-line);}
.sk-reserve-modal__quickIcon{
  flex:0 0 calc(var(--sk-reserve-unit) * 2.9);width:calc(var(--sk-reserve-unit) * 2.9);height:calc(var(--sk-reserve-unit) * 3);
  position:relative;display:block;color:var(--ink);font-size:0;line-height:0;
}
.sk-reserve-modal__quickIcon::before{
  content:"";position:absolute;inset:0;background-color:currentColor;
  -webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain;
}
.sk-reserve-modal__quickIcon--kakao::before{
  -webkit-mask-image:url("data:image/svg+xml,%3Csvg width='29' height='30' viewBox='0 0 29 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M14.5 5C8.15 5 3 9.02 3 13.98c0 3.15 2.08 5.91 5.22 7.51l-.9 3.63c-.09.36.31.64.62.43l4.28-2.84c.74.12 1.5.19 2.28.19 6.35 0 11.5-4.02 11.5-8.92S20.85 5 14.5 5Z' fill='black'/%3E%3C/svg%3E");
  mask-image:url("data:image/svg+xml,%3Csvg width='29' height='30' viewBox='0 0 29 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M14.5 5C8.15 5 3 9.02 3 13.98c0 3.15 2.08 5.91 5.22 7.51l-.9 3.63c-.09.36.31.64.62.43l4.28-2.84c.74.12 1.5.19 2.28.19 6.35 0 11.5-4.02 11.5-8.92S20.85 5 14.5 5Z' fill='black'/%3E%3C/svg%3E");
}
.sk-reserve-modal__quickIcon--kakao::after{
  content:"";position:absolute;right:calc(var(--sk-reserve-unit) * -.1);top:calc(var(--sk-reserve-unit) * -.2);
  width:calc(var(--sk-reserve-unit) * 1.2);height:calc(var(--sk-reserve-unit) * 1.2);border-radius:50%;background-color:var(--sk-reserve-accent);
}
.sk-reserve-modal__quickIcon--instagram::before{
  -webkit-mask-image:url("data:image/svg+xml,%3Csvg width='29' height='30' viewBox='0 0 29 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M10 5.5h9A5.5 5.5 0 0 1 24.5 11v9a5.5 5.5 0 0 1-5.5 5.5h-9A5.5 5.5 0 0 1 4.5 20v-9A5.5 5.5 0 0 1 10 5.5Zm0 2A3.5 3.5 0 0 0 6.5 11v9a3.5 3.5 0 0 0 3.5 3.5h9a3.5 3.5 0 0 0 3.5-3.5v-9A3.5 3.5 0 0 0 19 7.5h-9Zm4.5 4.2a3.8 3.8 0 1 1 0 7.6 3.8 3.8 0 0 1 0-7.6Zm0 2a1.8 1.8 0 1 0 0 3.6 1.8 1.8 0 0 0 0-3.6Zm4.8-3.2a1.2 1.2 0 1 1 0 2.4 1.2 1.2 0 0 1 0-2.4Z' fill='black'/%3E%3C/svg%3E");
  mask-image:url("data:image/svg+xml,%3Csvg width='29' height='30' viewBox='0 0 29 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M10 5.5h9A5.5 5.5 0 0 1 24.5 11v9a5.5 5.5 0 0 1-5.5 5.5h-9A5.5 5.5 0 0 1 4.5 20v-9A5.5 5.5 0 0 1 10 5.5Zm0 2A3.5 3.5 0 0 0 6.5 11v9a3.5 3.5 0 0 0 3.5 3.5h9a3.5 3.5 0 0 0 3.5-3.5v-9A3.5 3.5 0 0 0 19 7.5h-9Zm4.5 4.2a3.8 3.8 0 1 1 0 7.6 3.8 3.8 0 0 1 0-7.6Zm0 2a1.8 1.8 0 1 0 0 3.6 1.8 1.8 0 0 0 0-3.6Zm4.8-3.2a1.2 1.2 0 1 1 0 2.4 1.2 1.2 0 0 1 0-2.4Z' fill='black'/%3E%3C/svg%3E");
}
.sk-reserve-modal__quickIcon--call::before{
  -webkit-mask-image:url("data:image/svg+xml,%3Csvg width='29' height='30' viewBox='0 0 29 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M10.1 5.5c.55 0 1.05.33 1.26.84l1.55 3.7c.19.45.12.96-.18 1.34l-1.17 1.48a13.2 13.2 0 0 0 5.58 5.58l1.48-1.17c.38-.3.9-.37 1.34-.18l3.7 1.55c.51.21.84.71.84 1.26v3.2c0 .77-.63 1.4-1.4 1.4C12.83 24.5 4.5 16.17 4.5 5.9c0-.77.63-1.4 1.4-1.4h4.2Z' fill='black'/%3E%3C/svg%3E");
  mask-image:url("data:image/svg+xml,%3Csvg width='29' height='30' viewBox='0 0 29 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M10.1 5.5c.55 0 1.05.33 1.26.84l1.55 3.7c.19.45.12.96-.18 1.34l-1.17 1.48a13.2 13.2 0 0 0 5.58 5.58l1.48-1.17c.38-.3.9-.37 1.34-.18l3.7 1.55c.51.21.84.71.84 1.26v3.2c0 .77-.63 1.4-1.4 1.4C12.83 24.5 4.5 16.17 4.5 5.9c0-.77.63-1.4 1.4-1.4h4.2Z' fill='black'/%3E%3C/svg%3E");
}
.sk-reserve-modal__quickText{display:flex;flex-direction:column;min-width:0;color:var(--ink);text-align:left;}
.sk-reserve-modal__quickText span:first-child{font-size:calc(var(--sk-reserve-unit) * 1);font-weight:500;line-height:1.6;letter-spacing:-.03em;}
.sk-reserve-modal__quickText span:last-child{font-size:calc(var(--sk-reserve-unit) * 1.3);font-weight:400;line-height:2;letter-spacing:-.1em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:-4px;}
.sk-reserve-modal__form{
  display:flex;flex-direction:column;gap:calc(var(--sk-reserve-unit) * 2);margin-top:0;padding:calc(var(--sk-reserve-unit) * 2);
  background-color:var(--sk-reserve-surface);border-top:1px solid var(--sk-reserve-line);border-radius:0 0 calc(var(--sk-reserve-unit) * .4) calc(var(--sk-reserve-unit) * .4);
}
.sk-reserve-modal__titleRow{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;}
.sk-reserve-modal__title{
  margin:0;color:var(--ink);font-family:var(--sans);font-size:calc(var(--sk-reserve-unit) * 1.6);font-weight:400;
  line-height:calc(var(--sk-reserve-unit) * 2);letter-spacing:calc(var(--sk-reserve-unit) * -.05);white-space:nowrap;
}
.sk-reserve-modal__close{
  width:calc(var(--sk-reserve-unit) * 1.4);height:calc(var(--sk-reserve-unit) * 1.4);display:none;align-items:center;justify-content:center;flex:0 0 auto;
  border:0;background:transparent;color:var(--gray);font-size:calc(var(--sk-reserve-unit) * 2.2);line-height:1;cursor:pointer;
}
.sk-reserve-modal__fields{isolation:isolate;display:flex;flex-direction:column;gap:calc(var(--sk-reserve-unit) * 1.6);}
.sk-reserve-modal__fieldRow{
  position:relative;z-index:3;display:flex;gap:calc(var(--sk-reserve-unit) * .8);
}
.sk-reserve-modal__fieldHalf{flex:1 1 0;min-width:0;}
.sk-reserve-modal__field{display:flex;flex-direction:column;gap:calc(var(--sk-reserve-unit) * .4);}
.sk-reserve-modal__field--plain{gap:0;}
.sk-reserve-modal__label{color:var(--gray);font-size:calc(var(--sk-reserve-unit) * 1.1);font-weight:600;line-height:calc(var(--sk-reserve-unit) * 2);letter-spacing:calc(var(--sk-reserve-unit) * -.05);}
.sk-reserve-modal__label em,.sk-reserve-modal__consent em{color:var(--sk-reserve-accent);font-style:normal;}
.sk-reserve-modal__input{
  width:100%;height:calc(var(--sk-reserve-unit) * 4);padding:calc(var(--sk-reserve-unit) * .8) calc(var(--sk-reserve-unit) * 1.6);
  border:0;border-radius:calc(var(--sk-reserve-unit) * .4);background-color:var(--sk-reserve-field);
  color:var(--ink);font-family:var(--sans);font-size:calc(var(--sk-reserve-unit) * 1.3);font-weight:400;line-height:calc(var(--sk-reserve-unit) * 2);letter-spacing:calc(var(--sk-reserve-unit) * -.1);
}
.sk-reserve-modal__input::placeholder{color:var(--gray);}
.sk-reserve-modal__input:focus{outline:1px solid var(--sk-reserve-focus);outline-offset:0;}
.sk-reserve-modal__select{appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--gray) 50%),linear-gradient(135deg,var(--gray) 50%,transparent 50%);background-position:calc(100% - 16px) 50%,calc(100% - 11px) 50%;background-size:5px 5px,5px 5px;background-repeat:no-repeat;color:var(--gray);}
.sk-reserve-modal__select:valid{color:var(--ink);}
.sk-reserve-modal__textarea{height:auto;min-height:calc(var(--sk-reserve-unit) * 7.2);resize:vertical;}
.sk-reserve-modal__consents{position:relative;z-index:2;display:flex;flex-direction:column;gap:calc(var(--sk-reserve-unit) * .4);}
.sk-reserve-modal__consent{display:flex;flex-direction:column;align-items:stretch;gap:0;color:var(--gray);}
.sk-reserve-modal__consentHeader{display:flex;flex-direction:row;align-items:center;gap:calc(var(--sk-reserve-unit) * .8);}
.sk-reserve-modal__consentTitle{font-size:calc(var(--sk-reserve-unit) * 1.1);font-weight:600;line-height:calc(var(--sk-reserve-unit) * 2);letter-spacing:calc(var(--sk-reserve-unit) * -.05);color:var(--gray);}
.sk-reserve-modal__consentCheck{display:flex;align-items:center;gap:calc(var(--sk-reserve-unit) * .6);height:calc(var(--sk-reserve-unit) * 2);margin-left:auto;cursor:pointer;}
.sk-reserve-modal__consentCheck input{position:absolute;opacity:0;pointer-events:none;}
.sk-reserve-modal__checkbox{
  flex:0 0 calc(var(--sk-reserve-unit) * 1.4);width:calc(var(--sk-reserve-unit) * 1.4);height:calc(var(--sk-reserve-unit) * 1.4);
  display:flex;align-items:center;justify-content:center;border-radius:calc(var(--sk-reserve-unit) * .3);background-color:var(--sk-reserve-field);color:#fff;
  transition:background-color .2s cubic-bezier(.45,0,.55,1);
}
.sk-reserve-modal__checkbox::after{content:"";width:45%;height:25%;border-left:1px solid currentColor;border-bottom:1px solid currentColor;transform:translateY(-1px) rotate(-45deg);}
.sk-reserve-modal__consentCheck input:checked + .sk-reserve-modal__checkbox{background-color:var(--sk-reserve-accent);}
.sk-reserve-modal__consentCheckLabel{font-size:calc(var(--sk-reserve-unit) * 1.1);font-weight:600;line-height:1.2;letter-spacing:calc(var(--sk-reserve-unit) * -.05);color:var(--gray);}
.sk-reserve-modal__consentLink{font-size:calc(var(--sk-reserve-unit) * 1);font-weight:500;line-height:calc(var(--sk-reserve-unit) * 2);letter-spacing:calc(var(--sk-reserve-unit) * -.03);color:var(--gray-light);width:max-content;text-decoration:underline;}
.sk-reserve-modal__trap{position:absolute;left:-9999px;width:1px;height:1px;opacity:0;pointer-events:none;}
.sk-reserve-modal__submit{
  width:100%;height:calc(var(--sk-reserve-unit) * 4);padding:calc(var(--sk-reserve-unit) * .8) calc(var(--sk-reserve-unit) * 1.6);
  border:0;border-radius:calc(var(--sk-reserve-unit) * .4);background-color:var(--sk-reserve-accent);color:#fff;
  font-family:var(--sans);font-size:calc(var(--sk-reserve-unit) * 1.6);font-weight:600;line-height:1.5;letter-spacing:-.06em;cursor:pointer;
  transition:background-color .15s cubic-bezier(.45,0,.55,1),color .15s cubic-bezier(.45,0,.55,1);
}
.sk-reserve-modal__submit:disabled{background-color:#D9D9D9;color:var(--gray-light);cursor:not-allowed;}
.sk-reserve-modal__status{min-height:calc(var(--sk-reserve-unit) * 1.8);margin:0;color:var(--gray);font-size:calc(var(--sk-reserve-unit) * 1.2);line-height:1.5;}
.sk-reserve-modal__status:empty{display:none;}
.sk-reserve-modal__status.is-error{color:#b94537;}
.sk-reserve-modal__status.is-success{color:var(--sk-reserve-accent);}
@media (hover:hover){
  .sk-reserve-modal__quickLink:hover{background-color:var(--sk-reserve-field);}
  .sk-reserve-modal__submit:not(:disabled):hover{background-color:var(--sk-reserve-accent-hover);}
}
@media (max-width:1200px){
  .sk-reserve-modal.is-open{position:fixed;inset:0;z-index:4000;display:flex;flex-direction:column;justify-content:flex-end;pointer-events:none;}
  .sk-reserve-modal.is-open > *{pointer-events:auto;}
  .sk-reserve-modal__backdrop{position:fixed;inset:0;z-index:0;display:block;background:rgba(0,0,0,.4);}
  .sk-reserve-popupContainer{
    --sk-reserve-unit:10px;position:relative;left:auto;right:auto;bottom:auto;z-index:1;width:100%;
    max-height:calc(100dvh - 60px - 76px);align-self:stretch;
    border-radius:8px 8px 0 0;box-shadow:0 -4px 30px rgba(0,0,0,.15);
  }
  .sk-reserve-modal__quickLinks{border-radius:8px 8px 0 0;}
  .sk-reserve-modal__form{border-radius:0;padding:16px 24px;}
  .sk-reserve-modal__close{
    display:flex;z-index:1;align-self:flex-end;margin:0 24px 12px 0;
    width:60px;height:60px;border-radius:50%;background:#fff;color:var(--sk-reserve-accent);
    font-size:30px;box-shadow:0 6px 20px rgba(0,0,0,.18);
  }
  .sk-reserve-modal__title{font-size:18px;line-height:1.45;}
  .sk-reserve-modal__input{height:44px;}
  .sk-reserve-modal__submit{height:48px;}
}
