/* Calm surfaces, legible Arabic, and immediate feedback. Financial values never count up. */
:root {
  --paper: #f5f7f5;
  --ink: #203c34;
  --muted: #586b62;
  --line: #dce4de;
  --surface: #ffffff;
  --green: #174d3b;
  --green-deep: #123c2f;
  --gold: #a8884e;
  --ui-radius: 1.5rem;
  --ui-ease: cubic-bezier(.22, 1, .36, 1);
  background: var(--paper);
  scroll-padding-top: 7.5rem;
}
body { background: var(--paper); }
button, input, select, a, summary { -webkit-tap-highlight-color: transparent; }
h1, h2, h3, .brand { letter-spacing: 0; }
.container { width: min(1168px, calc(100% - 64px)); }
.eyebrow { color: #617369; }

/* One floating material layer; the content below uses solid surfaces. */
.site-header {
  top: .75rem;
  width: min(1248px, calc(100% - 32px));
  margin: .75rem auto 0;
  border: 1px solid #ffffffd9;
  border-radius: 1.25rem;
  background: #ffffffeb;
  backdrop-filter: blur(24px) saturate(140%);
  box-shadow: 0 4px 24px #193b2c08, 0 1px 3px #193b2c05;
}
.header-inner { width: auto; height: 76px; margin: 0; padding-inline: 22px; gap: 24px; }
.brand { gap: 12px; }
.brand>span:last-child { font-size: 1rem; color: #183c2f; }
.brand small { color: #67786e; margin-top: 4px; font-size: .57rem; }
.brand-mark { width: 34px; height: 37px; gap: 3px; }
.brand-mark i { width: 8px; height: 23px; border-radius: 3px 3px 1px 1px; }
.brand-mark i:nth-child(2) { height: 34px; }
.brand-mark i:nth-child(3) { height: 28px; }
.desktop-nav { gap: 24px; font-size: .8rem; color: #52665b; }
.desktop-nav a { padding: 24px 0; }
.desktop-nav a[aria-current]:after { bottom: 15px; background: var(--green); }
.header-cta, .button { border-radius: 12px; min-height: 46px; gap: 14px; background: var(--green); }
.header-cta { font-size: .76rem; padding: 10px 17px; }
.cta-short { display: none; }
.mobile-nav { inset-inline: 0; top: calc(100% + 8px); border-radius: 18px; background: #fff; backdrop-filter: none; border-color: var(--line); box-shadow: 0 16px 40px #183c2f18; }
.menu-toggle { border-radius: 10px; min-width: 44px; min-height: 44px; color: var(--green); }

.hero { padding-block: 58px 62px; gap: 60px; }
.hero h1 { font-size: clamp(2.2rem, 3.65vw, 3.35rem); line-height: 1.5; margin-block: 16px 20px; color: #193e30; }
.hero h1 span { color: #63796c; font-size: .73em; line-height: 1.7; margin-top: 6px; }
.hero-copy>p { color: #52675b; line-height: 2.1; font-size: 1rem; max-width: 47ch; }
.hero-notes { font-size: .72rem; color: #53695b; margin-top: 20px; gap: 18px; }
.hero-actions { display: flex; gap: 22px; align-items: center; flex-wrap: wrap; margin-top: 26px; }
.hero-actions .button { min-height: 48px; font-size: .84rem; padding-inline: 23px; }
.hero-actions>a:last-child { font-size: .76rem; color: #405e4c; text-decoration: underline; text-decoration-color: #bdcbbf; text-underline-offset: 6px; }
.hero-visual { height: 360px; border-radius: 26px; box-shadow: 0 18px 40px #173f350b; }
.hero-visual:after { background: linear-gradient(270deg, #133c30d9, #133c3000 93%); }
.visual-caption { right: 30px; top: 44px; }
.visual-caption>span:nth-child(2) { font-size: 2rem; letter-spacing: 0; }
.visual-kicker, .visual-line small { color: #f5f8f1; }
.visual-badge { left: 22px; bottom: 22px; background: #183e30ed; border: 1px solid #ffffff40; }

.section-heading { margin-bottom: 26px; }
.section-heading h2 { font-size: 1.8rem; line-height: 1.65; color: #203c30; }
.section-heading .eyebrow { font-size: .72rem; margin-bottom: 8px; }
.local-note { background: #eaf0ea; padding: 8px 12px; border-radius: 30px; color: #45604d; font-size: .66rem; margin-bottom: 5px; }
.calculator-section { scroll-margin-top: 0; }
.calculator-shell { overflow: visible; background: transparent; border: 0; box-shadow: none; border-radius: var(--ui-radius); }
.tabs { gap: 6px; padding: 6px; border: 1px solid #dce5dd; background: #e9efea; border-radius: 17px; margin-bottom: 18px; }
.tab { min-height: 52px; padding: 11px 14px; border-radius: 12px; font-size: .84rem; color: #566c5e; transition: color 160ms, background-color 160ms; }
.tab.active { border-radius: 12px; background: #fff; color: #174d3b; box-shadow: 0 2px 5px #173f350b, 0 0 0 1px #183c2f05; }
.tab.active:after { display: none; }
.tab .icon { width: 18px; height: 18px; }
.calculator-grid { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); padding: 0; gap: 20px; align-items: start; }
.calculator-grid>* { min-width: 0; }
.calculator-inputs { border: 1px solid #e0e7e0; border-radius: var(--ui-radius); padding: 30px; background: #fff; box-shadow: 0 8px 24px #163b2c03; }
.form-title { margin-bottom: 28px; gap: 11px; }
.form-title h3 { font-size: 1.03rem; }
.step-number { background: #edf3ed; color: #28583e; border: 0; width: 30px; height: 30px; font: 600 .72rem/1 system-ui,sans-serif; }
.text-button { color: #63786a; min-height: 44px; padding: 6px; border-radius: 9px; font-size: .71rem; }
.text-button .icon { width: 15px; height: 15px; }
.calculator-inputs label { font-size: .82rem; margin-bottom: 10px; color: #2f4d3a; }
.amount-field { padding: 14px 18px; border-radius: 14px; border: 1px solid #cad8cc; background: #f9fbf8; box-shadow: none; gap: 14px; }
.amount-field input { font-family: system-ui,sans-serif; font-size: clamp(2rem, 3vw, 2.5rem); letter-spacing: -.035em; font-weight: 600; color: #164a36; line-height: 1.5; }
.amount-field>span { color: #586f5e; font-size: .7rem; }
.amount-field:focus-within, .percent-field:focus-within { border-color: #36815f; box-shadow: 0 0 0 4px #36815f14; }
.amount-words { font-size: .72rem; color: #617767; margin-block: 8px 16px; }
.quick-prices { display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); gap: 7px; }
.quick-prices button { min-width: 0; min-height: 44px; padding: 7px 3px; border-radius: 10px; font: 550 .72rem/1.5 system-ui,sans-serif; color: #526957; border: 1px solid #e0e7de; background: #f8faf6; }
.quick-prices button.selected { background: #e8f2e8; border-color: #92b99b; color: #164b32; box-shadow: inset 0 0 0 1px #92b99b30; }
.property-kind { margin: 26px 0 0; }
.field, select, .percent-field { min-height: 50px; border-radius: 11px; background: #fff; border: 1px solid #d5e0d5; font-size: .84rem; color: #304e39; padding-inline: 13px; }
.percent-field input { height: 48px; }
.property-kind select { margin-top: 0; }
.field-hint { font-size: .74rem; color: #617568; line-height: 1.95; margin-top: 9px; }
.support-setting { border: 1px solid #e0e8db; border-radius: 14px; background: #f1f6ec; padding: 16px; margin: 19px 0; gap: 16px; }
.support-setting label { font-size: .81rem; margin-bottom: 0; }
.support-setting p { font-size: .7rem; color: #536c50; }
.support-setting a { width: 30px; height: 30px; }
.switch { width: 46px; min-width: 46px; height: 28px; background: #bdccbb; margin: 0; }
.switch:after { width: 22px; height: 22px; top: 3px; left: 3px; box-shadow: 0 1px 3px #153b3026; }
.switch:checked { background: #227346; }
.switch:checked:after { transform: translateX(18px); }
.calculation-options { padding: 0; border: 1px solid #e0e7df; border-radius: 14px; margin-top: 22px; background: #fff; }
.calculation-options>summary { padding: 16px; display: flex; align-items: center; gap: 12px; cursor: pointer; list-style: none; min-height: 76px; border-radius: 14px; }
.calculation-options>summary::-webkit-details-marker { display: none; }
.calculation-options>summary:after { display: none; }
.calculation-options[open]>summary>span { transform: none; }
.options-icon { width: 36px; height: 36px; border-radius: 11px; display: grid; place-items: center; background: #edf3ec; color: #456c4d; flex-shrink: 0; }
.calculation-options summary strong { display: block; font-size: .8rem; font-weight: 650; color: #304e39; }
.calculation-options summary small { display: block; font-size: .67rem; font-weight: 400; color: #627767; line-height: 1.9; margin-top: 4px; }
.calculation-options .options-chevron { margin-inline-start: auto; width: 16px; height: 16px; transform: rotate(-90deg); transition: transform 180ms var(--ui-ease); color: #526b58; }
.calculation-options[open] .options-chevron { transform: rotate(90deg); }
.options-body { padding: 8px 16px 20px; }
.options-body .two-fields { grid-template-columns: 1fr 1.6fr; gap: 14px; }
.options-body .tax-payer-row { display: block; padding-top: 17px; border-top: 1px solid #e6ece3; margin-top: 17px; }
.options-body .tax-payer-row>label { margin-bottom: 9px; font-size: .78rem; }
.options-body .tax-payer-row>select { width: 100%; font-size: .82rem; min-height: 48px; }
.vat-setting { align-items: flex-start; gap: 10px; margin-top: 20px; }
.vat-setting input { width: 20px; height: 20px; margin-top: 3px; }
.vat-setting label { font-size: .75rem; line-height: 2; margin-bottom: 0; }
.vat-setting label span { color: #5b715e; }
.calculate-button { min-height: 52px; border-radius: 13px; font-size: .88rem; margin-top: 25px; background: #174d3b; box-shadow: 0 4px 12px #174d3b12; }
.form-footnote { font-size: .67rem; color: #5b715e; line-height: 2; margin-top: 12px; }
.error-message { border: 1px solid #f2c9bd; border-radius: 12px; font-size: .78rem; }

.result-panel { padding: 30px; border-radius: var(--ui-radius); background: #153f31; box-shadow: 0 12px 30px #153f3112; min-height: 0; }
.result-top { align-items: center; margin-bottom: 25px; }
.result-top .eyebrow { color: #e0ebdb; font-size: .74rem; }
.result-indicator { padding: 6px 10px; border-radius: 30px; background: #ffffff0c; color: #c7dfbb; font-size: .6rem; max-width: none; }
.result-indicator i { background: #b8d8a5; width: 5px; height: 5px; }
.result-panel h3 { color: #e6eee0; font-size: .95rem; font-weight: 500; }
.grand-total { display: flex; align-items: baseline; gap: 12px; margin-block: 8px 5px; }
.grand-total>span { font-size: clamp(2.4rem,4.15vw,3.65rem); line-height: 1.45; letter-spacing: -.045em; font-weight: 550; color: #fff; }
.grand-total small { font-size: .72rem; color: #d3e2ca; }
.result-panel>p { color: #cadbc3; font-size: .72rem; line-height: 1.95; }
.cost-bar { height: 5px; margin-block: 23px; background: #ffffff10; border-radius: 8px; }
.cost-bar i:first-child { background: #91b59b; }
.cost-bar i:nth-child(2) { background: #d4b777; }
.cost-bar i:nth-child(3) { background: #d0e3b4; }
.breakdown>div { padding-block: 13px; align-items: start; gap: 16px; }
.breakdown dt { color: #d6e5ce; font-size: .78rem; line-height: 1.9; flex: 1; }
.breakdown dt small { color: #b4d0a4; font-size: .68rem; }
.breakdown dd { padding-top: 1px; gap: 7px; }
.breakdown b { font-size: 1rem; font-weight: 550; }
.breakdown dd>span { color: #c2d6b7; font-size: .64rem; }
.breakdown>div:first-child { padding-bottom: 16px; margin-bottom: 3px; }
.breakdown>.broker-total { border-top: 1px solid #ffffff20; padding-top: 16px; margin-top: 4px; }
.breakdown .broker-total dt { color: #f3f7ee; }
.payer-summary { display: grid; grid-template-columns: 1fr 1fr; gap: 1px; padding: 0; border: 1px solid #ffffff1c; border-radius: 14px; margin-top: 22px; background: #ffffff12; overflow: hidden; }
.payer-summary>span { background: #204c3a; padding: 15px; font-size: .7rem; color: #c9dbbf; }
.payer-summary b { font: 600 1.02rem/1.7 system-ui,Cairo,sans-serif; color: #fff; margin-top: 7px; }
.result-panel .payer-note { font-size: .75rem; color: #bfd5b5; line-height: 2; margin-top: 13px; }
.result-actions { grid-template-columns: repeat(3,minmax(0,1fr)); border-top: 1px solid #ffffff1a; padding-top: 20px; margin-top: 22px; gap: 9px; }
.result-actions button { min-height: 46px; background: #ffffff09; border: 1px solid #ffffff26; border-radius: 11px; color: #f0f6ea; font-size: .72rem; gap: 7px; padding: 9px 6px; }
.result-actions .icon { width: 16px; height: 16px; }
.result-stamp { font-size: .61rem; color: #b9d0ae; margin-top: 18px; }
.result-panel.invalid { box-shadow: 0 0 0 3px #c76a492e; }
.privacy-hint { font-size: .67rem; color: #607365; line-height: 2; margin-top: 17px; }

/* Carry the same quieter surfaces through the guides and editorial pages. */
.rates-strip { background: #eaf0e8; border: 1px solid #dde6d9; border-radius: 20px; padding: 25px 10px; margin-block: 30px 65px; }
.rates-strip p { color: #425c47; }
.rates-strip p>small { color: #586f5b; }
.rates-strip strong { color: #254d38; font-size: 2rem; }
.table-wrap { background: #fff; border: 1px solid #dfe7db; border-radius: 18px; }
.first-home-banner { background: #e8f0df; border: 1px solid #d6e3ca; border-radius: 22px; padding: 32px; }
.guide-grid { gap: 22px; }
.guide-card { border: 1px solid #dee7db; border-radius: 22px; background: #fff; box-shadow: 0 6px 20px #203c3003; }
.guide-image { height: 235px; }
.guide-body { padding: 25px; }
.guide-body h3 { font-size: 1.13rem; line-height: 1.85; color: #294a36; }
.guide-body p { color: #536b58; }
.guide-body>small { color: #5d7461; }
.read-link { color: #234f34; }
.article-header h1 { color: #1e4432; }
.article-cover { border-radius: 24px; }
.article-sidebar { background: #edf2e8; border: 1px solid #dce6d4; border-radius: 20px; }
.article-toc a { padding-block: 11px; }
.faq-list details { border-bottom-color: #d7e2d4; }
.faq-list summary { min-height: 44px; color: #294b37; }
.site-footer { background: #eaf0e6; border-top: 1px solid #dce5d5; }
.footer-top>div>a:not(.brand) { min-height: 36px; }
.toast { background: #173f31; color: #fff; border-radius: 14px; box-shadow: 0 8px 28px #173f3120; }

/* Press feedback starts on pointer-down; nothing waits for a motion to finish. */
.button, .header-cta, .calculate-button, .quick-prices button, .result-actions button, .text-button, .menu-toggle, .light-button {
  transition: transform 160ms var(--ui-ease), background-color 160ms, box-shadow 160ms;
}
.button:active, .header-cta:active, .calculate-button:active, .quick-prices button:active, .result-actions button:active, .text-button:active, .menu-toggle:active, .light-button:active { transform: scale(.98); transition-duration: 70ms; }
@media (hover:hover) and (pointer:fine) {
  .header-cta:hover, .button:hover, .calculate-button:hover { background: #216348; }
  .quick-prices button:hover:not(.selected) { background: #edf3e9; }
  .result-actions button:hover { background: #ffffff18; border-color: #ffffff40; }
  .text-button:hover, .menu-toggle:hover { background: #eff4eb; }
  .tab:hover:not(.active) { background: #ffffff70; color: #294e37; }
  .calculation-options>summary:hover { background: #f7faf4; }
  .guide-card:hover { transform: translateY(-3px); box-shadow: 0 12px 30px #203c300b; }
}
:where(a,button,summary):focus-visible { outline: 3px solid #648d58; outline-offset: 4px; }
.result-panel button:focus-visible { outline-color: #d4e6bb; }
input:focus-visible, select:focus-visible { outline: 2px solid #3f815b; outline-offset: 2px; }

@media (max-width:1100px) {
  .header-inner { gap: 16px; padding-inline: 18px; }
  .desktop-nav { gap: 17px; font-size: .73rem; }
  .brand>span:last-child { font-size: .9rem; }
  .header-cta { font-size: .69rem; }
  .hero { gap: 35px; }
  .hero-visual { height: 340px; }
  .calculator-inputs, .result-panel { padding: 25px; }
  .result-actions button { font-size: .65rem; }
}
@media (max-width:850px) {
  .container { width: calc(100% - 48px); }
  .header-inner { height: 70px; }
  .brand>span:last-child { font-size: .96rem; }
  .hero { padding-block: 40px 45px; gap: 28px; }
  .hero h1 { font-size: 2.1rem; }
  .hero-copy>p { font-size: .91rem; }
  .hero-visual { height: 330px; }
  .visual-caption { right: 24px; top: 32px; }
  .visual-caption>span:nth-child(2) { font-size: 1.75rem; }
  .hero-actions { gap: 14px; }
  .hero-actions .button { font-size: .8rem; padding-inline: 17px; }
  .hero-actions>a:last-child { font-size: .69rem; }
  .calculator-grid { grid-template-columns: 1fr; gap: 18px; }
  .calculator-inputs { padding: 30px; }
  .result-panel { padding: 30px; }
  .result-actions button { font-size: .76rem; flex-direction: row; }
  .rates-strip { padding-block: 25px; gap: 24px; }
  .guide-image { height: 190px; }
  .guide-body { padding: 21px; }
}
@media (max-width:640px) {
  :root { scroll-padding-top: 104px; }
  .container { width: calc(100% - 32px); }
  .site-header { top: 8px; width: calc(100% - 16px); margin-top: 8px; border-radius: 16px; }
  .header-inner { padding-inline: 12px; height: 68px; gap: 9px; }
  .brand { gap: 7px; }
  .brand>span:last-child { font-size: .78rem; line-height: 1.8; }
  .brand small { font-size: .49rem; margin-top: 1px; }
  .brand-mark { width: 25px; height: 31px; transform: skewY(-8deg); gap: 3px; }
  .brand-mark i { width: 6px; height: 19px; }
  .brand-mark i:nth-child(2) { height: 28px; }
  .brand-mark i:nth-child(3) { height: 23px; }
  .header-cta { font-size: .74rem; min-height: 42px; min-width: 60px; max-width: none; border-radius: 10px; padding-inline: 12px; line-height: 1.8; }
  .cta-full { display: none; }
  .cta-short { display: inline; }
  .menu-toggle { min-width: 38px; padding: 8px; }
  .menu-toggle .icon { width: 19px; }
  .hero { gap: 27px; padding-block: 34px 44px; }
  .hero h1 { font-size: clamp(1.9rem,7.6vw,2.35rem); line-height: 1.6; margin-block: 13px 16px; }
  .hero h1 span { font-size: .74em; }
  .hero-copy>p { font-size: .92rem; line-height: 2.1; }
  .hero-notes { font-size: .68rem; gap: 15px; }
  .hero-actions { margin-top: 24px; gap: 20px; }
  .hero-actions .button { min-height: 48px; padding-inline: 23px; }
  .hero-actions>a:last-child { font-size: .72rem; }
  .hero-visual { height: 240px; border-radius: 21px; }
  .visual-caption { top: 25px; right: 25px; }
  .visual-caption>span:nth-child(2) { font-size: 1.65rem; }
  .visual-kicker { font-size: .64rem; }
  .visual-badge { left: 18px; bottom: 17px; font-size: .6rem; }
  .section-heading { display: block; margin-bottom: 21px; }
  .section-heading h2 { font-size: 1.45rem; line-height: 1.75; }
  .section-heading .eyebrow { font-size: .7rem; margin-bottom: 6px; }
  .local-note { display: inline-flex; max-width: none; font-size: .64rem; margin-top: 13px; padding: 6px 10px; }
  .tabs { gap: 4px; padding: 5px; border-radius: 15px; margin-bottom: 14px; }
  .tab { padding: 12px 2px; min-height: 68px; font-size: .65rem; line-height: 1.7; gap: 7px; white-space: normal; text-align: center; border-radius: 10px; }
  .tab.active { border-radius: 10px; }
  .tab .icon { width: 18px; height: 18px; }
  .calculator-grid { padding: 0; gap: 16px; }
  .calculator-inputs { padding: 23px 19px; border-radius: 20px; }
  .form-title { margin-bottom: 24px; gap: 9px; }
  .form-title h3 { font-size: .97rem; }
  .step-number { width: 27px; height: 27px; }
  .text-button { font-size: .67rem; }
  .amount-field { padding: 13px 14px; gap: 8px; }
  .amount-field input { font-size: clamp(1.7rem,8vw,2.3rem); }
  .amount-field>span { font-size: .65rem; }
  .amount-words { font-size: .69rem; margin-bottom: 14px; }
  .quick-prices { grid-template-columns: repeat(6,minmax(0,1fr)); gap: 7px; }
  .quick-prices button { grid-column: span 2; font-size: .76rem; min-height: 44px; flex-basis: auto; }
  .quick-prices button:nth-last-child(-n+2) { grid-column: span 3; }
  .property-kind { margin-top: 24px; }
  .calculator-inputs label { font-size: .8rem; }
  .field, select, .percent-field { font-size: .82rem; }
  .support-setting { padding: 14px 12px; gap: 11px; }
  .support-setting label { font-size: .75rem; }
  .support-setting p { font-size: .65rem; }
  .calculation-options>summary { padding: 14px 12px; gap: 10px; }
  .calculation-options summary strong { font-size: .76rem; }
  .calculation-options summary small { font-size: .64rem; }
  .options-icon { width: 32px; height: 32px; }
  .options-body { padding-inline: 13px; }
  .options-body .two-fields { gap: 11px; grid-template-columns: 1fr 1.55fr; }
  .vat-setting label { font-size: .73rem; }
  .calculate-button { min-height: 52px; }
  .form-footnote { font-size: .7rem; }
  .result-panel { padding: 26px 21px; border-radius: 21px; }
  .result-top { margin-bottom: 23px; }
  .result-top .eyebrow { font-size: .72rem; }
  .result-indicator { font-size: .56rem; padding: 5px 8px; }
  .result-panel h3 { font-size: .9rem; }
  .grand-total { gap: 9px; }
  .grand-total>span { font-size: clamp(1.85rem,9.5vw,3rem); }
  .grand-total small { font-size: .66rem; }
  .result-panel>p { font-size: .68rem; line-height: 2; }
  .breakdown>div { padding-block: 13px; gap: 10px; }
  .breakdown dt { font-size: .76rem; max-width: 67%; }
  .breakdown dt small { font-size: .65rem; }
  .breakdown b { font-size: .94rem; }
  .breakdown dd>span { font-size: .6rem; }
  .payer-summary>span { padding: 13px 11px; font-size: .66rem; }
  .payer-summary b { font-size: .92rem; }
  .result-panel .payer-note { font-size: .75rem; line-height: 2.1; }
  .result-actions { grid-template-columns: 1fr 1fr; gap: 9px; }
  .result-actions button { font-size: .74rem; min-height: 46px; }
  .result-actions button:last-child { grid-column: 1/-1; }
  .result-stamp { font-size: .57rem; line-height: 1.9; }
  .privacy-hint { font-size: .65rem; margin-inline: 3px; }
  .rates-strip { padding: 23px 14px; gap: 22px 10px; border-radius: 19px; margin-block: 25px 45px; }
  .rates-strip>div, .rates-strip>div:first-child { padding-inline: 6px; }
  .rates-strip strong { font-size: 1.65rem; }
  .rates-strip p { font-size: .66rem; }
  .rates-strip p>small { font-size: .59rem; }
  .first-home-banner { padding: 24px 21px; border-radius: 20px; }
  .guide-image { height: 220px; }
  .guide-body { padding: 23px; }
  .guide-body h3 { font-size: 1.14rem; }
  .guide-body p { font-size: .86rem; }
  .article-cover { border-radius: 19px; }
  .article-sidebar { border-radius: 18px; }
  .article-toc a { min-height: 44px; }
}
@media (max-width:360px) {
  .header-inner { padding-inline: 10px; gap: 6px; }
  .brand>span:last-child { font-size: .69rem; }
  .brand small { font-size: .45rem; }
  .header-cta { font-size: .72rem; min-width: 52px; padding-inline: 9px; }
  .brand-mark { width: 22px; }
  .menu-toggle { min-width: 34px; padding: 6px; }
  .calculator-inputs { padding-inline: 15px; }
  .calculator-inputs .support-setting label { font-size: .69rem; }
  .support-setting p { font-size: .61rem; }
  .options-icon { display: none; }
  .result-panel { padding-inline: 18px; }
  .breakdown dt { font-size: .7rem; }
  .breakdown b { font-size: .85rem; }
  .breakdown dd>span { display: none; }
  .payer-summary { grid-template-columns: 1fr; }
  .payer-summary>span { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
  .payer-summary b { margin-top: 0; font-size: .88rem; }
  .result-indicator { font-size: .53rem; }
}
@media (prefers-reduced-motion:reduce) {
  .button, .header-cta, .calculate-button, .quick-prices button, .result-actions button, .text-button, .menu-toggle, .light-button, .options-chevron, .guide-card { transition: none; }
  .button:active, .header-cta:active, .calculate-button:active, .quick-prices button:active, .result-actions button:active, .text-button:active, .menu-toggle:active, .light-button:active { transform: none; }
}
@media (prefers-reduced-transparency:reduce) {
  .site-header { background: #fff; backdrop-filter: none; }
  .visual-badge { background: #183e30; backdrop-filter: none; }
}
@media (prefers-contrast:more) {
  .site-header { background: #fff; border-color: #6b8372; backdrop-filter: none; }
  .calculator-inputs, .tabs, .calculation-options, .amount-field, .field, select, .percent-field { border-color: #6c866f; }
  .result-panel { background: #123527; }
  .result-panel p, .breakdown dt, .result-stamp { color: #eef6e7; }
  .field-hint, .form-footnote, .amount-words, .privacy-hint { color: #365440; }
}
@media print { body { background: #fff; color: #000; } .hero-actions { display: none; } }
