.landing-view.is-active{padding-bottom:40px}
.landing-reason{gap:48px;padding:48px;border-radius:18px;box-shadow:none}
.landing-reason h2{font-size:clamp(2rem,3.2vw,2.85rem);line-height:1.15}
.landing-reason h3{font-size:1.05rem}
.landing-reason>div p{font-size:.875rem}
.tools-section{width:100%;margin:0 auto;padding:72px 0 40px}
.tools-heading{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,300px);align-items:end;gap:24px;margin-bottom:28px}
.tools-heading .eyebrow{margin:0 0 12px;font-size:.72rem}
.tools-heading h2{max-width:680px;margin:0;font-size:clamp(1.85rem,3.2vw,2.7rem);line-height:1.15;letter-spacing:-.045em;color:#173f35}
.tools-heading>p{margin:0;color:#4e655a;font-size:.9375rem;line-height:1.65}
.tools-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;align-items:stretch}
.tool-card{display:flex;flex-direction:column;gap:20px;min-width:0;padding:26px 24px 16px;border:1px solid #c4d6ca;border-radius:16px;background:#fffefa;box-shadow:none}
.tool-icon{display:grid;place-items:center;width:44px;height:44px;border-radius:12px;background:#edf5ef;color:#245a4a}
.tool-icon svg{width:25px;height:25px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.tool-card h3{margin:0 0 10px;font-size:1.35rem;letter-spacing:-.035em;line-height:1.25;color:#173f35}
.tool-card p{margin:0;font-size:.9375rem;line-height:1.65;color:#4e655a}
.tool-benefits{display:grid;gap:10px;list-style:none;margin:0 0 4px;padding:0}
.tool-benefits li{display:flex;align-items:baseline;gap:9px;font-size:.8125rem;line-height:1.5;color:#365749}
.tool-benefits li::before{content:"";flex:0 0 4px;width:4px;height:4px;border-radius:50%;background:#67a083;align-self:start;margin-top:.6em}
.tool-card-footer{margin-top:auto;padding-top:12px;border-top:1px solid #dce6df}
.tool-card-footer :is(button,a){display:flex;justify-content:space-between;align-items:center;gap:12px;width:100%;min-height:44px;padding:8px 0;border:0;border-radius:6px;background:transparent;color:#245a4a;font:700 .875rem Manrope,system-ui,sans-serif;text-align:start;cursor:pointer;text-decoration:none}
.tool-card-footer [hidden]{display:none!important}
.tool-card-footer :is(button,a):hover{color:#173f35;text-decoration:underline;text-underline-offset:4px}
.tool-card-footer :is(button,a):focus-visible{outline:2px solid #245a4a;outline-offset:4px}
.tool-card-footer .ui-chevron{flex:none;font-size:1.25rem}
.motion-ready .tools-section .tools-heading,.motion-ready .tools-section .tool-card{opacity:var(--tool-reveal,0);transform:translate(var(--tool-x,-52px),var(--tool-y,28px));will-change:opacity,transform}
.site-footer{width:min(1160px,calc(100% - 48px));margin:0 auto;padding:30px 0 40px;display:grid;grid-template-columns:minmax(230px,340px) minmax(0,1fr);grid-template-areas:"brand links" "note links" "copyright links";align-items:start;gap:10px 48px;border-top:1px solid #c3d6ca;color:#526b5f;text-align:start;font-size:.8125rem}
.site-footer .footer-brand{grid-area:brand;justify-self:start;display:inline-flex;align-items:center;gap:9px;color:#245a4a;font-size:1.0625rem;font-weight:800;letter-spacing:-.035em;text-decoration:none}
.site-footer .footer-brand svg{width:30px;height:30px;flex:none}
.site-footer .footer-note{grid-area:note;margin:0;font-size:.8125rem;line-height:1.6}
.site-footer nav{grid-area:links;align-self:center;display:flex;justify-content:flex-end;flex-wrap:wrap;column-gap:20px;row-gap:0;min-width:0;margin:0}
.site-footer nav a{display:inline-flex;align-items:center;min-height:36px;color:#365749;text-decoration:none;text-underline-offset:4px}
.site-footer a:hover{text-decoration:underline}
.site-footer a:focus-visible{outline:2px solid #245a4a;outline-offset:4px;border-radius:3px}
.site-footer small{grid-area:copyright;font-size:.6875rem;line-height:1.5;color:#647b70}
.site-footer small a{color:inherit;text-decoration:underline}
.legal-shell{width:min(980px,calc(100% - 48px));margin:40px auto 80px}
.legal-shell>header{margin:30px 0}.legal-shell h1{font-size:clamp(2rem,5vw,3rem);margin:14px 0;color:#173f35;letter-spacing:-.04em}
.legal-shell p,.legal-shell li{font-size:1rem;line-height:1.8;color:#365749}
.legal-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:24px 0}
.legal-tabs a{padding:10px 18px;border:1px solid #bad4c5;border-radius:999px;background:#fffefa;color:#245a4a;text-decoration:none}
.legal-shell section{scroll-margin-top:30px;padding:32px;margin:20px 0;border:1px solid #c9ddd0;border-radius:20px;background:#fffefa}
.legal-shell h2{font-size:1.7rem;color:#173f35;margin:0 0 18px}.legal-shell h3{font-size:1.1rem;color:#173f35;margin:26px 0 8px}
.legal-shell a{color:#235e47;text-underline-offset:3px}.legal-review-note{padding:16px 20px;border-left:3px solid #9d7b29;background:#fbf5e5;border-radius:0 10px 10px 0}
@media(max-width:900px){.tools-heading{grid-template-columns:1fr;gap:14px}.tools-heading>p{max-width:440px}.tool-card{padding:22px 18px 14px;gap:18px}.landing-reason{grid-template-columns:1fr;gap:30px;padding:36px}}
@media(max-width:760px){.tools-grid{grid-template-columns:1fr}.tools-section{padding:48px 0 24px}.tool-card{display:grid;grid-template-columns:44px minmax(0,1fr);gap:16px;padding:22px}.tool-benefits,.tool-card-footer{grid-column:2}.tool-card-footer{margin-top:0}.site-footer{width:calc(100% - 32px);padding:26px 12px 36px}.site-footer nav{column-gap:18px;max-width:440px}.site-footer nav a{min-height:44px}.legal-shell section{padding:22px}.landing-reason{padding:28px 24px}.landing-view.is-active{padding-bottom:24px}}
@media(max-width:400px){.tool-card{gap:14px 12px;padding:20px 18px}.tool-benefits,.tool-card-footer{grid-column:1/-1}.legal-shell{width:calc(100% - 32px)}}
@media(max-width:760px){.site-footer{grid-template-columns:minmax(0,1fr);grid-template-areas:"brand" "note" "links" "copyright";gap:12px}.site-footer nav{justify-content:flex-start;max-width:none}}
@media(prefers-reduced-motion:reduce){.motion-ready .tools-section .tools-heading,.motion-ready .tools-section .tool-card{opacity:1;transform:none}}
.access-motion .tools-section :is(.tools-heading,.tool-card){opacity:1!important;transform:none!important;will-change:auto}

.public-shell>header{max-width:760px;margin:64px 0 28px}.public-shell h1{font-size:clamp(2.5rem,6vw,4.5rem);line-height:1.08}.public-intro{max-width:760px}.public-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.public-shell .button{color:#fff;text-decoration:none;font-size:1rem}.public-shell section{margin:28px 0}.public-shell h2{line-height:1.25}@media(max-width:760px){.public-grid{grid-template-columns:1fr;gap:0}.public-shell>header{margin-top:36px}}
.public-shell>header{margin-bottom:12px}.public-shell h1{font-size:clamp(2rem,3.2vw,2.75rem);line-height:1.25}.guides-hero{display:block;padding:0 0 24px;border-bottom:1px solid var(--line);margin-bottom:28px}.guides-hero h1{margin:0;font-size:clamp(2rem,3.2vw,2.75rem);line-height:1.25;letter-spacing:-.045em}.guides-hero p{max-width:680px;margin:12px 0 0;font-size:1rem;line-height:1.65}
.site-header a.brand{color:#173f35;text-decoration:none}
.plans-schools-note{margin:26px 0 0;color:var(--muted);font-size:.85rem;line-height:1.6}.plans-schools-note a{color:var(--forest);font-weight:800}

/* Full footer: brand and social links on the left, three link columns, copyright underneath */
.site-footer.footer-full{grid-template-columns:minmax(220px,340px) minmax(0,1fr);grid-template-areas:"about cols" "copyright copyright";gap:36px 56px;padding:44px 0 32px}
.footer-full .footer-about{grid-area:about;display:flex;flex-direction:column;align-items:flex-start;gap:14px}
.footer-full .footer-note{max-width:32ch}
.footer-social{display:flex;gap:10px;margin:4px 0 0;padding:0;list-style:none}
.footer-social a{display:grid;place-items:center;width:42px;height:42px;border:1px solid #c3d6ca;border-radius:12px;background:#fffefa;color:#245a4a;transition:background-color .18s ease,border-color .18s ease,color .18s ease}
.footer-social a:hover{text-decoration:none;border-color:currentColor;background:#fff}
.footer-social a.social-instagram:hover{color:#e4405f}.footer-social a.social-linkedin:hover{color:#0a66c2}.footer-social a.social-youtube:hover{color:#f00}
.footer-social svg{width:20px;height:20px;fill:currentColor}
.footer-full .footer-cols{grid-area:cols;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px 32px;align-self:start}
.footer-full .footer-col{grid-area:auto;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;align-self:start;gap:0;min-width:0}
.footer-full .footer-col h2{margin:0 0 8px;color:#173f35;font-size:.72rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.footer-full small{padding-top:22px;border-top:1px solid #c3d6ca}
@media(max-width:760px){.site-footer.footer-full{grid-template-columns:minmax(0,1fr);grid-template-areas:"about" "cols" "copyright";gap:28px;padding:34px 0 28px}.footer-full .footer-cols{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:340px){.footer-full .footer-cols{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.footer-social a{transition:none}}
