/* INSPIRE STUDIOS – 00-layout.css */
.csb-page{font-family:'Montserrat',Arial,sans-serif;background:#fbf7f1;color:#332d2a;min-height:100vh;box-sizing:border-box;font-size:13px;line-height:1.65}
.csb-page *{box-sizing:border-box}
.csb-page button,.csb-page input,.csb-page textarea,.csb-page select{font-family:inherit}
.csb-page button{cursor:pointer}
.csb-page button:focus-visible,.csb-page input:focus-visible,.csb-page select:focus-visible,.csb-page textarea:focus-visible{outline:3px solid #bd8f46;outline-offset:2px}
.csb-page h1,.csb-page h2,.csb-page h3,.csb-page p{margin:0}
.csb-page h1,.csb-page h2,.csb-page h3{font-family:'Cormorant Garamond',Georgia,serif;font-weight:600;color:#681220;line-height:1.06}
.csb-page a{color:#77162a;text-decoration:underline}
.csb-page .csb-layout{display:grid;grid-template-columns:345px minmax(0,1fr);min-height:100vh;max-width:1800px;margin:0 auto;box-shadow:0 0 50px rgba(75,40,20,.05)}
.csb-page .csb-divider{margin:14px auto 20px;color:#bd8f46;text-align:center;letter-spacing:7px}
.csb-page .csb-main{padding:39px 47px 70px;min-width:0;position:relative;overflow:hidden;background:radial-gradient(ellipse at 70% 0%,#fffdf9 0%,#fbf7f1 65%)}

/* BRAND TITLE */

.csb-page .csb-brand {
  text-align: center;
  font-family: 'Cinzel', Georgia, serif;
  font-size: 17px;
  font-weight: 600;
  letter-spacing: 1.3px;
  line-height: 1.5;
  text-transform: uppercase;
  color: #39443d;
}

/* SINGLE CHRISTMAS ORNAMENT */

.csb-page .csb-brand-mini {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 16px;
  margin: 10px auto 18px;
  color: #b99154;
  font-family: Georgia, serif;
  font-size: 30px;
  font-weight: 400;
  line-height: 1;
}

/* LEFT AND RIGHT DIVIDER LINES */

.csb-page .csb-brand-mini::before,
.csb-page .csb-brand-mini::after {
  content: "";
  display: block;
  width: 78px;
  height: 1px;
  flex: 0 0 78px;
}

.csb-page .csb-brand-mini::before {
  background: linear-gradient(
    90deg,
    transparent,
    #b99154
  );
}

.csb-page .csb-brand-mini::after {
  background: linear-gradient(
    90deg,
    #b99154,
    transparent
  );
}

.csb-page .csb-heading{text-align:center;max-width:920px;margin:0 auto 26px;position:relative;z-index:1}
.csb-page .csb-heading h1{font-size:51px;letter-spacing:-.6px;margin:0 0 8px}
.csb-page .csb-subtitle {
  max-width: 760px;
  margin: 0 auto;
  text-align: center;
  text-transform: none;
  letter-spacing: 0;
  color: #6b625d;
  font-family: 'Montserrat', Arial, sans-serif;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.75;
}
.csb-page .csb-starline{margin:10px auto 0;display:flex;gap:11px;align-items:center;justify-content:center;font-size:17px;color:#bd8f46}
.csb-page .csb-starline:before,.csb-page .csb-starline:after{content:"";width:50px;height:1px;background:#d8b987}
.csb-page .csb-stepper{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:7px;margin:0 0 30px;position:relative;z-index:1}
.csb-page .csb-step{display:flex;align-items:center;flex-direction:column;gap:7px;color:#8b8781;font-size:10px;text-align:center;border:0;background:transparent;min-width:0;padding:2px 0;position:relative}
.csb-page .csb-step:not(:last-child)::after{content:"";position:absolute;top:19px;left:50%;width:calc(100% + 7px);height:2px;background:#d9cbbc;pointer-events:none;z-index:0}
.csb-page .csb-step.done:not(:last-child)::after{background:#9d6e47}
.csb-page .csb-step-number{width:35px;height:35px;display:grid;place-items:center;background:#fcf9f4;border:1px solid #cfc7bd;border-radius:50%;color:#6f6a64;font-family:'Cormorant Garamond',Georgia,serif;font-size:21px;position:relative;z-index:1;box-shadow:0 0 0 4px #fbf7f1}
.csb-page .csb-step>span:last-child{position:relative;z-index:1;font-family:'Montserrat',Arial,sans-serif;line-height:1.25;min-height:28px}
.csb-page .csb-step.active{color:#701625;font-weight:700}
.csb-page .csb-step.active .csb-step-number{background:#791629;border-color:#791629;color:#fff}
.csb-page .csb-step.done .csb-step-number{border-color:#a9885e;color:#97713f;background:#f3e8d5}
.csb-page .csb-content{position:relative;z-index:1;max-width:1120px;margin:auto}
.csb-page .csb-panel{background:rgba(255,253,249,.75);border:1px solid #d8b98e;border-radius:11px;padding:24px;box-shadow:0 8px 25px rgba(114,58,31,.025)}
.csb-page .csb-panel h2{font-size:35px;margin-bottom:8px}
.csb-page .csb-section-title{font-size:31px;margin-bottom:15px}
.csb-page .csb-muted{color:#796f68}
.csb-page .csb-small{font-size:11px}
.csb-page .csb-fine{font-size:10px;color:#806c5f}
.csb-page .csb-grid2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.csb-page .csb-alert{padding:12px 15px;border-radius:8px;background:#f4e8d8;border:1px solid #e8d1b2;color:#655345;font-size:11px;display:flex;align-items:flex-start;gap:11px;margin:18px 0 0}
.csb-page .csb-alert-icon{font-weight:700;color:#b17c32;font-size:20px;line-height:1}
.csb-page .csb-note-row{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:15px}
.csb-page .csb-note{font-size:11px;color:#786e65;display:flex;align-items:center;gap:9px}
.csb-page .csb-note strong{color:#7a2332}
.csb-page .csb-buttons{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:25px}
.csb-page .csb-btn{border:1px solid #781727;background:#781727;color:white;border-radius:8px;padding:14px 23px;font-size:12px;font-weight:600;min-height:47px;transition:background .15s,transform .15s}
.csb-page .csb-btn:hover{background:#5d1020;transform:translateY(-1px)}
.csb-page .csb-btn:disabled{opacity:.45;cursor:not-allowed;transform:none}
.csb-page .csb-btn-outline{background:#fffdf9;color:#771727;border:1px solid #bd9360}
.csb-page .csb-btn-outline:hover{background:#f6e7da;color:#771727}
.csb-page .csb-ghost{border:0;background:transparent;text-decoration:underline;color:#7d2732;padding:8px;font-size:12px}
.csb-page .csb-summary{position:sticky;top:16px;align-self:start}
.csb-page .csb-summary h2{font-size:34px}
.csb-page .csb-row{display:flex;justify-content:space-between;gap:12px;border-bottom:1px solid #ebdfd0;padding:10px 0;font-size:11px}
.csb-page .csb-row strong{text-align:right;font-size:11px}
.csb-page .csb-total{display:flex;justify-content:space-between;align-items:center;padding:15px;border-radius:8px;background:#f5e7de;margin-top:16px;color:#691523;font-weight:600}
.csb-page .csb-total b{font-family:'Cormorant Garamond',Georgia,serif;font-size:31px}
.csb-page .csb-hidden{display:none!important}
.csb-page .csb-toast{position:fixed;top:15px;left:50%;transform:translateX(-50%);max-width:85vw;background:#74192e;color:white;border-radius:8px;padding:13px 21px;z-index:99;box-shadow:0 10px 35px #1008083b;font-size:12px}

.csb-page .csb-demo-banner{background:#f0dfc7;border-bottom:1px solid #d6b98f;padding:10px 18px;color:#644b33;font-size:11px;font-weight:700;letter-spacing:.7px;text-align:center}






/* UNIFIED NUMBERS AND PRICES */

.csb-page .csb-step-number {
  font-family: 'Bodoni Moda', Georgia, serif;
  font-size: 21px;
  font-weight: 600;
  line-height: 1;
}

.csb-page .csb-price,
.csb-page .csb-money,
.csb-page .csb-total b {
  font-family: 'Bodoni Moda', Georgia, serif;
  font-weight: 600;
  font-variant-numeric: lining-nums;
}

.csb-page .csb-summary .csb-money {
  font-size: 18px;
  color: #681220;
}

.csb-page .csb-total b {
  font-size: 31px;
}
