:root{--tool-blue:#101f3d;--tool-cream:#fff4d7}.site-header nav .active{color:var(--orange)}.tool-intro{max-width:1240px;margin:auto;padding:80px 28px 55px;display:grid;grid-template-columns:1.3fr .7fr;gap:28px}.tool-intro h1{font-size:clamp(3.2rem,6vw,5.8rem);line-height:.95;letter-spacing:-.055em;margin:0;font-weight:600}.tool-intro h1 em{font-style:normal;color:var(--orange)}.tool-intro>p:not(.eyebrow){align-self:end;color:var(--muted);font-size:1.1rem;max-width:520px;margin:0}.privacy-note{grid-column:1/-1;border-top:1px solid var(--line);padding-top:18px;color:var(--muted)}.privacy-note span{color:var(--orange);font-weight:700;margin-right:8px}.calculator{max-width:1184px;margin:0 auto 100px;border:1px solid var(--line);background:#fff}.step-nav{display:grid;grid-template-columns:repeat(3,1fr);border-bottom:1px solid var(--line)}.step-tab{font:600 1rem "IBM Plex Sans Thai";background:var(--soft);border:0;border-right:1px solid var(--line);padding:18px;color:#777;display:flex;gap:12px;justify-content:center;align-items:center;cursor:pointer}.step-tab:last-child{border-right:0}.step-tab b{font:700 .75rem Manrope;border:1px solid currentColor;width:25px;height:25px;border-radius:50%;display:grid;place-items:center}.step-tab.active{background:var(--ink);color:#fff}.step-panel{display:none;padding:54px}.step-panel.active{display:block}.panel-heading{max-width:760px;margin-bottom:38px}.panel-heading h2{font-size:clamp(2rem,4vw,3.5rem);line-height:1.1;margin:0}.panel-heading>p:last-child{color:var(--muted);margin:14px 0 0}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.field.wide,.classification.wide{grid-column:1/-1}.field{display:flex;flex-direction:column;gap:8px;font-weight:600}.field input,.field select{font:500 1rem "IBM Plex Sans Thai";width:100%;height:54px;border:1px solid #bbb;background:#fff;padding:0 16px;color:var(--ink);border-radius:0}.field input:focus,.field select:focus{outline:2px solid var(--orange);outline-offset:1px}.money-input{position:relative}.money-input input{padding-right:64px}.money-input i{position:absolute;right:16px;top:50%;transform:translateY(-50%);font-style:normal;color:var(--muted);font-weight:400}.classification{display:flex;align-items:center;justify-content:space-between;gap:30px;background:var(--soft);border-left:4px solid var(--orange);padding:20px 24px}.classification small,.classification strong{display:block}.classification strong{font-size:1.35rem}.classification p{color:var(--muted);margin:0;max-width:530px}.step-actions{display:flex;justify-content:space-between;align-items:center;margin-top:42px;padding-top:24px;border-top:1px solid var(--line)}.next-button,.back-button,.reset-button{font:600 1rem "IBM Plex Sans Thai";border:0;background:none;cursor:pointer}.next-button{background:var(--orange);color:#fff;padding:16px 22px;min-width:230px;display:flex;justify-content:space-between;gap:25px}.back-button,.reset-button{border-bottom:1px solid var(--ink);padding:10px 0}.split-inputs{display:grid;grid-template-columns:1fr 1fr;gap:18px}.input-card{border:1px solid var(--line);padding:28px;display:grid;gap:18px;align-content:start}.company-card{border-top:5px solid var(--tool-blue)}.card-title{border-bottom:1px solid var(--line);padding-bottom:18px}.card-title span,.card-title small{display:block}.card-title span{font-size:1.35rem;font-weight:700}.card-title small{color:var(--muted)}.auto-deduction{display:flex;justify-content:space-between;background:var(--soft);padding:15px}.check-row{display:flex;gap:12px;border-top:1px solid var(--line);padding-top:20px;cursor:pointer}.check-row input{width:20px;height:20px;accent-color:var(--orange)}.check-row span,.check-row small{display:block}.check-row small{color:var(--muted);font-weight:400}.results-heading{max-width:none;display:flex;align-items:end;justify-content:space-between}.result-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.result-card{border:1px solid var(--line);padding:34px;position:relative}.result-card.dark{background:var(--tool-blue);color:#fff;border-color:var(--tool-blue)}.result-card>p{font-size:1.2rem;font-weight:700;margin:0}.result-card>small{color:var(--muted)}.result-card.dark>small{color:#fff9}.result-card>strong{display:block;font:700 clamp(2.5rem,5vw,4rem) Manrope;margin:12px 0 26px}.result-card.dark>strong{color:#ffb000}.result-card dl{margin:0;border-top:1px solid var(--line)}.result-card.dark dl{border-color:#ffffff40}.result-card dl>div{display:flex;justify-content:space-between;gap:20px;padding:12px 0;border-bottom:1px solid var(--line)}.result-card.dark dl>div{border-color:#ffffff40}.result-card dt{color:var(--muted)}.result-card.dark dt{color:#fff9}.result-card dd{margin:0;font-weight:600;text-align:right}.result-badge{position:absolute;right:24px;top:-13px;background:#ffb000;color:var(--ink);padding:5px 13px;font-size:.78rem;font-weight:700}.insight{display:flex;gap:18px;background:var(--tool-cream);padding:24px;margin-top:18px}.insight>span{color:var(--orange);font-size:1.6rem}.insight p{margin:6px 0 0;color:#624b20}.talk-card{margin-top:36px;background:var(--orange);color:#fff;padding:32px;display:grid;grid-template-columns:1fr auto;align-items:center;gap:40px}.talk-card small{font:700 .65rem Manrope;letter-spacing:.16em}.talk-card h3{font-size:1.8rem;margin:8px 0 4px}.talk-card p{margin:0;color:#fffddd}.talk-card button,.dialog-link{font:600 1rem "IBM Plex Sans Thai";border:0;background:#fff;color:var(--ink);padding:16px 20px;cursor:pointer;display:flex;gap:30px;justify-content:space-between;min-width:235px}.disclaimer{color:var(--muted);font-size:.88rem;margin-top:24px;border:1px dashed #bbb;padding:18px}.disclaimer b{color:var(--ink)}dialog{width:min(560px,calc(100% - 32px));border:0;padding:42px;box-shadow:0 25px 90px #0004}dialog::backdrop{background:#0009}.dialog-close{position:absolute;right:18px;top:13px;border:0;background:none;font-size:1.8rem;cursor:pointer}.dialog-link{background:var(--orange);color:#fff;margin-top:25px;width:100%}
@media(max-width:900px){.tool-intro{grid-template-columns:1fr}.split-inputs,.result-grid{grid-template-columns:1fr}.talk-card{grid-template-columns:1fr}.talk-card button{width:100%}.step-panel{padding:36px 28px}}
@media(max-width:600px){.tool-intro{padding:55px 20px 38px}.tool-intro h1{font-size:3.2rem}.calculator{border-inline:0;margin-bottom:60px}.step-tab{padding:14px 8px}.step-tab b{display:none}.step-panel{padding:32px 20px}.field-grid{grid-template-columns:1fr}.field.wide,.classification.wide{grid-column:auto}.classification{align-items:flex-start;flex-direction:column;gap:8px}.step-actions{gap:18px}.next-button{min-width:0}.split-inputs{gap:28px}.result-card{padding:26px 20px}.results-heading{align-items:start;gap:18px}.talk-card{padding:26px 20px}}

/* BAE Tax Tools v1 refinements */
.field input::placeholder{color:#92928e}
.field select:invalid{color:#92928e}
.field select:disabled{background:#f1f1ef;color:#777;cursor:not-allowed}
.company-card{border-top-color:var(--orange)}
.result-card.dark{background:var(--orange);color:#111;border-color:var(--orange)}
.result-card.dark>small{color:#111b}
.result-card.dark>strong{color:#111}
.result-card.dark dl{border-color:#1115}
.result-card.dark dl>div{border-color:#1115}
.result-card.dark dt{color:#111b}
.result-badge{background:#111;color:#fff}
.insight{background:#f4f4f2;border-left:5px solid var(--orange)}
.insight p{color:var(--muted)}
.field-help{color:var(--muted);font-weight:400;line-height:1.45}
.field-warning{color:var(--orange);font-weight:600;line-height:1.45}
.optional{color:var(--muted);font-weight:400}
.form-error{color:#b53b00;font-weight:600;margin:18px 0 0}
.calculation-note{margin-top:24px;padding:22px 24px;border-left:4px solid var(--orange);background:var(--soft);color:var(--muted);font-size:.92rem}
.calculation-note b{color:var(--ink);font-size:1rem}
.calculation-note p{margin:7px 0 0}
.booking-intro{color:var(--muted);margin:8px 0 26px}.booking-form{display:grid;gap:18px}.booking-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.booking-form textarea{font:500 1rem "IBM Plex Sans Thai";width:100%;border:1px solid #bbb;padding:14px 16px;resize:vertical}.booking-form textarea:focus{outline:2px solid var(--orange);outline-offset:1px}.booking-consent{display:flex;gap:11px;align-items:flex-start;cursor:pointer;color:var(--muted);font-size:.92rem;line-height:1.5}.booking-consent input{width:19px;height:19px;flex:none;margin-top:2px;accent-color:var(--orange)}.booking-status{min-height:24px;margin:0;color:#b53b00;font-weight:600}.booking-status.loading{color:var(--muted)}.booking-submit,.booking-done{font:600 1rem "IBM Plex Sans Thai";border:0;background:var(--orange);color:#fff;padding:16px 20px;cursor:pointer;width:100%;display:flex;justify-content:space-between}.booking-submit:disabled{opacity:.55;cursor:wait}.booking-success{text-align:center;padding:30px 0 8px}.booking-success>span{display:grid;place-items:center;width:58px;height:58px;margin:0 auto 18px;border-radius:50%;background:var(--orange);color:#fff;font-size:1.8rem}.booking-success h3{font-size:1.7rem;margin:0}.booking-success p{color:var(--muted);line-height:1.6}.booking-done{display:block;margin-top:24px}#booking-dialog{width:min(640px,calc(100% - 32px));max-height:calc(100vh - 32px);overflow:auto}
@media(max-width:600px){#booking-dialog{padding:34px 20px 24px}.booking-grid{grid-template-columns:1fr}}

/* Tax Tools navigation and WHT Assistant */
.tool-picker{max-width:1240px;margin:0 auto;padding:72px 28px 18px}.tool-picker-heading{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:24px}.tool-picker-heading h1{font-size:clamp(2rem,4vw,3.4rem);line-height:1;margin:0}.tool-picker-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.tool-choice{position:relative;display:grid;grid-template-columns:auto 1fr auto;grid-template-rows:auto auto;align-items:center;gap:3px 16px;min-height:112px;padding:24px;border:1px solid var(--line);background:#fff;color:var(--ink);font-family:"IBM Plex Sans Thai";text-align:left;cursor:pointer;transition:background .2s,color .2s,border-color .2s,transform .2s}.tool-choice:hover,.tool-choice:focus-visible{border-color:var(--orange);transform:translateY(-2px);outline:none}.tool-choice.active{background:var(--ink);color:#fff;border-color:var(--ink)}.tool-choice .tool-number{grid-row:1/3;align-self:start;font:700 .72rem Manrope;color:var(--orange);letter-spacing:.08em}.tool-choice strong{font-size:clamp(1.3rem,2.6vw,2rem);line-height:1.1}.tool-choice small{grid-column:2;color:var(--muted);font:600 .72rem Manrope;letter-spacing:.08em;text-transform:uppercase}.tool-choice.active small{color:#fffb}.tool-choice .tool-arrow{grid-column:3;grid-row:1/3;font-size:1.7rem;color:var(--orange)}.tool-choice::after{content:attr(data-description);position:absolute;left:18px;right:18px;bottom:calc(100% + 10px);z-index:8;padding:13px 15px;background:var(--ink);color:#fff;font-size:.9rem;font-weight:400;line-height:1.5;box-shadow:0 12px 28px #0003;opacity:0;transform:translateY(6px);pointer-events:none;transition:opacity .16s,transform .16s}.tool-choice:hover::after,.tool-choice:focus-visible::after{opacity:1;transform:translateY(0)}.tool-view[hidden]{display:none!important}.tool-view{animation:tool-in .28s ease-out}.tool-view .tool-intro{padding-top:64px}@keyframes tool-in{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:none}}
.wht-intro h1{font-size:clamp(3.2rem,6vw,5.6rem)}#wht-payment-mode-field[hidden]{display:none}.wht-result-layout{display:grid;grid-template-columns:minmax(250px,.72fr) minmax(0,1.28fr);gap:18px}.wht-rate-card{background:var(--ink);color:#fff;padding:36px;display:flex;flex-direction:column;min-height:355px}.wht-rate-card .wht-form-label{color:#fff9;font-size:.9rem}.wht-rate-card #wht-form-result{display:block;font:700 clamp(1.12rem,2vw,1.3rem) "IBM Plex Sans Thai";letter-spacing:.02em;color:#ffb000;margin-top:3px}.wht-rate-card .wht-rate-label{margin-top:auto;color:#fff9}.wht-rate-card strong{font:700 clamp(3.8rem,8vw,6.5rem) Manrope;line-height:1;color:var(--orange);margin:8px 0 18px}.wht-rate-card p{font-size:1.2rem;font-weight:600;margin:0}.wht-breakdown{border:1px solid var(--line);padding:24px 30px}.wht-breakdown dl{margin:0}.wht-breakdown dl>div{display:flex;justify-content:space-between;gap:20px;padding:15px 0;border-bottom:1px solid var(--line)}.wht-breakdown dl>div:last-child{border-bottom:0}.wht-breakdown dt{color:var(--muted)}.wht-breakdown dd{margin:0;font-weight:700;text-align:right}.wht-breakdown .accent-row{color:var(--orange)}.wht-breakdown .accent-row dt{color:inherit}.wht-breakdown .total-row{margin:7px -14px 0;padding:18px 14px;background:var(--soft);border:0;font-size:1.12rem}.wht-breakdown .total-row dt{color:var(--ink);font-weight:700}.legal-reminder{margin-top:18px;padding:24px;border:1px solid #e5c98a;background:#fff9e8;color:#5f4a1d}.legal-reminder b{display:block;color:var(--ink);font-size:1.08rem}.legal-reminder p{margin:7px 0 10px;line-height:1.6}.legal-reminder small{display:block;color:#78663f}.wht-talk-card{background:var(--ink)}.wht-talk-card button{color:var(--ink);background:var(--orange)}
.wht-document-link{margin-top:16px;background:var(--orange);color:#fff;padding:18px 20px;display:flex;align-items:center;justify-content:space-between;gap:20px}.wht-document-link[hidden]{display:none!important}.wht-document-link small,.wht-document-link b{display:block}.wht-document-link small{font-size:.76rem;color:#fffbd;margin-bottom:2px}.wht-document-link strong{font:700 1.4rem Manrope}
@media(max-width:900px){.tool-picker{padding-top:50px}.wht-result-layout{grid-template-columns:1fr}.wht-rate-card{min-height:285px}}
@media(max-width:600px){.tool-picker{padding:42px 20px 6px}.tool-picker-heading{display:block}.tool-picker-heading h1{font-size:2.2rem}.tool-picker-grid{grid-template-columns:1fr}.tool-choice{min-height:94px;padding:20px}.tool-choice::after{position:static;grid-column:2/4;grid-row:3;display:block;padding:5px 0 0;background:none;color:var(--muted);box-shadow:none;opacity:1;transform:none;font-size:.85rem}.tool-choice.active::after{color:#fffc}.tool-view .tool-intro{padding-top:46px}.wht-breakdown{padding:18px 16px}.wht-breakdown dl>div{align-items:flex-start}.wht-rate-card{min-height:245px;padding:28px 24px}.legal-reminder{padding:20px}.wht-talk-card button{min-width:0}}
.tool-picker-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:900px){.tool-picker-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.tool-picker-grid{grid-template-columns:1fr}}
