
/* ===== Cost Calculator (design v1, 8 Oct 2026) ===== */
.cc{--navy:#171B52;--ink2:#565A80;--line:#E3E7E1;--sage:#E9EEE6;--sage2:#D6E0D2;--tint:#F4F7F2;--yellow:#F8C22E;--bg:#F8F9F7;--err:#A02828;font-family:'Inter',sans-serif;color:var(--navy)}
.cc *,.cc *::before,.cc *::after{box-sizing:border-box}
.cc [hidden]{display:none!important}
.cc-grid{display:grid;grid-template-columns:minmax(0,1fr) 288px;gap:32px;align-items:start}
.cc-card{background:#FFFFFF;border:1px solid var(--line);border-radius:20px;box-shadow:0 1px 2px rgba(23,27,82,.04),0 8px 24px rgba(23,27,82,.06)}

/* stepper */
.cc-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));list-style:none;margin:0;padding:0;border-bottom:1px solid var(--line)}
.cc-steps li{display:flex;align-items:center;gap:12px;padding:22px 28px;position:relative;font-size:14px;font-weight:500;color:var(--ink2)}
.cc-steps li + li{border-left:1px solid var(--line)}
.cc-steps li::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:3px;background:transparent}
.cc-steps li[aria-current="step"]{color:var(--navy);font-weight:600}
.cc-steps li.done{cursor:pointer;color:var(--navy)}
.cc-steps li.done:hover{background:var(--tint)}
.cc-steps li.done:hover > span:last-child{text-decoration:underline;text-underline-offset:3px}
.cc-steps li.done:focus-visible{outline:3px solid var(--navy);outline-offset:-3px}
.cc-steps li[aria-current="step"]::after{background:var(--yellow)}
.cc-num{flex:none;width:32px;height:32px;border-radius:999px;display:grid;place-items:center;font:600 13px/1 'DM Sans',sans-serif;border:1.5px solid var(--sage2);color:var(--ink2);background:#FFFFFF}
.cc-steps li[aria-current="step"] .cc-num{background:var(--yellow);border-color:var(--yellow);color:var(--navy)}
.cc-steps li.done .cc-num{background:var(--navy);border-color:var(--navy);color:#FFFFFF}
.cc-steps li.done .cc-num span{display:none}
.cc-steps li:not(.done) .cc-num svg{display:none}
.cc-steps small{display:block;font-size:12px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--ink2);margin-bottom:2px}

/* screen body */
.cc-body{padding:40px}
.cc-eyebrow{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:13px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--ink2);margin:0 0 12px}
.cc-eyebrow a{letter-spacing:0;text-transform:none;font-weight:600;color:var(--navy);text-underline-offset:3px}
.cc h2{margin:0;font-family:'DM Sans',sans-serif;font-size:32px;line-height:1.15;font-weight:600;letter-spacing:-.02em;color:var(--navy)}
.cc-lead{margin:12px 0 0;font-size:16px;line-height:1.6;color:var(--ink2);max-width:620px}

