
.af-page{padding-top:4rem;padding-bottom:6rem}.af-hero{padding:3.5rem 0 3rem;max-width:1000px}.af-hero h1{font-size:clamp(3rem,7vw,6rem);line-height:1.07;letter-spacing:-.055em;margin:1.2rem 0}.af-hero h1 em{font-weight:400;color:#a7c9aa}.af-hero p{font-size:clamp(1.2rem,2vw,1.55rem);max-width:760px;line-height:1.6}.af-hero-tags{display:flex;flex-wrap:wrap;gap:.7rem;margin-top:2rem}.af-hero-tags span,.af-num{font-size:.76rem;letter-spacing:.13em;font-weight:700;color:#9cc6b4}.af-hero-tags span{border:1px solid #426b61;border-radius:30px;padding:.55rem .9rem}.af-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(225px,1fr));gap:1rem;margin:1rem 0 5rem}.af-card{background:var(--surface,#182820);border:1px solid #48675a;border-radius:18px;padding:1.7rem;text-decoration:none;color:inherit;min-height:250px;transition:transform .15s,border-color .15s}.af-card:hover,.af-card:focus-visible{transform:translateY(-3px);border-color:#b8d4aa}.af-card h3{font-size:1.65rem;line-height:1.16;margin:1.5rem 0 .8rem}.af-card p{line-height:1.5}.af-link{display:inline-block;margin-top:1rem;color:#a8cdb5;font-weight:700}.af-section{padding:3.5rem 0;border-top:1px solid #587368;scroll-margin-top:5rem}.af-section h2{font-size:clamp(2rem,4vw,3.6rem);letter-spacing:-.035em;margin:.6rem 0}.af-lead{font-size:1.35rem;opacity:.85}.af-columns{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,1fr);gap:clamp(1.5rem,5vw,5rem);align-items:start;margin-top:2rem}.af-columns>div:first-child>p:first-child{font-size:1.18rem;line-height:1.75}.af-formula{border-left:4px solid #c6bd7b;padding:1rem 1.2rem;margin:1.8rem 0;font-size:1.3rem;font-weight:700}.af-note{font-size:.91rem;line-height:1.6;opacity:.8}.af-source a{color:inherit;text-decoration:underline}.af-model{border:1px solid #648074;border-radius:20px;padding:1.5rem;background:rgba(80,115,93,.09)}.af-model-title{font-size:.78rem;letter-spacing:.13em;font-weight:700;margin-bottom:1.2rem}.af-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.af-fields label{font-size:.89rem;display:flex;flex-direction:column;gap:.4rem;line-height:1.3}.af-fields input[type=number]{background:transparent;color:inherit;border:1px solid #769284;border-radius:8px;padding:.75rem;font:inherit;min-width:0;width:100%;box-sizing:border-box}.af-fields input:focus-visible{outline:2px solid #8ec4b0}.af-fields .af-check{flex-direction:row;align-items:center;gap:.8rem;grid-column:1/-1;padding:.35rem}.af-check input{width:20px;height:20px;accent-color:#60b69c}.af-result{margin:1.5rem 0;padding:1.4rem;border-radius:14px;background:#193b32;color:#f4f8ed;display:flex;flex-direction:column;gap:.5rem}.af-result span{font-size:.75rem;letter-spacing:.1em}.af-result strong{font-size:clamp(1.6rem,3vw,2.5rem);line-height:1.2}.af-result small{line-height:1.5;color:#d5e5dc}.af-end{border-top:1px solid #587368;padding:4rem 0}.af-end h2{font-size:clamp(2rem,4vw,3.5rem);max-width:800px}.af-end p{font-size:1.2rem;line-height:1.6;max-width:800px}html[data-theme=light] .af-card{background:#f2f0e8;border-color:#c5c9b9}html[data-theme=light] .af-model{background:#f2f0e8;border-color:#c5c9b9}html[data-theme=light] .af-num,html[data-theme=light] .af-link{color:#315a49}html[data-theme=light] .af-hero-tags span{border-color:#a4b3a5}html[data-theme=light] .af-fields input[type=number]{border-color:#88998d}@media(max-width:760px){.af-page{padding-top:2rem}.af-columns{grid-template-columns:1fr}.af-grid{grid-template-columns:1fr 1fr}.af-card{min-height:200px;padding:1.1rem}.af-card h3{font-size:1.3rem}.af-fields{grid-template-columns:1fr 1fr}}@media(max-width:480px){.af-grid{grid-template-columns:1fr}.af-fields{grid-template-columns:1fr}.af-card{min-height:auto}.af-section{padding:2.5rem 0}}

/* Match the live Canvas palette and accessible control sizes. */
.af-hero h1 em,.af-hero-tags span,.af-num,.af-link{color:var(--green)}
.af-note{font-size:14px;opacity:1;color:var(--muted)}
.af-model-title,.af-num,.af-hero-tags span,.af-result span{font-size:12px}
.af-fields label,.af-result small{font-size:14px}.af-fields input[type=number]{min-height:48px;font-size:16px}
.af-fields .af-check{min-height:48px;cursor:pointer}.af-check input{flex:none;width:24px;height:24px}
.af-source a{display:inline-flex;align-items:center;min-height:44px}.af-formula{overflow-wrap:anywhere}
.af-grid h3{color:var(--ink)}.af-result strong{overflow-wrap:anywhere}
.af-promo{display:grid;grid-template-columns:1.2fr .8fr;gap:3rem;padding:3rem;border:1px solid var(--line);border-radius:20px;margin-top:3rem;margin-bottom:3rem;background:var(--soft)}
.af-promo h2{font-size:clamp(2.3rem,4.5vw,4rem);line-height:1.08;margin:1rem 0;letter-spacing:-.04em}.af-promo h2 em{color:var(--green)}.af-promo p{max-width:620px;font-size:18px;line-height:1.7;margin-bottom:1.5rem}
.af-promo-map{display:flex;flex-direction:column;justify-content:center;gap:0}.af-promo-map span{padding:1.3rem 0;border-bottom:1px solid var(--line);color:var(--muted);display:flex;gap:1.5rem;font-size:14px}.af-promo-map b{font-size:clamp(18px,2.2vw,28px);font-weight:400;color:var(--ink)}.af-promo-map small{font-size:12px;letter-spacing:.08em;padding-top:1.5rem}
html[data-theme=light] .af-hero h1 em,html[data-theme=light] .af-hero-tags span{color:#315a49}
@media(max-width:760px){.af-promo{grid-template-columns:1fr;padding:1.5rem;gap:1.5rem}.af-hero{padding-top:2rem}.af-section{scroll-margin-top:7rem}}
@media(prefers-reduced-motion:reduce){.af-card{transition:none}.af-card:hover{transform:none}}
.af-fields input[aria-invalid=true]{border-color:#d78168;outline:2px solid #d78168;outline-offset:2px}html[data-theme=light] .af-fields input[aria-invalid=true]{border-color:#a63f28;outline-color:#a63f28}
