/* Saffron Sunrise gift card panel */
.sgc-slot{margin-top:12px;font-family:"Hanken Grotesk",Hanken,Helvetica,sans-serif}
.sgc-ico{width:18px;height:18px;flex:none;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.sgc-toggle,.sgc-summary{display:flex;align-items:center;gap:10px;width:100%;min-height:44px;padding:0 14px;border:1px solid currentColor;border-color:color-mix(in srgb,currentColor 35%,transparent);background:transparent;color:inherit;font:500 15px/1.3 "Hanken Grotesk",Hanken,Helvetica,sans-serif;text-align:left}
.sgc-toggle{cursor:pointer;transition:border-color .2s,background .2s}
.sgc-toggle:hover{border-color:#d9a93f;background:color-mix(in srgb,#d9a93f 10%,transparent)}
.sgc-toggle .sgc-ico,.sgc-summary .sgc-ico{color:#d9a93f}
.sgc-toggle:focus-visible,.sgc-summary button:focus-visible{outline:2px solid #d9a93f;outline-offset:2px}
.sgc-summary{border-color:#d9a93f}
.sgc-summary-text{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sgc-summary button{background:none;border:0;padding:8px 4px;min-height:40px;color:inherit;font:600 14px "Hanken Grotesk",Hanken,sans-serif;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.sgc-slot [hidden]{display:none!important}
/* On the dark hero veil (desktop) the control reads in ivory */
@media(min-width:761px){.hero .sgc-slot{color:#f3e9ee}}

html.sgc-lock{overflow:hidden}
.sgc-dialog{width:min(1040px,calc(100vw - 32px));max-height:calc(100dvh - 32px);padding:0;border:0;background:#fff;color:#2a1b2e;box-shadow:0 40px 90px -30px rgba(20,17,18,.6)}
.sgc-dialog::backdrop{background:rgba(20,17,18,.62)}
.sgc-panel{display:flex;flex-direction:column;max-height:calc(100dvh - 32px)}
.sgc-head{display:flex;align-items:flex-start;gap:16px;padding:22px 28px 16px;border-bottom:1px solid #eee6ea}
.sgc-head h2{margin:0;font:400 30px/1.1 Fraunces,Georgia,serif;letter-spacing:-.01em;color:#141112}
.sgc-head p{margin:6px 0 0;color:#695e68;font-size:15px}
.sgc-close{margin-left:auto;width:44px;height:44px;display:grid;place-items:center;border:0;background:none;cursor:pointer;color:#141112}
.sgc-close svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round}
.sgc-body{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:32px;padding:24px 28px;overflow:auto}
.sgc-preview-col{align-self:start;position:sticky;top:0;min-width:0}
.sgc-form-col{min-width:0}
.sgc-preview{overflow:hidden;background:#efe9e2;padding:22px;box-shadow:inset 0 0 0 1px #e6ddd4}
.sgc-preview .sgc-stage{box-shadow:0 18px 30px -18px rgba(20,17,18,.5)}
.sgc-preview.sgc-is-sample .sgc-zone[data-key]{opacity:.45}
.sgc-preview-note{margin:10px 0 0;color:#695e68;font-size:13px}
.sgc-occasions{border:0;margin:0 0 18px;padding:0}
.sgc-occasions legend{padding:0;margin-bottom:10px;font:600 14px "Hanken Grotesk",sans-serif;color:#141112}
.sgc-occ-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.sgc-occ{position:relative;display:block;min-width:0;cursor:pointer}
.sgc-occ input{position:absolute;opacity:0;width:1px;height:1px}
.sgc-occ-thumb{display:block;overflow:hidden;padding:5px;border:1px solid #e3dade;background:#f5f0ea;transition:border-color .2s}
.sgc-occ-name{display:block;margin-top:5px;font-size:13px;color:#402349;text-align:center}
.sgc-occ:hover .sgc-occ-thumb{border-color:#b9a3b5}
.sgc-occ input:checked+.sgc-occ-thumb{border-color:#141112;box-shadow:inset 0 0 0 1px #141112}
.sgc-occ input:checked~.sgc-occ-name{color:#141112;font-weight:600}
.sgc-occ input:focus-visible+.sgc-occ-thumb{outline:2px solid #a42632;outline-offset:2px}
.sgc-field{display:block;margin-bottom:14px}
.sgc-field>span{display:block;margin-bottom:6px;font:600 14px "Hanken Grotesk",sans-serif;color:#141112}
.sgc-field em{font-style:normal;font-weight:400;color:#695e68}
.sgc-field input,.sgc-field textarea{width:100%;box-sizing:border-box;padding:12px 14px;border:1px solid #cfc3cb;border-radius:0;background:#fff;color:#1b1418;font:400 16px/1.45 "Hanken Grotesk",sans-serif}
.sgc-field textarea{resize:vertical;min-height:104px}
.sgc-field input:focus,.sgc-field textarea:focus{outline:2px solid #402349;outline-offset:0;border-color:#402349}
.sgc-count{display:block;margin-top:5px;color:#695e68;font-size:13px}
.sgc-error{margin:4px 0 0;padding:10px 12px;background:#fcf1f2;color:#8a1c26;font-size:14px}
.sgc-foot{display:flex;justify-content:flex-end;gap:12px;padding:16px 28px 22px;border-top:1px solid #eee6ea}
.sgc-cancel,.sgc-save{min-height:50px;padding:0 22px;font:600 15px "Hanken Grotesk",sans-serif;cursor:pointer}
.sgc-cancel{background:#fff;border:1px solid #cfc3cb;color:#2a1b2e}
.sgc-save{background:#a42632;border:1px solid #851b27;color:#fff}
.sgc-save:hover{background:#851b27}
.sgc-cancel:focus-visible,.sgc-save:focus-visible,.sgc-close:focus-visible{outline:2px solid #402349;outline-offset:2px}
@media(max-width:820px){
  .sgc-dialog{width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;margin:0}
  .sgc-panel{height:100dvh;max-height:100dvh}
  .sgc-head{padding:16px 18px 12px}
  .sgc-head h2{font-size:24px}
  .sgc-body{grid-template-columns:minmax(0,1fr);gap:18px;padding:0 18px 18px}
  .sgc-preview-col{position:sticky;top:0;z-index:2;background:#fff;padding-top:14px;margin:0 -18px;padding-inline:18px}
  .sgc-preview{padding:10px;max-width:280px;margin:0 auto}
  .sgc-preview-note{text-align:center}
  .sgc-form-col .sgc-occasions,.sgc-form-col .sgc-field{scroll-margin-top:250px}
  .sgc-preview-note{margin-bottom:6px}
  .sgc-occ-grid{display:flex;overflow-x:auto;gap:10px;padding-bottom:6px;scroll-snap-type:x mandatory}
  .sgc-occ{flex:0 0 104px;scroll-snap-align:start}
  .sgc-foot{padding:12px 18px calc(12px + env(safe-area-inset-bottom))}
  .sgc-cancel,.sgc-save{flex:1}
}
@media (prefers-reduced-motion:reduce){.sgc-toggle,.sgc-occ-thumb{transition:none}}