/* screen 1: structure options */
.cc-opts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:32px}
.cc-opt{position:relative;display:flex;flex-direction:column;gap:14px;padding:24px;border:1.5px solid var(--line);border-radius:16px;background:#FFFFFF;cursor:pointer;transition:border-color .15s,background .15s,box-shadow .15s}
.cc-opt:hover{border-color:var(--sage2);box-shadow:0 8px 24px rgba(23,27,82,.06)}
.cc-opt input{position:absolute;opacity:0;pointer-events:none}
.cc-opt-ic{width:44px;height:44px;border-radius:999px;background:var(--sage);display:grid;place-items:center;color:var(--navy)}
.cc-opt-t{font-family:'DM Sans',sans-serif;font-size:19px;line-height:1.3;font-weight:600}
.cc-opt-d{font-size:14px;line-height:1.55;color:var(--ink2)}
.cc-opt-tag{align-self:flex-start;margin-top:auto;padding:5px 10px;border-radius:999px;background:var(--tint);font-size:12px;font-weight:600;color:var(--ink2)}
.cc-opt-check{position:absolute;top:18px;right:18px;width:24px;height:24px;border-radius:999px;border:1.5px solid var(--sage2);display:grid;place-items:center;color:transparent;background:#FFFFFF}
.cc-opt:has(input:checked){border-color:var(--navy);background:var(--tint);box-shadow:0 0 0 1px var(--navy)}
.cc-opt:has(input:checked) .cc-opt-check{background:var(--navy);border-color:var(--navy);color:#FFFFFF}
.cc-opt:has(input:checked) .cc-opt-ic{background:var(--yellow)}
.cc-opt:has(input:focus-visible){outline:3px solid var(--navy);outline-offset:3px}
.cc-help{margin:20px 0 0;font-size:14px;color:var(--ink2)}
.cc-help a{color:var(--navy);font-weight:600;text-underline-offset:3px}

/* screen 2: form groups */
.cc-group{margin-top:36px;padding-top:28px;border-top:1px solid var(--line)}
.cc-group:first-of-type{border-top:0;padding-top:0}
.cc-gh{display:flex;align-items:baseline;gap:12px;margin:0 0 20px}
.cc-gh span{font:600 13px/1 'DM Sans',sans-serif;color:var(--ink2)}
.cc-gh h3{margin:0;font-family:'DM Sans',sans-serif;font-size:20px;line-height:1.3;font-weight:600}
.cc-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 24px}
.cc-field{display:flex;flex-direction:column;gap:8px;min-width:0}
.cc-field.wide{grid-column:1/-1}
.cc-label{font-size:15px;font-weight:600;line-height:1.4}
.cc-hint{font-size:13px;line-height:1.5;color:var(--ink2)}
.cc-select,.cc-money{position:relative}
.cc-select select,.cc-money input{width:100%;height:52px;border:1.5px solid var(--sage2);border-radius:12px;background:#FFFFFF;font:500 16px 'Inter',sans-serif;color:var(--navy);appearance:none;-webkit-appearance:none}
.cc-select select{padding:0 44px 0 16px;cursor:pointer}
.cc-select svg{position:absolute;right:16px;top:50%;transform:translateY(-50%);pointer-events:none}
.cc-money input{padding:0 16px 0 38px}
.cc-money::before{content:"₹";position:absolute;left:16px;top:50%;transform:translateY(-50%);font-weight:600;color:var(--ink2)}
.cc-select select:hover,.cc-money input:hover{border-color:#B9C2B5}
.cc-select select:focus-visible,.cc-money input:focus-visible{outline:none;border-color:var(--navy);box-shadow:0 0 0 3px rgba(23,27,82,.12)}
.cc-chips{display:flex;flex-wrap:nowrap;gap:6px}
.cc-chip{flex:none;height:30px;padding:0 10px;border-radius:999px;border:1px solid var(--sage2);background:#FFFFFF;font:600 12px 'Inter',sans-serif;white-space:nowrap;color:var(--navy);cursor:pointer}
.cc-chip:hover{background:var(--tint)}
.cc-chip[aria-pressed="true"]{background:var(--navy);border-color:var(--navy);color:#FFFFFF}
.cc-words{font-size:13px;font-weight:600;color:var(--ink2)}
.cc-field.err select,.cc-field.err input{border-color:var(--err)}
.cc-errmsg{font-size:13px;font-weight:600;color:var(--err)}

/* counter rows */
.cc-rows{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:16px;overflow:hidden}
.cc-row{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:18px 20px;background:#FFFFFF}
.cc-row + .cc-row{border-top:1px solid var(--line)}
.cc-row.sub{background:var(--tint);padding-left:40px}
.cc-row-l{display:flex;flex-direction:column;gap:4px;min-width:0}
.cc-step{flex:none;display:flex;align-items:center;gap:4px;padding:4px;border:1.5px solid var(--sage2);border-radius:999px;background:#FFFFFF}
.cc-step button{width:36px;height:36px;border-radius:999px;border:0;background:var(--sage);color:var(--navy);display:grid;place-items:center;cursor:pointer}
.cc-step button:hover:not(:disabled){background:var(--sage2)}
.cc-step button:disabled{background:transparent;color:#B9C2B5;cursor:default}
.cc-step button:focus-visible{outline:3px solid var(--navy);outline-offset:2px}
.cc-step output{width:40px;text-align:center;font:600 17px 'DM Sans',sans-serif}

/* yes / no */
.cc-yn{flex:none;display:inline-flex;padding:4px;border-radius:999px;background:var(--sage);gap:4px}
.cc-yn label{position:relative}
.cc-yn input{position:absolute;opacity:0}
.cc-yn span{display:block;min-width:64px;padding:8px 16px;border-radius:999px;text-align:center;font-size:14px;font-weight:600;color:var(--ink2);cursor:pointer}
.cc-yn input:checked + span{background:var(--navy);color:#FFFFFF;box-shadow:0 2px 6px rgba(23,27,82,.18)}
.cc-yn input:focus-visible + span{outline:3px solid var(--navy);outline-offset:2px}

/* actions */
.cc-actions{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:24px 40px;border-top:1px solid var(--line);background:#FCFDFB;border-radius:0 0 20px 20px}
.cc-actions .r{display:flex;gap:12px;align-items:center;margin-left:auto}
.cc-btn{height:56px;padding:0 28px;border-radius:12px;border:0;background:var(--navy);color:#FFFFFF;font:600 16px 'Inter',sans-serif;display:inline-flex;align-items:center;justify-content:center;gap:10px;cursor:pointer;text-decoration:none;box-shadow:0 2px 4px rgba(23,27,82,.10),0 14px 32px -10px rgba(23,27,82,.45);transition:transform .15s,box-shadow .15s}
.cc-btn:hover:not(:disabled){transform:translateY(-1px)}
.cc-btn:disabled{background:#8A8FA8;box-shadow:none;cursor:not-allowed}
.cc-btn:focus-visible,.cc-ghost:focus-visible,.cc-chip:focus-visible{outline:3px solid var(--navy);outline-offset:3px}
.cc-ghost{height:56px;padding:0 22px;border-radius:12px;border:1.5px solid var(--sage2);background:#FFFFFF;color:var(--navy);font:600 15px 'Inter',sans-serif;display:inline-flex;align-items:center;gap:8px;cursor:pointer}
.cc-ghost:hover{background:var(--tint)}

/* screen 3: bill */
.cc-billhead{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;flex-wrap:wrap}
.cc-quote{display:flex;flex-direction:column;align-items:flex-end;gap:8px}
.cc-qref{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border-radius:999px;background:var(--sage);font-size:13px;font-weight:600}
.cc-qref b{font-family:'DM Sans',sans-serif;letter-spacing:.02em}
.cc-valid{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:var(--ink2)}
.cc-sample{margin-top:24px;padding:10px 14px;border-radius:10px;border:1px dashed #B9C2B5;font-size:13px;color:var(--ink2)}
.cc-bill{margin-top:28px;border:1px solid var(--line);border-radius:16px;overflow:hidden}
.cc-bgh{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:14px 20px;background:var(--tint);border-bottom:1px solid var(--line);font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--ink2)}
.cc-bgh + .cc-line{border-top:0}
.cc-line{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:16px 20px;border-top:1px solid var(--line)}
.cc-line .l{display:flex;flex-direction:column;gap:2px;min-width:0}
.cc-line .l b{font-size:15px;font-weight:600}
.cc-line .l > span{font-size:13px;color:var(--ink2)}
.cc-line .v{font:600 17px 'DM Sans',sans-serif;white-space:nowrap;text-align:right}
.cc-sub{display:flex;justify-content:space-between;padding:12px 20px;border-top:1px solid var(--line);font-size:14px;font-weight:600;color:var(--ink2)}
.cc-sub + .cc-bgh{border-top:1px solid var(--line)}
.cc-oncall{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:999px;background:#FEF3D3;font:600 13px 'Inter',sans-serif;color:#7A5300;white-space:nowrap}
.cc-total{display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap;padding:24px 20px;background:var(--navy);color:#FFFFFF}
.cc-total .l{display:flex;flex-direction:column;gap:8px}
.cc-total .l b{font:600 18px 'DM Sans',sans-serif}
.cc-total .pill{align-self:flex-start;display:inline-flex;gap:8px;align-items:center;padding:6px 12px;border-radius:999px;background:rgba(255,255,255,.12);font-size:13px;font-weight:600}
.cc-total .v{font:600 44px/1 'DM Sans',sans-serif;letter-spacing:-.02em}
.cc-memo{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,2fr);margin-top:32px;border:1px solid #D9DDE3;border-radius:16px;overflow:hidden;box-shadow:0 1px 2px rgba(23,27,82,.05),0 24px 48px -28px rgba(23,27,82,.30)}
.cc-memo .m-l{display:flex;flex-direction:column;justify-content:center;gap:12px;padding:36px 44px;background:#E9EEE6}
.cc-memo .m-kind{margin:0;font-size:12px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--ink2)}
.cc-memo .m-dear{margin:0;font:600 19px 'DM Sans',sans-serif;color:var(--navy)}
.cc-memo .m-text{margin:0;font-size:17px;line-height:1.75;color:var(--navy)}
.cc-memo .m-text a{color:var(--navy);font-weight:600;text-decoration:underline;text-decoration-color:var(--yellow);text-decoration-thickness:3px;text-underline-offset:4px;white-space:nowrap}
.cc-memo .m-text a:hover{text-decoration-color:var(--navy)}
.cc-memo .m-hl{font-weight:700;color:var(--navy);background:linear-gradient(transparent 12%,var(--yellow) 12%,var(--yellow) 92%,transparent 92%);padding:1px 6px;margin:0 -2px;border-radius:3px;-webkit-box-decoration-break:clone;box-decoration-break:clone;white-space:nowrap}
.cc-memo .m-r{display:flex;flex-direction:column;justify-content:center;gap:18px;padding:32px 36px;background:var(--yellow);color:var(--navy)}
.cc-memo .m-top{display:flex;align-items:center;gap:20px}
.cc-memo .m-stamp{flex:none;width:104px;height:104px;transform:rotate(-11deg)}
.cc-memo h3{margin:0;font-family:'DM Sans',sans-serif;font-size:26px;line-height:1.2;font-weight:700;letter-spacing:-.02em}
.cc-memo .m-sign{display:flex;align-items:center;gap:20px;padding-top:18px;border-top:1.5px solid rgba(23,27,82,.18)}
.cc-memo .m-photo{flex:none;width:104px;height:104px;border-radius:999px;border:1.5px dashed var(--navy);background:rgba(255,255,255,.55);display:grid;place-items:center;font-size:11px;font-weight:600}
.cc-memo .m-sign p{margin:0}
.cc-memo .m-signature{font:500 34px/1 'Caveat',cursive;margin-bottom:6px!important}
.cc-memo .m-name{font:600 15px 'DM Sans',sans-serif}
.cc-memo .m-role{font-size:13px;opacity:.8}
.cc-pol{padding:0;border:0;border-radius:16px;background:#FFFFFF;color:var(--navy);box-shadow:0 24px 64px rgba(23,27,82,.35);overflow:hidden;max-width:none;max-height:none}
.cc-pol[open]{display:flex;flex-direction:column}
.cc-pol::backdrop{background:rgba(23,27,82,.55)}
.cc-pol .p-head{flex:none;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 24px 18px 32px;background:var(--yellow)}
.cc-pol .p-head h3{margin:0;font:700 20px/1.25 'DM Sans',sans-serif;letter-spacing:-.01em}
.cc-pol .p-x{flex:none;width:40px;height:40px;border-radius:999px;border:0;background:rgba(255,255,255,.6);color:var(--navy);display:grid;place-items:center;cursor:pointer}
.cc-pol .p-x:hover{background:#FFFFFF}
.cc-pol .p-x:focus-visible{outline:3px solid var(--navy);outline-offset:2px}
.cc-pol .p-body{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:24px 32px 32px;font-size:15px;line-height:1.7}
.cc .cc-pol .p-body h2{margin:24px 0 8px;font-family:'DM Sans',sans-serif;font-size:17px!important;line-height:1.3!important;font-weight:600;letter-spacing:0}
.cc .cc-pol .p-body h2:first-of-type{margin-top:8px}
.cc-pol .p-body p{margin:0 0 12px}
.cc-pol .p-body ul,.cc-pol .p-body ol{margin:0 0 12px;padding-left:22px}
.cc-pol .p-body li{margin:0 0 6px}
.cc-note{display:flex;gap:12px;margin-top:16px;padding:16px 18px;border-radius:12px;border:1px solid var(--line);font-size:14px;line-height:1.6;color:var(--ink2)}
.cc-note svg{flex:none;margin-top:2px;color:var(--navy)}
.cc-paynote{font-size:13px;color:var(--ink2)}
.cc-block{text-align:center;padding:24px 8px 8px}
.cc-block-ic{width:64px;height:64px;margin:0 auto 20px;border-radius:999px;background:#FEF3D3;display:grid;place-items:center;color:#7A5300}
.cc-block p{max-width:480px;margin:12px auto 0;font-size:16px;line-height:1.6;color:var(--ink2)}

/* aside */
.cc-aside{position:sticky;top:24px;display:flex;flex-direction:column;gap:16px}
.cc-aside .cc-card{padding:28px}
.cc-aside h2{margin:0 0 16px;font-family:'DM Sans',sans-serif;font-size:18px;font-weight:600}
.cc-sum{margin:0;display:flex;flex-direction:column}
.cc-sum div{display:flex;justify-content:space-between;gap:16px;padding:12px 0;border-top:1px solid var(--line);font-size:14px}
.cc-sum div:first-child{border-top:0;padding-top:0}
.cc-sum dt{color:var(--ink2)}
.cc-sum dd{margin:0;font-weight:600;text-align:right}
.cc-sum .empty{color:#B9C2B5;font-weight:500}
.cc-dsc{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:16px;padding:14px 16px;border-radius:12px;background:var(--tint);font-size:14px;font-weight:600}
.cc-dsc b{font:600 22px 'DM Sans',sans-serif}
.cc-inc{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}
.cc-inc li{display:flex;gap:10px;font-size:14px;line-height:1.5;color:var(--ink2)}
.cc-inc li svg{flex:none;margin-top:3px;color:var(--navy)}
.cc-inc b{color:var(--navy);font-weight:600}
.cc-priv{display:flex;gap:12px;align-items:flex-start;padding:20px 22px;border-radius:16px;background:var(--sage2);font-size:14px;line-height:1.55}
.cc-priv svg{flex:none;margin-top:2px}

.cc .cc-grid{grid-template-columns:minmax(0,1fr)}
.cc .cc-aside{order:-1;position:static}
.cc .cc-aside .cc-card{display:flex;align-items:stretch;gap:0;padding:0;overflow:hidden;border-color:#DCE2D8;box-shadow:0 1px 2px rgba(23,27,82,.05),0 12px 32px -12px rgba(23,27,82,.16)}
.cc .cc-aside h2{margin:0;flex:none;display:flex;align-items:center;gap:12px;padding:22px 28px;background:var(--navy);color:#FFFFFF;font-size:17px;letter-spacing:-.01em}
.cc .cc-aside h2 i{width:34px;height:34px;border-radius:10px;background:var(--yellow);color:var(--navy);display:grid;place-items:center;font-style:normal}
.cc .cc-sum{flex:1;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;padding:0 8px}
.cc .cc-sum div{position:relative;display:flex;flex-direction:column;justify-content:center;gap:3px;padding:16px 16px 16px 66px;border:0;min-width:0}
.cc .cc-sum div + div{border-left:1px solid var(--line)}
.cc .cc-sum div:first-child{padding-top:16px}
.cc .cc-sum div::before{content:"";position:absolute;left:18px;top:50%;width:36px;height:36px;margin-top:-18px;border-radius:999px;background:var(--sage);transition:background .2s}
.cc .cc-sum div::after{content:"";position:absolute;left:27px;top:50%;width:18px;height:18px;margin-top:-9px;background:var(--navy);-webkit-mask:var(--ic) center/contain no-repeat;mask:var(--ic) center/contain no-repeat}
.cc .cc-sum div:not(:has(.empty))::before{background:var(--yellow)}
.cc .cc-sum div:nth-child(1){--ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 21V6l8-3 8 3v15'/%3E%3Cpath d='M9 21v-4h6v4M8 9h.01M12 9h.01M16 9h.01M8 13h.01M12 13h.01M16 13h.01'/%3E%3C/svg%3E")}
.cc .cc-sum div:nth-child(2){--ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 21s-7-6.2-7-11.5A7 7 0 0 1 19 9.5C19 14.8 12 21 12 21z'/%3E%3Ccircle cx='12' cy='9.5' r='2.5'/%3E%3C/svg%3E")}
.cc .cc-sum div:nth-child(3){--ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='6' width='18' height='13' rx='2'/%3E%3Cpath d='M3 10h18M7 15h3'/%3E%3C/svg%3E")}
.cc .cc-sum div:nth-child(4){--ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='9' cy='8' r='3.5'/%3E%3Cpath d='M2.5 20c.8-3.6 3.300-5.500 6.500-5.500s5.700 1.900 6.500 5.500'/%3E%3Cpath d='M16 4.6a3.500 3.500 0 0 1 0 6.800M18 14.800c2 .7 3.200 2.400 3.600 5.200'/%3E%3C/svg%3E")}
.cc .cc-sum dt{font-size:11px;font-weight:600;letter-spacing:.09em;text-transform:uppercase;color:var(--ink2)}
.cc .cc-sum dd{text-align:left;font:600 15px/1.35 'DM Sans',sans-serif;color:var(--navy);overflow-wrap:anywhere}
.cc .cc-sum .empty{color:#767676;font-weight:500}
.cc .cc-dsc{margin:0;flex:none;flex-direction:column;align-items:flex-start;justify-content:center;gap:2px;padding:14px 26px;border-radius:0;background:var(--tint);border-left:1px solid var(--line);font-size:11px;letter-spacing:.09em;text-transform:uppercase;color:var(--ink2)}
.cc .cc-dsc b{font:700 26px/1.1 'DM Sans',sans-serif;letter-spacing:-.01em;color:var(--navy);text-transform:none}
.cc-priv-top{margin:0 0 24px;align-items:center;justify-content:center;text-align:center;font-weight:600}
/* ===== phones ===== */
@media (max-width:767px){
.cc-sec{padding-top:24px!important;padding-bottom:56px!important;padding-left:12px!important;padding-right:12px!important}
.cc-grid{grid-template-columns:1fr;gap:16px}
.cc-aside{position:static}
.cc-steps li{flex-direction:column;align-items:flex-start;gap:6px;padding:14px 12px;font-size:12px;line-height:1.3}
.cc-steps small{display:none}
.cc-num{width:28px;height:28px}
.cc-body{padding:24px 18px}
.cc h2{font-size:26px!important;line-height:1.2!important}
.cc-opts{grid-template-columns:1fr;gap:12px;margin-top:24px}
.cc-opt{display:grid;grid-template-columns:40px minmax(0,1fr);align-items:center;gap:4px 14px;padding:18px 52px 18px 18px}
.cc-opt-ic{grid-row:1 / span 2;align-self:start}
.cc-opt-ic{width:40px;height:40px}
.cc-opt-t{font-size:17px}
.cc-opt-d{font-size:14px}
.cc-opt-tag{display:none}
.cc-opt-check{top:50%;transform:translateY(-50%)}
.cc-fields{grid-template-columns:1fr}
.cc-row{flex-direction:column;align-items:stretch;gap:12px;padding:16px}
.cc-row.sub{padding-left:16px}
.cc-step{align-self:flex-start}
.cc-yn{align-self:flex-start}
.cc-actions{flex-direction:column-reverse;align-items:stretch;padding:16px 18px}
.cc-paynote{text-align:center}
.cc-actions .r{margin-left:0;flex-direction:column;align-items:stretch}
.cc-btn,.cc-ghost{width:100%;justify-content:center;height:52px}
.cc-quote{align-items:flex-start}
.cc-line{padding:14px 16px;gap:12px}
.cc-line .v{font-size:16px}
.cc-total{padding:20px 16px}
.cc-total .v{font-size:36px}
.cc-memo{grid-template-columns:1fr}
.cc-memo .m-l{padding:28px 20px}
.cc-pol .p-head{padding:14px 16px 14px 20px}
.cc-pol .p-head h3{font-size:17px}
.cc-pol .p-body{padding:18px 20px 24px;font-size:14.5px}
.cc-memo .m-text{font-size:16px}
.cc-memo .m-r{padding:28px 20px}
.cc-memo .m-r{gap:16px}
.cc-memo .m-top,.cc-memo .m-sign{gap:16px}
.cc-memo .m-stamp,.cc-memo .m-photo{width:84px;height:84px}
.cc-memo .m-signature{font-size:30px}
.cc-memo h3{font-size:22px}
.cc-aside .cc-card{padding:22px 18px}
.cc .cc-aside .cc-card{flex-direction:column;align-items:stretch;gap:0;padding:0}
.cc .cc-aside h2{padding:14px 18px;font-size:16px}
.cc .cc-aside h2 i{width:30px;height:30px;border-radius:9px}
.cc .cc-sum{grid-template-columns:1fr 1fr;padding:0}
.cc .cc-sum div{padding:14px 12px 14px 56px}
.cc .cc-sum div + div{border-left:0}
.cc .cc-sum div:nth-child(even){border-left:1px solid var(--line)}
.cc .cc-sum div:nth-child(n+3){border-top:1px solid var(--line)}
.cc .cc-sum div::before{left:12px;width:32px;height:32px;margin-top:-16px}
.cc .cc-sum div::after{left:20px;width:16px;height:16px;margin-top:-8px}
.cc .cc-dsc{flex-direction:row;align-items:center;justify-content:space-between;padding:12px 18px;border-left:0;border-top:1px solid var(--line)}


}

@font-face{font-family:Caveat;src:url(fonts/caveat-latin.woff2) format('woff2');font-weight:400 700;font-style:normal;font-display:swap}
.cc-hero{background:#F8C22E;padding:0 120px 72px;color:#171B52;font-family:Inter,sans-serif}.cc-hero-copy{max-width:1000px;margin-top:56px;display:flex;flex-direction:column;gap:18px}.cc-hero .lp-hl{background-image:linear-gradient(#F8C22E,#F8C22E);background-size:100% 36%;background-repeat:no-repeat;background-position:0 78%}.cc-sec{padding:72px 120px 120px;background:#F8F9F7}.cc-memo .m-photo img{width:100%;height:100%;object-fit:cover;border-radius:50%}.cc form{margin:0}.cc-error{padding:16px;background:#fff2f2;color:#762020}.cc [role=status]:empty{display:none}.cc-money::before{content:attr(data-currency)}.cc .cc-pol{box-sizing:border-box}.lp-calc-card-link{display:block;margin-top:12px;font:600 14px/1.5 Inter,sans-serif;min-height:44px;padding:10px 0;text-underline-offset:4px}
@media(min-width:1441px){.cc-hero,.cc-sec{padding-left:calc((100% - 1200px)/2);padding-right:calc((100% - 1200px)/2)}}
@media(min-width:768px) and (max-width:1200px){.cc-hero,.cc-sec{padding-left:32px;padding-right:32px}.cc .cc-aside h2{padding:20px 14px}.cc .cc-sum div{padding-left:48px;padding-right:8px}.cc .cc-sum div::before{left:8px}.cc .cc-sum div::after{left:17px}.cc .cc-dsc{padding:14px}.cc-chips{gap:4px}.cc-chip{padding:0 7px}}
@media(max-width:767px){#page .cc-hero,.cc-hero{padding:0 20px 40px!important}.cc-hero-copy{margin-top:32px}.cc-hero .kb-h1{font-size:32px!important;line-height:1.12!important}.cc-hero-copy>p{font-size:16px!important}.cc-heropts{flex-direction:column;gap:12px!important}.cc-heropts>span{font-size:14px!important}.cc-sec{padding:24px 12px 56px!important}.cc-chip{padding:0 9px}}
@media(max-width:767px){#page section.cc-sec.cc-sec.cc-sec{padding:24px 12px 56px!important}#page .cc h2{font-size:26px!important;line-height:1.2!important}#page .cc-pol .p-body h2{font-size:17px!important;line-height:1.3!important}}

@media(max-width:767px){#page section.cc-sec.cc-sec.cc-sec{padding-top:72px!important;padding-bottom:72px!important}}

.cc-step-back{display:flex;align-items:center;gap:inherit;width:100%;padding:0;border:0;background:none;color:inherit;font:inherit;text-align:inherit;cursor:pointer}.cc-step-back:focus-visible{outline:2px solid #171B52;outline-offset:6px;border-radius:4px}

/* A completed quotation prints as a document, without site navigation. */
@media print{
 @page{size:A4;margin:12mm}
 body:has(.cc[data-scr="3"]){background:white!important}
 body:has(.cc[data-scr="3"])> :not(#page),.lp-calculator-page .lp-header-shell,.lp-calculator-page .cc-hero,.lp-calculator-page footer,.lp-calculator-page .lp-footer-shell{display:none!important}
 #page.lp-calculator-page,.lp-calculator-page main,.lp-calculator-page .cc{width:100%!important;margin:0!important;padding:0!important;min-width:0!important;background:white!important}
 .cc[data-scr="3"] .cc-steps,.cc[data-scr="3"] .cc-actions,.cc[data-scr="3"] .cc-eyebrow,.cc[data-scr="3"] .cc-pol{display:none!important}
 .cc[data-scr="3"] .cc-grid{display:flex!important;flex-direction:column;gap:14px!important}
 .cc[data-scr="3"] .cc-aside{order:-1;position:static;width:100%}
 .cc[data-scr="3"] .cc-card,.cc[data-scr="3"] .cc-body{width:100%;padding:0!important;border:0;box-shadow:none}
 .cc[data-scr="3"] .cc-aside .cc-card{display:block!important}
 .cc[data-scr="3"] .cc-aside h2{padding:0 0 8px!important;border:0;font-size:14px!important}
 .cc[data-scr="3"] .cc-sum{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;padding:0!important}
 .cc[data-scr="3"] .cc-sum div{padding:8px!important;border:1px solid #ddd!important;display:block}
 .cc[data-scr="3"] .cc-sum div::before,.cc[data-scr="3"] .cc-sum div::after{display:none}
 .cc[data-scr="3"] .cc-sum dd{font-size:12px!important}.cc[data-scr="3"] .cc-sum dt{font-size:10px!important}
 .cc[data-scr="3"] .cc-dsc{padding:8px!important;flex-direction:row!important}
 .cc[data-scr="3"] .cc-billhead{margin:0 0 12px;gap:8px}.cc[data-scr="3"] h2{font-size:22px!important}
 .cc[data-scr="3"] .cc-line{padding:10px 12px}.cc[data-scr="3"] .cc-total{padding:12px;color:#171B52;background:#eee}
 .cc[data-scr="3"] .cc-total .v{font-size:28px}.cc[data-scr="3"] .cc-total .pill{background:transparent}
 .cc[data-scr="3"] .cc-memo{display:block;margin-top:16px;overflow:visible;box-shadow:none}
 .cc[data-scr="3"] .cc-memo .m-l,.cc[data-scr="3"] .cc-memo .m-r{padding:12px 16px;gap:8px}
 .cc[data-scr="3"] .cc-memo .m-text{font-size:13px;line-height:1.5}.cc[data-scr="3"] .cc-memo .m-hl{white-space:normal}
 .cc[data-scr="3"] .cc-memo .m-r{display:flex;flex-direction:row;justify-content:space-between;align-items:center}
 .cc[data-scr="3"] .cc-memo .m-stamp,.cc[data-scr="3"] .cc-memo .m-photo{width:44px;height:44px}
 .cc[data-scr="3"] .cc-memo .m-sign{padding:0;border:0}.cc[data-scr="3"] .cc-memo h3{font-size:17px}.cc[data-scr="3"] .cc-memo .m-signature{font-size:24px}
 .cc[data-scr="3"] .cc-bill,.cc[data-scr="3"] .cc-memo,.cc[data-scr="3"] .cc-aside,.cc[data-scr="3"] .cc-line{break-inside:avoid;page-break-inside:avoid}
}

@media screen and (max-width:767px){.lp-calculator-page .cc-hero-copy{margin-top:28px;gap:14px}.lp-calculator-page .cc-hero .kb-h1{font-size:34px!important}.lp-calculator-page .cc-heropts{gap:12px 28px!important}.lp-calculator-page .cc-heropts>span{font-size:15px!important}}

@media print{.cc[data-scr="3"]>.cc-priv{display:none!important}.lp-calculator-page .cc-sec{padding:0!important;background:white!important}}

@media screen{#page .cc .cc-aside h2{font-size:17px!important;line-height:normal!important}}
@media screen and (max-width:767px){#page .cc .cc-aside h2{font-size:16px!important}}
