.organic-page { max-width: 70rem; margin-inline: auto; }
.organic-article { max-width: 62rem; }
.organic-hero { margin-bottom: clamp(2rem, 5vw, 4rem); }
.organic-eyebrow { margin: 0 0 1rem; color: var(--blue-300); font-size: .75rem; font-weight: 700; letter-spacing: .13em; text-transform: uppercase; }
.organic-hero h1 { max-width: 58rem; margin: 0; font-size: clamp(2.6rem, 6vw, 4.8rem); font-weight: 620; letter-spacing: -.06em; line-height: 1; }
.organic-intro { max-width: 48rem; margin-top: 1.5rem; color: #b9c9dd; font-size: 1.1rem; line-height: 1.75; }
.organic-category { padding: 2.5rem 0; border-top: 1px solid var(--line); scroll-margin-top: 2rem; }
.organic-category h2 { margin: 0 0 1.5rem; font-size: clamp(1.8rem, 4vw, 2.7rem); }
.organic-card-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; }
.organic-card { display: flex; min-height: 13rem; padding: 1.5rem; border: 1px solid var(--line); border-radius: 1.2rem; background: linear-gradient(155deg, rgba(14, 40, 83, .78), rgba(4, 15, 34, .9)); box-shadow: 0 24px 65px rgba(0, 4, 14, .28); flex-direction: column; text-decoration: none; transition: border-color 180ms ease, transform 180ms ease; }
.organic-card:hover, .organic-card:focus-visible { border-color: rgba(129, 174, 255, .52); transform: translateY(-2px); }
.organic-card h3 { margin: 0; font-size: 1.35rem; }
.organic-card p { margin: .8rem 0 1.5rem; color: #aebfd5; line-height: 1.65; }
.organic-card span { margin-top: auto; color: var(--blue-300); font-weight: 650; }
.organic-empty { color: var(--muted); }
.organic-content { max-width: 54rem; }
.organic-content h2 { margin-top: 3.5rem; font-size: clamp(1.7rem, 4vw, 2.3rem); line-height: 1.15; }
.organic-content h3 { margin-top: 2.3rem; font-size: 1.35rem; line-height: 1.3; }
.organic-content blockquote, .organic-formula, .organic-disclaimer { margin: 1.5rem 0; padding: 1.25rem 1.4rem; border: 1px solid rgba(141, 185, 255, .22); border-left: 3px solid var(--blue-500); border-radius: .8rem; background: rgba(32, 90, 190, .1); }
.organic-content blockquote { color: #dce8f7; }
.organic-formula { overflow-wrap: anywhere; color: #edf5ff; }
.organic-cta { margin: 2.5rem 0; padding: 1.5rem; border: 1px solid rgba(105, 164, 255, .3); border-radius: 1rem; background: linear-gradient(145deg, rgba(31, 92, 202, .24), rgba(5, 20, 45, .8)); }
.organic-cta h2, .organic-cta h3 { margin-top: 0; }
.organic-cta a, .organic-cta > span { display: inline-flex; margin-top: .4rem; padding: .72rem 1rem; border-radius: .65rem; background: var(--blue-600); color: #fff; font-weight: 650; text-decoration: none; }
.organic-cta--pending > span { cursor: not-allowed; opacity: .62; }
.organic-cta small { margin-left: .55rem; font-weight: 500; }
.organic-sources { padding-left: 1.3rem; }
.organic-sources li { margin: 1rem 0; }
.organic-disclaimer { border-left-color: #f4b860; background: rgba(172, 112, 25, .1); }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; border: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; }
.organic-tool { max-width: 64rem; }
.organic-tool__hero { margin-bottom: 2rem; }
.organic-tool__intro { max-width: 50rem; margin: 1.4rem 0 0; color: #b9c9dd; font-size: 1.08rem; line-height: 1.75; }
.rent-calculator { padding: clamp(1.25rem, 4vw, 2.25rem); border: 1px solid rgba(129, 174, 255, .3); border-radius: 1.4rem; background: linear-gradient(145deg, rgba(17, 49, 101, .86), rgba(4, 15, 34, .96)); box-shadow: 0 28px 75px rgba(0, 4, 14, .34); }
.rent-calculator__inputs, .rent-calculator__additional-fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; }
.calculator-field { display: flex; min-width: 0; flex-direction: column; }
.calculator-field label { margin-bottom: .5rem; color: #edf5ff; font-weight: 650; }
.calculator-field input { width: 100%; min-height: 3.25rem; padding: .8rem .9rem; border: 1px solid rgba(170, 198, 239, .25); border-radius: .7rem; outline: none; background: rgba(2, 13, 31, .76); color: #fff; font: inherit; transition: border-color 180ms ease, box-shadow 180ms ease; }
.calculator-field input:focus { border-color: var(--blue-400); box-shadow: 0 0 0 3px rgba(74, 137, 255, .16); }
.calculator-field input[aria-invalid="true"] { border-color: #f49a8d; }
.calculator-field small { margin-top: .45rem; color: var(--muted); line-height: 1.45; }
.calculator-field__error { min-height: 1.2rem; margin-top: .25rem; color: #ffb6ab; font-size: .78rem; }
.rent-calculator__additional { margin-top: .75rem; padding-top: .75rem; border-top: 1px solid var(--line); }
.rent-calculator__additional summary { width: fit-content; padding: .55rem 0; color: var(--blue-300); font-weight: 650; cursor: pointer; }
.rent-calculator__additional-fields { margin-top: .75rem; }
.rent-calculator__result { min-height: 11rem; margin-top: 1.5rem; padding: clamp(1.25rem, 4vw, 2rem); border-radius: 1rem; background: rgba(2, 12, 29, .72); }
.rent-calculator__result h2, .rent-calculator__sqm h3 { margin-top: 0; }
.rent-calculator__result-label { margin: 0; color: var(--blue-300); font-weight: 650; }
.rent-calculator__result-main { margin: .35rem 0 1.35rem; color: #fff; font-size: clamp(2rem, 6vw, 3.5rem); font-weight: 700; letter-spacing: -.045em; line-height: 1.05; }
.rent-calculator__metrics, .rent-calculator__sqm dl { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .75rem; margin: 0; }
.rent-calculator__metrics div, .rent-calculator__sqm dl div { padding: 1rem; border: 1px solid var(--line); border-radius: .75rem; background: rgba(255, 255, 255, .025); }
.rent-calculator dt { color: var(--muted); font-size: .78rem; }
.rent-calculator dd { margin: .35rem 0 0; color: #edf5ff; font-weight: 650; }
.rent-calculator__formula { margin: 1rem 0; color: #aebfd5; overflow-wrap: anywhere; }
.rent-calculator__sqm { margin-top: 1.25rem; padding-top: 1.25rem; border-top: 1px solid var(--line); }
.organic-button { min-height: 2.8rem; margin-top: 1.25rem; padding: .7rem 1rem; border: 1px solid rgba(129, 174, 255, .4); border-radius: .65rem; background: var(--blue-600); color: #fff; font: inherit; font-weight: 650; cursor: pointer; }
.organic-button:hover, .organic-button:focus-visible { background: var(--blue-500); }
.rent-calculator__next-step { margin-bottom: 0; }
.organic-tool__content { margin: 4rem auto 0; }
.organic-product-cta { max-width: 54rem; margin: 4rem auto 2rem; }
.organic-tool > .organic-disclaimer { max-width: 54rem; margin-inline: auto; }
.notice-generator { max-width: 76rem; }
.notice-generator [hidden], .rent-calculator__next-step [hidden] { display: none !important; }
.notice-generator__privacy { width: fit-content; margin-top: 1rem; padding: .65rem .85rem; border: 1px solid rgba(94, 226, 168, .25); border-radius: .65rem; background: rgba(31, 129, 91, .1); color: #b9eed8; font-size: .88rem; }
.notice-generator__workspace { display: grid; grid-template-columns: minmax(0, 1fr) minmax(22rem, .9fr); align-items: start; gap: 1.5rem; }
.notice-form { display: grid; gap: 1rem; }
.notice-form__section { min-width: 0; margin: 0; padding: 1.25rem; border: 1px solid var(--line); border-radius: 1rem; background: rgba(7, 26, 58, .74); }
.notice-form__section legend { padding: 0 .35rem; color: #fff; font-size: 1.05rem; font-weight: 700; }
.notice-form__section--modes { display: grid; gap: .75rem; }
.notice-form__section--modes > label { display: flex; gap: .75rem; padding: .9rem; border: 1px solid var(--line); border-radius: .75rem; cursor: pointer; }
.notice-form__section--modes input { margin-top: .2rem; accent-color: var(--blue-400); }
.notice-form__section--modes span, .notice-form__section--modes small { display: block; }
.notice-form__section--modes small { margin-top: .35rem; color: var(--muted); line-height: 1.5; }
.notice-form__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; }
.notice-form__wide { grid-column: 1 / -1; }
.notice-generator input[type="date"] { display: block; width: 100%; min-width: 0; max-width: 100%; box-sizing: border-box; }
.calculator-field select, .calculator-field textarea { width: 100%; min-height: 3.25rem; margin-top: .5rem; padding: .8rem .9rem; border: 1px solid rgba(170, 198, 239, .25); border-radius: .7rem; outline: none; background: rgba(2, 13, 31, .76); color: #fff; font: inherit; }
.calculator-field textarea { resize: vertical; }
.calculator-field select:focus, .calculator-field textarea:focus { border-color: var(--blue-400); box-shadow: 0 0 0 3px rgba(74, 137, 255, .16); }
.notice-form__context { margin: 1rem 0 0; padding: .75rem; border-left: 3px solid #f4b860; background: rgba(172, 112, 25, .1); color: #f6dba7; }
.notice-preview-wrap { position: sticky; top: 1rem; }
.notice-preview { min-height: 42rem; padding: clamp(1.5rem, 4vw, 2.6rem); background: #fff; box-shadow: 0 25px 70px rgba(0, 0, 0, .35); color: #172033; font-family: Georgia, "Times New Roman", serif; line-height: 1.65; }
.notice-preview__recipient { margin: 0 0 3rem; text-align: right; }
.notice-preview h2 { margin: 0 0 2.5rem; text-align: center; font-family: Arial, sans-serif; font-size: 1.15rem; }
.notice-preview h2 small { display: block; margin-top: .25rem; font-size: .95rem; font-weight: 400; text-transform: none; }
.notice-preview__signature { margin-top: 3rem; }
.notice-preview__additional { white-space: pre-wrap; }
.notice-actions { display: flex; flex-wrap: wrap; gap: .65rem; align-items: center; }
.notice-actions small { flex-basis: 100%; color: var(--muted); }
.organic-button--secondary { background: transparent; }
.organic-links { max-width: 54rem; margin: 2rem auto; line-height: 2; }
.repeatable-row { display: grid; grid-template-columns: minmax(0, 1fr) minmax(6rem, .35fr) auto; gap: .75rem; align-items: end; margin-bottom: .85rem; }
.repeatable-row--meters, .repeatable-row--property { grid-template-columns: minmax(0, 1fr) minmax(0, .75fr) minmax(0, .65fr) auto; }
.repeatable-row__remove { min-height: 3.25rem; padding: .7rem; border: 1px solid rgba(244, 154, 141, .45); border-radius: .65rem; background: transparent; color: #ffb6ab; cursor: pointer; }
.repeatable-row__remove:hover, .repeatable-row__remove:focus-visible { border-color: #ffb6ab; background: rgba(244, 154, 141, .1); }
.transfer-act-preview h3 { margin: 1.5rem 0 .65rem; font-family: Arial, sans-serif; font-size: 1rem; }
.transfer-act-preview p { white-space: pre-wrap; overflow-wrap: anywhere; }
.act-table-wrap { max-width: 100%; overflow-x: auto; }
.transfer-act-preview table { width: 100%; border-collapse: collapse; font-size: .83rem; }
.transfer-act-preview th, .transfer-act-preview td { padding: .45rem; border: 1px solid #c7ced8; overflow-wrap: anywhere; text-align: left; vertical-align: top; }
.act-signatures { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; margin-top: 3rem; }
@media (max-width: 900px) { .notice-generator__workspace { grid-template-columns: 1fr; } .notice-preview-wrap { position: static; } }
@media (max-width: 700px) { .organic-card-grid, .rent-calculator__inputs, .rent-calculator__additional-fields, .rent-calculator__metrics, .rent-calculator__sqm dl, .notice-form__grid, .repeatable-row, .repeatable-row--meters, .repeatable-row--property, .act-signatures { grid-template-columns: 1fr; } .organic-hero h1 { letter-spacing: -.04em; } .rent-calculator__result-main { font-size: 2.25rem; } .notice-form__wide { grid-column: auto; } .notice-actions .organic-button, .repeatable-row__remove { width: 100%; } .notice-preview { padding: 1.1rem; } }
@media print {
    @page { size: A4; margin: 18mm; }
    body * { visibility: hidden !important; }
    #notice-print-document, #notice-print-document * { visibility: visible !important; }
    #notice-print-document { position: absolute; inset: 0; width: auto; min-height: 0; padding: 0; box-shadow: none; color: #000; }
}
