/* Farmland fee guide. Scoped to the existing farmland service view. */
#yz-mainproto .yz-farmland-fees { background: #f8f7f3; }
#yz-mainproto .yz-farmland-fees h4 { margin: 0; padding: 0; border: 0; background: none; box-shadow: none; color: var(--ink); font: inherit; font-weight: 650; line-height: 1.7; }
#yz-mainproto .yz-farmland-fees h4::before,
#yz-mainproto .yz-farmland-fees h4::after { display: none; }
#yz-mainproto .yz-farmland-fees-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 32px; margin-bottom: 32px; }
#yz-mainproto .yz-farmland-fees-head h2 { margin-bottom: 18px; }
#yz-mainproto .yz-farmland-fees-head .yz-intro { margin-bottom: 0; }
#yz-mainproto .yz-farmland-pdf { flex: 0 0 auto; }
#yz-mainproto .yz-farmland-pdf .yz-btn { flex-wrap: wrap; gap: 8px 18px; max-width: 100%; }
#yz-mainproto .yz-farmland-pdf .yz-btn::after { content: '\2193'; }
#yz-mainproto .yz-farmland-pdf p { margin: 10px 0 0; font-size: 11px; color: #51675c; text-align: center; }
#yz-mainproto .yz-farmland-file-type { font-size: 10px; letter-spacing: .01em; }
#yz-mainproto .yz-farmland-key-conditions { padding: 28px 30px 24px; border: 1px solid #c8d3c3; background: #eaf0e3; border-radius: 5px; }
#yz-mainproto .yz-farmland-key-label { margin: 0 0 18px; font-size: 13px; font-weight: 650; letter-spacing: .06em; color: #36503f; }
#yz-mainproto .yz-farmland-key-grid { display: grid; grid-template-columns: 1fr 1.25fr; gap: 26px; }
#yz-mainproto .yz-farmland-key-grid > div + div { padding-left: 26px; border-left: 1px solid #c4d0bb; }
#yz-mainproto .yz-farmland-key-grid > div > span { display: block; font-size: 11px; color: #4c6250; margin-bottom: 7px; }
#yz-mainproto .yz-farmland-key-grid strong { display: block; font-size: 16px; font-weight: 600; line-height: 1.9; }
#yz-mainproto .yz-farmland-key-grid p { font-size: 12px; margin: 12px 0 0; color: #405549; line-height: 1.95; }
#yz-mainproto .yz-farmland-visit-note { font-size: 13px; margin: 22px 0 0; padding-top: 18px; border-top: 1px solid #c4d0bb; line-height: 1.95; }
#yz-mainproto .yz-farmland-visit-note strong { font-weight: 650; }
#yz-mainproto .yz-farmland-block-head { display: flex; align-items: baseline; justify-content: space-between; gap: 14px; margin: 42px 0 18px; }
#yz-mainproto .yz-farmland-block-head h3 { font-size: 22px; margin: 0; }
#yz-mainproto .yz-farmland-block-head > span { font-size: 12px; color: #4f625b; }
#yz-mainproto .yz-farmland-rates { border-top: 2px solid #849975; }
#yz-mainproto .yz-farmland-rate { display: grid; grid-template-columns: 155px minmax(0, 1fr) auto; align-items: center; gap: 24px; padding: 21px 8px; border-bottom: 1px solid var(--line); }
#yz-mainproto .yz-farmland-rate h4 { font-size: 15px; }
#yz-mainproto .yz-farmland-rate h4 > span { display: block; font-size: 12px; font-weight: 500; color: #516b48; margin-bottom: 3px; }
#yz-mainproto .yz-farmland-rate > p { margin: 0; font-size: 14px; line-height: 1.85; }
#yz-mainproto .yz-farmland-rate > p > span { font-size: 12px; color: #51675c; }
#yz-mainproto .yz-farmland-amount { white-space: nowrap; display: flex; align-items: baseline; gap: 5px; color: #234933; }
#yz-mainproto .yz-farmland-amount strong { font-family: Georgia, serif; font-size: 31px; font-weight: 400; letter-spacing: -.02em; }
#yz-mainproto .yz-farmland-amount > span { font-size: 13px; }
#yz-mainproto .yz-farmland-amount small { display: block; font-size: 10px; text-align: right; line-height: 1.2; }
#yz-mainproto .yz-farmland-note { color: #4f625b; font-size: 12px; line-height: 1.95; margin: 18px 0 0; }
#yz-mainproto .yz-farmland-procedures { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px; margin-top: 28px; }
#yz-mainproto .yz-farmland-procedures > div { padding: 21px 22px; border: 1px solid var(--line); background: #fff; border-radius: 4px; }
#yz-mainproto .yz-farmland-procedures h4 { font-size: 17px; color: #315a40; }
#yz-mainproto .yz-farmland-procedures h4 > span { display: block; color: var(--ink); font-size: 13px; margin-top: 6px; }
#yz-mainproto .yz-farmland-procedures p { font-size: 12px; line-height: 1.95; color: #4f625b; margin: 14px 0 0; }
#yz-mainproto .yz-farmland-details { margin-top: 36px; border-top: 1px solid #b8c7b0; }
#yz-mainproto .yz-farmland-details > details { border-bottom: 1px solid #b8c7b0; }
#yz-mainproto .yz-farmland-details summary { display: flex; justify-content: space-between; align-items: center; gap: 22px; padding: 24px 8px; cursor: pointer; list-style: none; }
#yz-mainproto .yz-farmland-details summary::-webkit-details-marker { display: none; }
#yz-mainproto .yz-farmland-details summary::after { content: '+'; display: grid; place-items: center; flex: 0 0 32px; width: 32px; height: 32px; color: #315a40; border: 1px solid #a6b59d; border-radius: 50%; font-size: 21px; line-height: 1; font-weight: 400; }
#yz-mainproto .yz-farmland-details details[open] > summary::after { content: '\2212'; }
#yz-mainproto .yz-farmland-details summary:hover { color: #315a40; }
#yz-mainproto .yz-farmland-details summary strong { display: block; font-size: 16px; font-weight: 600; line-height: 1.7; }
#yz-mainproto .yz-farmland-details summary small { display: block; font-size: 12px; color: #4f625b; font-weight: 400; margin-top: 5px; line-height: 1.7; }
#yz-mainproto .yz-farmland-details-body { padding: 0 8px 28px; font-size: 13px; line-height: 1.95; }
#yz-mainproto .yz-farmland-details-body > p { margin: 0 0 22px; }
#yz-mainproto .yz-farmland-description-list { margin: 0; }
#yz-mainproto .yz-farmland-description-list > div { display: grid; grid-template-columns: minmax(150px, .75fr) minmax(0, 2fr); gap: 28px; padding: 23px 0; border-top: 1px solid var(--line); }
#yz-mainproto .yz-farmland-description-list dt { font-size: 14px; font-weight: 600; margin: 0; line-height: 1.85; }
#yz-mainproto .yz-farmland-description-list dd { margin: 0; color: #40564a; }
#yz-mainproto .yz-farmland-addition { display: grid; grid-template-columns: 180px minmax(0, 1fr) 180px; gap: 24px; padding: 24px 0; border-top: 1px solid var(--line); align-items: start; }
#yz-mainproto .yz-farmland-addition h4 { font-size: 14px; }
#yz-mainproto .yz-farmland-scope { display: block; color: #526949; font-size: 11px; margin-top: 6px; }
#yz-mainproto .yz-farmland-addition > p { margin: 0; color: #40564a; font-size: 13px; line-height: 1.95; }
#yz-mainproto .yz-farmland-extra-amount { text-align: right; color: #234933; }
#yz-mainproto .yz-farmland-extra-amount strong { display: block; font-size: 21px; font-weight: 500; letter-spacing: -.01em; white-space: nowrap; }
#yz-mainproto .yz-farmland-extra-amount span { display: block; font-size: 11px; margin-top: 5px; }
#yz-mainproto .yz-farmland-no-extra { background: #eaf0e3; padding: 24px 27px; border-radius: 4px; margin-top: 4px; }
#yz-mainproto .yz-farmland-no-extra h4 { font-size: 15px; margin-bottom: 12px; }
#yz-mainproto .yz-farmland-no-extra p { margin: 0 0 13px; color: #40564a; }
#yz-mainproto .yz-farmland-no-extra p:last-child { margin-bottom: 0; }
#yz-mainproto .yz-farmland-examples-head { margin-top: 44px; }
#yz-mainproto .yz-farmland-examples { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
#yz-mainproto .yz-farmland-examples article { display: flex; flex-direction: column; padding: 26px 24px; border: 1px solid var(--line); background: #fff; border-radius: 4px; min-width: 0; }
#yz-mainproto .yz-farmland-examples .yz-eyebrow { color: #536f44; font-size: 10px; margin-bottom: 13px; }
#yz-mainproto .yz-farmland-examples h4 { font-size: 18px; margin-bottom: 12px; }
#yz-mainproto .yz-farmland-case-condition { font-size: 13px; line-height: 1.85; margin: 0 0 20px; }
#yz-mainproto .yz-farmland-calculation { font-size: 12px; line-height: 1.9; color: #4f625b; margin: 0 0 23px; }
#yz-mainproto .yz-farmland-case-total { display: flex; flex-wrap: wrap; align-items: baseline; gap: 8px 16px; padding-top: 19px; border-top: 1px solid #ccd7c4; margin-top: auto; }
#yz-mainproto .yz-farmland-case-total > span { font-size: 11px; color: #40564a; }
#yz-mainproto .yz-farmland-case-total > strong { font-family: Georgia, serif; font-weight: 400; font-size: 30px; letter-spacing: -.025em; color: #234933; white-space: nowrap; }
#yz-mainproto .yz-farmland-case-total small { font-size: 10px; font-family: -apple-system, BlinkMacSystemFont, 'Hiragino Sans', 'Yu Gothic', sans-serif; margin-left: 4px; letter-spacing: 0; }
#yz-mainproto .yz-farmland-example-note strong { font-weight: 600; color: #344e3c; }
#yz-mainproto .yz-farmland-fees-end { display: flex; justify-content: space-between; align-items: center; gap: 28px; margin-top: 38px; padding-top: 30px; border-top: 1px solid var(--line); }
#yz-mainproto .yz-farmland-fees-end > p { margin: 0; font-size: 13px; line-height: 1.95; }
#yz-mainproto .yz-farmland-fees-end .yz-buttons { margin: 0; gap: 16px 22px; }
#yz-mainproto .yz-farmland-fees-end .yz-link { font-size: 12px; }
@media (max-width: 1000px) {
  #yz-mainproto .yz-farmland-fees-head { align-items: flex-start; }
  #yz-mainproto .yz-farmland-pdf { margin-top: 32px; }
  #yz-mainproto .yz-farmland-rate { grid-template-columns: 115px minmax(0, 1fr) auto; gap: 20px; }
  #yz-mainproto .yz-farmland-addition { grid-template-columns: 155px minmax(0, 1fr); gap: 12px 24px; }
  #yz-mainproto .yz-farmland-extra-amount { grid-column: 2; text-align: left; display: flex; flex-wrap: wrap; align-items: baseline; gap: 5px 14px; }
  #yz-mainproto .yz-farmland-examples { gap: 12px; }
  #yz-mainproto .yz-farmland-examples article { padding: 23px 19px; }
  #yz-mainproto .yz-farmland-case-total > strong { font-size: 27px; }
  #yz-mainproto .yz-farmland-fees-end { display: block; }
  #yz-mainproto .yz-farmland-fees-end .yz-buttons { margin-top: 22px; }
}
@media (max-width: 820px) {
  #yz-mainproto .yz-farmland-fees-head { display: block; }
  #yz-mainproto .yz-farmland-pdf { display: inline-block; margin-top: 24px; }
  #yz-mainproto .yz-farmland-key-grid { grid-template-columns: 1fr; gap: 20px; }
  #yz-mainproto .yz-farmland-key-grid > div + div { border-left: 0; border-top: 1px solid #c4d0bb; padding-left: 0; padding-top: 20px; }
  #yz-mainproto .yz-farmland-procedures { gap: 12px; }
  #yz-mainproto .yz-farmland-procedures > div { padding: 18px; }
  #yz-mainproto .yz-farmland-examples { grid-template-columns: 1fr; gap: 14px; }
  #yz-mainproto .yz-farmland-examples article { padding: 25px 26px; }
  #yz-mainproto .yz-farmland-case-total { justify-content: space-between; }
  #yz-mainproto .yz-farmland-case-total > strong { font-size: 31px; }
}
@media (max-width: 600px) {
  #yz-mainproto .yz-farmland-fees-head { margin-bottom: 27px; }
  #yz-mainproto .yz-farmland-fees-head h2 { font-size: 29px; }
  #yz-mainproto .yz-farmland-desktop-break { display: none; }
  #yz-mainproto .yz-farmland-pdf { width: 100%; }
  #yz-mainproto .yz-farmland-pdf .yz-btn { width: 100%; font-size: 13px; padding: 15px 17px; gap: 6px 12px; }
  #yz-mainproto .yz-farmland-file-type { margin-left: auto; }
  #yz-mainproto .yz-farmland-key-conditions { padding: 23px 20px; }
  #yz-mainproto .yz-farmland-key-grid strong { font-size: 14px; line-height: 1.95; }
  #yz-mainproto .yz-farmland-visit-note { font-size: 12px; }
  #yz-mainproto .yz-farmland-visit-note strong { display: block; margin-bottom: 6px; }
  #yz-mainproto .yz-farmland-block-head { display: block; margin-top: 33px; }
  #yz-mainproto .yz-farmland-block-head h3 { font-size: 21px; margin-bottom: 8px; }
  #yz-mainproto .yz-farmland-block-head > span { font-size: 11px; }
  #yz-mainproto .yz-farmland-rate { grid-template-columns: 1fr; gap: 10px; padding: 22px 2px; }
  #yz-mainproto .yz-farmland-rate h4 { font-size: 16px; display: flex; align-items: baseline; gap: 14px; }
  #yz-mainproto .yz-farmland-rate h4 > span { display: inline; font-size: 13px; margin: 0; }
  #yz-mainproto .yz-farmland-rate > p { font-size: 13px; }
  #yz-mainproto .yz-farmland-amount { justify-content: flex-end; margin-top: 3px; }
  #yz-mainproto .yz-farmland-amount strong { font-size: 32px; }
  #yz-mainproto .yz-farmland-procedures { grid-template-columns: 1fr; gap: 12px; margin-top: 25px; }
  #yz-mainproto .yz-farmland-procedures > div { padding: 20px; }
  #yz-mainproto .yz-farmland-procedures h4 { display: flex; align-items: baseline; gap: 15px; font-size: 16px; }
  #yz-mainproto .yz-farmland-procedures h4 > span { margin-top: 0; }
  #yz-mainproto .yz-farmland-procedures p { margin-top: 10px; }
  #yz-mainproto .yz-farmland-details { margin-top: 30px; }
  #yz-mainproto .yz-farmland-details summary { padding: 23px 2px; gap: 14px; }
  #yz-mainproto .yz-farmland-details summary strong { font-size: 15px; }
  #yz-mainproto .yz-farmland-details summary small { font-size: 11px; }
  #yz-mainproto .yz-farmland-details summary::after { flex-basis: 28px; width: 28px; height: 28px; font-size: 19px; }
  #yz-mainproto .yz-farmland-details-body { padding: 0 2px 24px; }
  #yz-mainproto .yz-farmland-description-list > div { grid-template-columns: 1fr; gap: 10px; padding: 21px 0; }
  #yz-mainproto .yz-farmland-addition { grid-template-columns: 1fr; gap: 12px; padding: 24px 0; }
  #yz-mainproto .yz-farmland-addition h4 { font-size: 15px; }
  #yz-mainproto .yz-farmland-scope { margin-top: 3px; }
  #yz-mainproto .yz-farmland-extra-amount { grid-column: 1; justify-content: space-between; gap: 5px 12px; }
  #yz-mainproto .yz-farmland-extra-amount strong { font-size: 22px; }
  #yz-mainproto .yz-farmland-no-extra { padding: 21px 19px; }
  #yz-mainproto .yz-farmland-examples article { padding: 24px 21px; }
  #yz-mainproto .yz-farmland-fees-end .yz-btn { width: 100%; padding: 16px 20px; font-size: 13px; gap: 14px; }
}
@media print {
  #yz-mainproto .yz-farmland-details details:not([open]) > .yz-farmland-details-body { display: block !important; }
  #yz-mainproto .yz-farmland-pdf,
  #yz-mainproto .yz-farmland-fees-end { display: none; }
  #yz-mainproto .yz-farmland-rate,
  #yz-mainproto .yz-farmland-addition,
  #yz-mainproto .yz-farmland-examples article { break-inside: avoid; }
}
