/* Stamp duty calculator (U1). Every rule scoped under .t-stamp. */
.t-stamp{--ts-navy:#102b46;--ts-navy2:#1a3d5f;--ts-lime:#8fdc68;--ts-amber:#f2a93b;--ts-red:#e5573f;--ts-line:#dfe6ea;--ts-mute:#5d6f7c;--ts-soft:#eef3f6}
.t-stamp .ts-hero{padding:40px 0 64px;background:linear-gradient(180deg,#eef3f6 0,#f6f8f9 100%);border-bottom:1px solid var(--ts-line)}
.t-stamp .crumb{margin-bottom:18px}
.t-stamp h1{font-family:var(--serif);font-weight:600;color:var(--ts-navy);font-size:clamp(2.3rem,4.6vw,4rem);letter-spacing:-.01em;max-width:900px}
.t-stamp .ts-sub{margin-top:12px;font-size:1.1rem;color:var(--ts-mute)}
.t-stamp .ts-link{text-decoration:underline;text-underline-offset:3px}
.t-stamp .ts-link:hover{color:var(--accent)}

/* Tool grid */
.t-stamp .ts-grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);grid-template-areas:'in out';background:#fff;margin-top:30px;border-radius:6px;overflow:clip;box-shadow:0 24px 60px #102b461f;border:1px solid var(--ts-line);border-top:4px solid var(--ts-navy)}
.t-stamp .ts-inputs{grid-area:in;background:#fff;padding:30px 30px 26px;display:flex;flex-direction:column;gap:18px;align-self:start;position:sticky;top:110px}
.t-stamp .ts-inputs .field label{color:var(--ts-navy);font-weight:600}
.t-stamp .ts-inputs .field input,.t-stamp .ts-inputs .field select{border-color:#c9d5dd;border-radius:6px;font-size:1.05rem}
.t-stamp #calc-value{font-family:var(--serif);font-size:1.5rem;min-height:58px}
.t-stamp .ts-inputs .field small{color:var(--ts-mute)}
.t-stamp .ts-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.t-stamp .ts-rule{display:flex;align-items:center;gap:16px;margin-top:6px;padding:16px 18px;background:var(--ts-soft);border-left:4px solid var(--ts-amber);border-radius:0 4px 4px 0}
.t-stamp .ts-rule b{font-family:var(--serif);font-weight:600;font-size:2.6rem;line-height:1;letter-spacing:-.01em;color:var(--ts-navy)}
.t-stamp .ts-rule span{font-size:.86rem;line-height:1.4;color:var(--ts-mute)}
.t-stamp .ts-checked{font-size:.8rem;color:var(--ts-mute);padding-top:6px}

/* Result panel */
.t-stamp .ts-out{grid-area:out;background:var(--ts-navy);color:#fff;padding:30px 34px 26px;position:relative}
.t-stamp .ts-eyebrow{display:block;font-size:.72rem;text-transform:uppercase;letter-spacing:.16em;font-weight:650;color:#aec3d6}
.t-stamp .ts-big{font-family:var(--serif);font-size:clamp(2.6rem,4.8vw,4.3rem);line-height:1;letter-spacing:-.01em;margin-top:10px;font-variant-numeric:tabular-nums}
.t-stamp .ts-warm{color:var(--ts-amber)}
.t-stamp .ts-lime{color:var(--ts-lime)}
.t-stamp .ts-caption{margin-top:10px;color:#c3d2df;font-size:.95rem}
.t-stamp .ts-caption strong{color:#fff;font-weight:600}

/* Stacked bars */
.t-stamp .ts-bar{display:flex;height:46px;margin-top:20px;border-radius:6px;overflow:hidden;background:#ffffff14}
.t-stamp .ts-seg{display:block;height:100%;min-width:0;transition:width .35s ease;position:relative}
.t-stamp .ts-seg em{position:absolute;left:14px;top:50%;transform:translateY(-50%);font-style:normal;font-size:.8rem;font-weight:600;color:#dfe8ef;white-space:nowrap}
.t-stamp .ts-s-price{background:#2e5476}
.t-stamp .ts-s-duty{background:var(--ts-amber);min-width:6px}
.t-stamp .ts-s-reg{background:var(--ts-red);min-width:4px}
.t-stamp .ts-c-seller{background:#2e5476}
.t-stamp .ts-c-tds{background:#9fb6cb}
.t-stamp .ts-c-duty{background:var(--ts-amber)}
.t-stamp .ts-c-reg{background:var(--ts-red)}
.t-stamp .ts-bar .ts-seg+.ts-seg{box-shadow:inset 2px 0 0 var(--ts-navy)}

/* Lists */
.t-stamp .ts-list{margin:18px 0 0;font-variant-numeric:tabular-nums}
.t-stamp .ts-list>div{display:flex;justify-content:space-between;gap:16px;padding:9px 0;border-top:1px solid #ffffff1f;font-size:.95rem}
.t-stamp .ts-list dt{color:#dfe8ef}
.t-stamp .ts-list dt span{color:#8ea8bf;font-size:.82rem;margin-left:6px}
.t-stamp .ts-list dt span span{display:inline;margin:0;font-size:inherit;color:inherit}
.t-stamp .ts-list dd{margin:0;font-weight:600;white-space:nowrap}
.t-stamp .ts-dot{display:inline-block;width:10px;height:10px;border-radius:2px;margin-right:9px;vertical-align:0}
.t-stamp .ts-d-seller{background:#2e5476;box-shadow:0 0 0 1px #6f8fad}
.t-stamp .ts-d-tds{background:#9fb6cb}
.t-stamp .ts-d-duty{background:var(--ts-amber)}
.t-stamp .ts-d-reg{background:var(--ts-red)}
.t-stamp .ts-gv{margin-top:14px;padding:12px 14px;border-radius:6px;font-size:.92rem;line-height:1.5}
.t-stamp .ts-gv.is-warn{background:#f2a93b24;border-left:3px solid var(--ts-amber);color:#ffe3b8}
.t-stamp .ts-gv.is-ok{background:#8fdc681c;border-left:3px solid var(--ts-lime);color:#e2f5c9}
.t-stamp .ts-gv strong{color:#fff}
.t-stamp .ts-cash{margin-top:26px;padding-top:22px;border-top:2px solid #ffffff33}
.t-stamp .ts-note{margin-top:10px;font-size:.84rem;color:#b9cadb;line-height:1.5}
.t-stamp .ts-note strong{color:#fff}
.t-stamp .ts-fine{margin-top:16px;font-size:.74rem;color:#8ea8bf}

/* Lead form + CTA: see tools-kit.css (.tk-cta) */
.t-stamp .calc-retry{background:none;border:0;padding:0;font:inherit;color:inherit}


/* Rates table */
.t-stamp .ts-rates{padding-top:40px}
.t-stamp .ts-rates h2{margin-bottom:22px}
.t-stamp .btn.wa,.t-stamp~.mobile-action .btn.wa{background:#25d366;border-color:#128c3e;color:#0b3b22}
.t-stamp #stampduty-faq{padding:40px 0 80px}
.t-stamp .ts-table{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums}
.t-stamp .ts-table th,.t-stamp .ts-table td{padding:14px 0;border-top:1px solid var(--line);text-align:left;vertical-align:baseline}
.t-stamp .ts-table th{font-weight:550;width:34%;padding-right:18px}
.t-stamp .ts-table td{font-family:var(--serif);font-size:1.35rem}
.t-stamp .ts-table td span{display:block;font-family:var(--sans);font-size:.86rem;color:var(--muted);margin-top:2px}
.t-stamp .ts-table .ts-total th,.t-stamp .ts-table .ts-total td{border-top:2px solid var(--ts-navy)}
.t-stamp .ts-table .ts-total td{font-size:1.8rem;color:var(--ts-navy)}
.t-stamp .ts-sources{font-size:.8rem;color:var(--muted);margin-top:18px}

@media(max-width:850px){
.t-stamp .ts-grid{grid-template-columns:1fr;grid-template-areas:'in' 'out'}
.t-stamp .ts-inputs{position:static}
}
@media(max-width:600px){
.t-stamp .ts-hero{padding:28px 0 48px}
.t-stamp h1{font-size:2.3rem}
.t-stamp .ts-sub{font-size:1rem}
.t-stamp .ts-inputs{padding:22px 18px}
.t-stamp .ts-out{padding:24px 18px 22px}
.t-stamp .ts-row{grid-template-columns:1fr}
.t-stamp .ts-big{font-size:2.6rem}
.t-stamp .ts-list>div{font-size:.88rem}
.t-stamp .ts-list dt span{display:block;margin:2px 0 0}
.t-stamp .ts-table td{font-size:1.15rem}
}
