﻿:root{
      --brand-cream:#FFBBA4;
      --brand-soft:#FACDBE;
      --brand-beige:#E4D7C9;
      --brand-dark:#555555;
      --brand-ink:#555555;
      --brand-accent:#F18068;
      --brand-accent-2:#FC9878;
      --brand-border:#D1D3D5;

      --soft-border: rgba(85,85,85,.12);
      --soft-bg: #FBCCBE;
      --muted: rgba(85,85,85,.75);
      --muted2: rgba(85,85,85,.65);
    }
    body { background: #fff; }
    .nav-shadow{ box-shadow: 0 8px 20px rgba(0,0,0,.05); }
    .site-header .container{
      padding-top: .25rem;
      padding-bottom: .25rem;
    }
    .site-brand{ padding: 0; }
    .site-logo{
      height: 120px;
      width: auto;
      transition: height .2s ease, transform .2s ease;
    }
    .site-header.preload .site-logo{
      transition: none;
    }
    .site-header.shrink .container{
      padding-top: .1rem;
      padding-bottom: .1rem;
    }
    .site-header.shrink .site-logo{
      height: 70px;
      transform: translateY(0);
    }
    .card-soft{
      border: 1px solid var(--soft-border);
      box-shadow: 0 10px 30px rgba(0,0,0,.04);
      border-radius: 16px;
    }
    .rounded-2xl{ border-radius: 20px; }
    .badge-soft{
      background: rgba(250,205,190,.35);
      border: 1px solid rgba(85,85,85,.12);
      color: #162c28;
    }
    .muted{ color: var(--muted); }
    .small-muted{ color: var(--muted2); font-size:.92rem; }
    .divider{ height:1px; background: rgba(85,85,85,.12); }

    .btn-brand{
      background: var(--brand-accent);
      border-color: var(--brand-accent);
      color:#fff;
    }
    .btn-brand:hover,
    .btn-brand:focus{
      background: var(--brand-accent-2);
      border-color: var(--brand-accent-2);
      color:#fff;
    }
    /* Ensure primary action button always visible */
    #btnNext,
    #btnNext:hover,
    #btnNext:focus,
    #btnNext:active{
      background: var(--brand-accent) !important;
      border-color: var(--brand-accent) !important;
      color: #fff !important;
      opacity: 1 !important;
      visibility: visible !important;
    }
    #btnNext:hover,
    #btnNext:focus{
      background: var(--brand-accent-2) !important;
      border-color: var(--brand-accent-2) !important;
    }
    .btn-outline-brand{
      border-color: rgba(85,85,85,.35);
      color: var(--brand-dark);
    }
    .btn-outline-brand:hover{
      background: rgba(85,85,85,.10);
      border-color: rgba(85,85,85,.55);
      color: var(--brand-dark);
      opacity: 1;
    }
    /* Keep links/buttons visible on hover */
    a,
    a:visited { color: var(--brand-dark); }
    a:hover,
    a:focus { color: var(--brand-dark); text-decoration: underline; }
    .btn,
    .btn:hover,
    .btn:focus {
      text-decoration: none;
      opacity: 1 !important;
      visibility: visible !important;
    }
    .btn-brand:hover,
    .btn-brand:focus { color: #fff !important; }
    .btn-outline-brand:hover,
    .btn-outline-brand:focus { color: var(--brand-ink) !important; }
    .nav-link:hover,
    .nav-link:focus { color: var(--brand-dark); opacity: 1; }
    footer a { color: rgba(255,255,255,.78); text-decoration: none; }
    footer a:hover,
    footer a:focus { color: #fff; text-decoration: underline; }

    .wizard-step{ display:none; }
    .wizard-step.active{ display:block; }

    .step-pill{
      display:flex; gap:.75rem; align-items:flex-start;
      padding:.75rem .85rem; border-radius: 14px;
      border: 1px solid var(--soft-border);
      background: #fff;
      transition: .15s ease;
    }
    .step-pill:hover{ border-color: rgba(85,85,85,.22); }
    .step-pill.active{
      background: var(--soft-bg);
      border-color: rgba(85,85,85,.22);
    }
    .step-num{
      width: 30px; height: 30px; border-radius: 999px;
      display:grid; place-items:center;
      background: rgba(85,85,85,.12);
      color: var(--brand-dark);
      font-weight: 700;
      flex: 0 0 auto;
    }
    .step-pill.active .step-num{
      background: var(--brand-accent);
      color: #fff;
    }

    .progress { height: 10px; border-radius: 999px; }
    .progress-bar { border-radius: 999px; }

    .required::after{ content:" *"; color:#dc3545; }

    .sticky-aside{ position: sticky; top: 98px; }

    .review-box{
      border: 1px solid var(--soft-border);
      border-radius: 14px;
      padding: 14px;
      background: #fff;
    }

    .choice-tile{
      border:1px solid var(--soft-border);
      border-radius: 16px;
      padding: 16px;
      background: #fff;
      cursor: pointer;
      transition: .15s ease;
      height: 100%;
    }
    .choice-tile:hover{ border-color: rgba(85,85,85,.25); box-shadow: 0 10px 22px rgba(0,0,0,.04); }
    .choice-tile.active{ border-color: rgba(85,85,85,.35); background: var(--soft-bg); }

    .pricing-table th, .pricing-table td{
      vertical-align: middle;
      font-size: .92rem;
    }

    .toast-container { z-index: 1080; }
    .hidden{ display:none !important; }






