/* Travel calculator desk: paper inputs beside a green result notebook. */
.tools-opening { display: grid; grid-template-columns: 1.35fr .65fr; gap: 64px; padding-block: 48px 36px; align-items: center; }
.tools-opening h1 { font-size: clamp(34px, 4.2vw, 56px); line-height: 1.2; white-space: pre-line; margin-block: 20px; }
.tools-opening .standfirst { font-size: 17px; max-width: 52ch; }
.tools-opening figure { margin: 0; }
.tools-opening img { width: 100%; height: 220px; object-fit: cover; }
.tools-opening figcaption { font-size: 10px; color: var(--ink-faint); margin-top: 8px; }
.tool-directory { display: grid; grid-template-columns: 1.35fr 1fr; gap: 32px; padding-bottom: 48px; }
.tool-directory a { display: block; text-decoration: none; padding: 32px; border-top: 3px solid var(--clear); }
.tool-feature { background: var(--clear-bg); color: var(--ink); }
.tool-secondary { align-self: end; background: var(--paper-card); color: var(--ink); }
.tool-directory h2 { font-size: 30px; line-height: 1.3; }
.tool-directory a > span:last-child { text-decoration: underline; color: var(--link); }
.calculator { display: grid; grid-template-columns: 1.15fr 1fr; gap: 48px; padding-block: 20px 32px; align-items: start; }
.calculator-inputs { display: grid; gap: 12px; }
.calculator label { display: block; font-size: 15px; font-weight: 600; }
.calculator small { font-size: 11px; font-weight: 400; color: var(--ink-faint); display: block; }
.calculator input, .calculator select { width: 100%; min-width: 0; padding: 12px; font: inherit; font-size: 18px; border: 1px solid var(--rule-strong); border-radius: 2px; background: var(--paper-card); color: var(--ink); }
.calculator #calc-amount { font-size: 30px; }
.currency-selects { display: grid; grid-template-columns: 1fr 44px 1fr; gap: 12px; align-items: end; margin-block: 8px; }
.currency-selects button { padding: 10px; font-size: 24px; min-height: 48px; }
.split-controls { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; }
.calculator .plan-primary { justify-self: start; cursor: pointer; margin-top: 12px; }
.calculator .plan-primary:disabled { opacity: .6; cursor: wait; }
.calculator-output { background: var(--clear); color: var(--paper-card); padding: 32px; border-radius: 4px; min-width: 0; }
.calculator-output h2 { font-size: 26px; line-height: 1.3; }
.calculator-output .kicker, .calculator-output a { color: var(--paper-card); }
.calculator-output output { display: block; font-family: var(--display); font-size: clamp(25px, 3vw, 40px); line-height: 1.2; overflow-wrap: anywhere; font-variant-numeric: tabular-nums; }
.calculator-output #calc-results p { font-size: 13px; margin-block: 24px 8px; }
.calculator-note, .calculator-privacy, .reference-date { font-size: 13px; line-height: 1.65; }
.calculator-note { margin-top: 24px; padding-top: 20px; border-top: 1px solid #ffffff55; }
.reference-date { margin-top: 28px; }
.calculator-privacy { color: var(--ink-soft); }
.tools-back { margin-bottom: 32px; }
.tools-next { display: flex; justify-content: space-between; gap: 32px; align-items: center; padding-block: 32px; border-top: 1px solid var(--rule-strong); }
.tools-next h2 { font-size: 25px; line-height: 1.35; }
.tools-next p { color: var(--ink-soft); max-width: 60ch; }
.tools-next > a { flex-shrink: 0; }
@media(max-width:760px) {
  .tools-opening { grid-template-columns: 1fr; gap: 20px; padding-block: 28px 24px; }
  .tools-opening img { height: 130px; }
  .tool-directory, .calculator { grid-template-columns: 1fr; gap: 24px; }
  .calculator-output { padding: 24px; }
  .tool-directory a { padding: 24px; }
  .tools-next { display: block; }
}
