/* TISSA — Start a Project modal */
.tissa-sp-modal{position:fixed;inset:0;z-index:9999;display:none;align-items:center;justify-content:center;padding:24px;font-family:var(--font-source-serif),Georgia,serif;}
.tissa-sp-modal.is-open{display:flex;}
.tissa-sp-overlay{position:absolute;inset:0;background:rgba(0,0,0,.5);backdrop-filter:blur(2px);}
.tissa-sp-panel{position:relative;width:100%;max-width:800px;max-height:92vh;overflow-y:auto;background:var(--tissa-white,#fff);border:1px solid var(--tissa-border,#e6e3dc);border-radius:14px;box-shadow:0 25px 50px -12px rgba(0,0,0,.35);padding:28px 32px;}

.tissa-sp-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:18px;}
.tissa-sp-eyebrow{font-size:11px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--tissa-carbon,#1a1a1a);margin:0;}
.tissa-sp-step-label{font-size:12px;color:#6b7280;margin:4px 0 0;}
.tissa-sp-close{background:none;border:none;font-size:28px;line-height:1;cursor:pointer;color:var(--tissa-carbon,#1a1a1a);padding:0 4px;}
.tissa-sp-close:hover{opacity:.7;}

.tissa-sp-progress{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-bottom:26px;}
.tissa-sp-seg{height:3px;border-radius:2px;background:var(--tissa-border,#e6e3dc);transition:background .25s ease;}
.tissa-sp-seg.is-active{background:var(--tissa-carbon,#1a1a1a);}

.tissa-sp-step{display:none;}
.tissa-sp-step.is-active{display:block;}

.tissa-sp-h2{font-family:var(--font-playfair),Georgia,serif;font-size:28px;line-height:1.15;color:var(--tissa-carbon,#1a1a1a);margin:0 0 6px;font-weight:500;}
.tissa-sp-sub{font-size:14px;color:#4b5563;margin:0 0 22px;line-height:1.55;}

.tissa-sp-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px 18px;}
.tissa-sp-field{display:flex;flex-direction:column;gap:6px;}
.tissa-sp-field--full{grid-column:1 / -1;}
.tissa-sp-label{font-size:10.5px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:#4b5563;}
.tissa-sp-label em{color:#b91c1c;font-style:normal;margin-left:2px;}

.tissa-sp-field input,.tissa-sp-field select,.tissa-sp-field textarea{width:100%;font-family:inherit;font-size:14px;color:var(--tissa-carbon,#1a1a1a);background:var(--tissa-offwhite,#fafaf7);border:1px solid var(--tissa-border,#e6e3dc);border-radius:8px;padding:10px 12px;transition:border-color .15s,box-shadow .15s;}
.tissa-sp-field textarea{resize:vertical;min-height:72px;}
.tissa-sp-field input:focus,.tissa-sp-field select:focus,.tissa-sp-field textarea:focus{outline:none;border-color:var(--tissa-carbon,#1a1a1a);box-shadow:0 0 0 3px rgba(26,26,26,.08);}
.tissa-sp-field.is-invalid input,.tissa-sp-field.is-invalid select,.tissa-sp-field.is-invalid textarea{border-color:#b91c1c;}

.tissa-sp-summary{background:var(--tissa-offwhite,#fafaf7);border:1px solid var(--tissa-border,#e6e3dc);border-radius:10px;padding:16px 18px;margin-bottom:22px;}
.tissa-sp-summary-title{font-size:10.5px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--tissa-carbon,#1a1a1a);margin:0 0 10px;}
.tissa-sp-summary dl{margin:0;display:grid;grid-template-columns:1fr 1fr;gap:6px 18px;font-size:13px;}
.tissa-sp-summary dl > div{display:flex;gap:6px;grid-column:1 / -1;}
.tissa-sp-summary dt{font-weight:600;color:#4b5563;flex-shrink:0;}
.tissa-sp-summary dd{margin:0;color:var(--tissa-carbon,#1a1a1a);word-break:break-word;}

.tissa-sp-cal{min-height:520px;border:1px solid var(--tissa-border,#e6e3dc);border-radius:10px;overflow:hidden;}
.tissa-sp-cal-fallback{font-size:13px;color:#4b5563;margin-top:10px;}
.tissa-sp-cal-fallback a{color:var(--tissa-carbon,#1a1a1a);text-decoration:underline;}

.tissa-sp-footer{display:flex;align-items:center;gap:10px;margin-top:26px;padding-top:20px;border-top:1px solid var(--tissa-border,#e6e3dc);}
.tissa-sp-spacer{flex:1;}
.tissa-sp-btn{font-family:inherit;font-size:14px;font-weight:500;padding:10px 20px;border-radius:8px;cursor:pointer;border:1px solid transparent;transition:opacity .15s,background .15s,transform .05s;}
.tissa-sp-btn:active{transform:translateY(1px);}
.tissa-sp-btn--ghost{background:transparent;color:var(--tissa-carbon,#1a1a1a);border-color:var(--tissa-border,#e6e3dc);}
.tissa-sp-btn--ghost:hover{background:var(--tissa-offwhite,#fafaf7);}
.tissa-sp-btn--primary{background:var(--tissa-carbon,#1a1a1a);color:var(--tissa-white,#fff);}
.tissa-sp-btn--primary:hover{opacity:.88;}
.tissa-sp-btn:disabled{opacity:.4;cursor:not-allowed;}

@media (max-width:640px){
  .tissa-sp-panel{padding:22px 20px;max-height:96vh;border-radius:10px;}
  .tissa-sp-grid{grid-template-columns:1fr;}
  .tissa-sp-h2{font-size:24px;}
  .tissa-sp-summary dl{grid-template-columns:1fr;}
}

body.tissa-sp-open{overflow:hidden;}
