/* FORM: a restrained editorial system for the five sample modules. */
.brand-symbol{display:inline-flex;align-items:center;justify-content:center;width:35px;height:35px;vertical-align:middle;color:var(--accent);margin-right:5px}
.brand-symbol .form-mark{display:block;width:100%;height:100%;fill:currentColor;transform-origin:50% 50%;animation:form-breathe 7s ease-in-out infinite;filter:drop-shadow(0 0 4px #c6ff0033)}
@keyframes form-breathe{0%,100%{transform:rotate(-6deg) scale(1,.97)}50%{transform:rotate(13deg) scale(.93,1.06)}}
.header .brand:hover .form-mark,footer .brand:hover .form-mark{animation-duration:2.2s}
.modules-section{background:#e6e9df;color:#192019}
.modules-section .section-kicker{border-color:#29342a45;color:#303b2d}
.modules-intro{display:grid;grid-template-columns:1.15fr .65fr;gap:10%;align-items:end;margin:0 0 58px}
.modules-intro h2{font-size:clamp(44px,6vw,88px);line-height:1.04;margin:0;letter-spacing:-.052em}
.modules-intro h2 span{color:#6e7969}
.modules-intro p{font-size:18px;line-height:1.65;max-width:450px;margin:0 0 7px;color:#414c3e}
.module-list{border-top:1px solid #263125}
.module-list a{display:grid;grid-template-columns:200px minmax(0,1fr) 255px 20px;align-items:center;gap:22px;padding:26px 0;color:#202820;border-bottom:1px solid #26312566;text-decoration:none;transition:padding .25s,background .25s}
.module-list a:hover,.module-list a:focus-visible{padding-left:15px;background:#d9dfd2}
.module-list a>span{font-size:12px;letter-spacing:.07em}
.module-list strong{font:500 clamp(20px,2.2vw,32px)/1.2 var(--display);letter-spacing:-.035em}
.module-list small{font-size:14px;color:#5c6958}
.module-list b{font-size:20px;font-weight:400}
.modules-note{font-size:14px;color:#586553;margin:27px 0 0;line-height:1.6}
.blog-section{background:#d6d9cf;color:#20251e}
.blog-section .section-kicker{border-color:#242a2245;color:#3b4438}
.blog-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:12%;padding:35px 0 40px}
.blog-index,.blog-feature>span{font-size:12px;letter-spacing:.08em;color:#53614c}
.blog-layout h2{font-size:clamp(48px,5vw,80px);line-height:1.02;letter-spacing:-.055em;margin:20px 0 30px}
.blog-layout h2 em{font-weight:400;font-family:Georgia,serif}
.blog-layout>div>p,.blog-feature p{font-size:17px;line-height:1.7;color:#445040}
.blog-feature{border-top:2px solid #262e24;padding-top:18px}
.blog-feature h3{font:500 clamp(30px,3.4vw,52px)/1.09 var(--display);letter-spacing:-.05em;margin:32px 0}
.blog-feature details{border-top:1px solid #29332866;margin-top:40px;padding-top:18px}
.blog-feature summary{cursor:pointer;font-size:15px;list-style:none;display:flex;justify-content:space-between;gap:20px}
.blog-feature summary::-webkit-details-marker{display:none}
.blog-feature details[open] summary span{transform:rotate(90deg)}
.planner-section{background:#192019}
.planner-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:10%}
.planner-layout h2{font-size:clamp(55px,6vw,90px);line-height:1.03;margin:4px 0 28px}
.planner-layout>div>p{font-size:18px;line-height:1.7;color:#c2cab9;max-width:480px}
.planner-form{background:#e6e9df;color:#172016;padding:36px 42px}
.planner-step{border-bottom:1px solid #34413255;padding-bottom:23px;margin-bottom:24px}
.planner-step>span{font-size:12px;letter-spacing:.1em;color:#667361}
.planner-step fieldset{border:0;padding:0;margin:0;display:grid;grid-template-columns:1fr 1fr;gap:10px}
.planner-step legend{font:500 27px var(--display);letter-spacing:-.04em;margin:12px 0 18px}
.planner-step label{position:relative;display:block;cursor:pointer}
.planner-step input{position:absolute;opacity:0;inset:0;width:100%;height:100%;cursor:pointer}
.planner-step label span{display:block;padding:13px 15px;border:1px solid #788573;color:#303c2f;font-size:14px;min-height:50px}
.planner-step label input:checked+span{background:#263425;border-color:#263425;color:#ecf5e8}
.planner-step label input:focus-visible+span{outline:2px solid #5c7858;outline-offset:2px}
.planner-result small{font-size:12px;letter-spacing:.08em;color:#5b6855}
.planner-result strong{display:block;font:500 30px var(--display);letter-spacing:-.04em;margin:14px 0}
.planner-result p{font-size:15px;line-height:1.6;min-height:50px;color:#42503f}
.planner-result a{display:inline-block;border-bottom:1px solid #192719;padding:10px 0;color:#192719;font-size:14px;text-decoration:none}
@media(max-width:1000px){.module-list a{grid-template-columns:150px 1fr 20px}.module-list small{grid-column:2;grid-row:2}.module-list b{grid-column:3;grid-row:1/3}.blog-layout{gap:7%}}
@media(max-width:760px){.brand-symbol{width:31px;height:31px}.modules-intro,.blog-layout,.planner-layout{grid-template-columns:1fr;gap:25px}.modules-intro h2{font-size:clamp(46px,10vw,70px)}.modules-intro p,.planner-layout>div>p{font-size:16px}.module-list a{grid-template-columns:1fr 22px;gap:9px 15px;padding:20px 0}.module-list a>span,.module-list strong,.module-list small{grid-column:1}.module-list b{grid-column:2;grid-row:1/4}.module-list strong{font-size:24px}.module-list small{grid-row:auto;font-size:13px}.blog-layout{padding:10px 0}.blog-layout h2{font-size:50px}.blog-feature h3{font-size:35px}.planner-form{padding:24px 20px}.planner-step fieldset{grid-template-columns:1fr}.planner-step legend{font-size:25px}}
@media(prefers-reduced-motion:reduce){.brand-symbol .form-mark{animation:none}}
