/* Growth & utility layer — seasonal content, calendar and calculators */
.season-now{padding-top:66px;padding-bottom:76px}
.season-now-head{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(260px,.55fr);gap:34px;align-items:end;padding-bottom:26px;border-bottom:1px solid var(--spring-line)}
.season-now-head h2{margin:.35rem 0 0;font-family:var(--studio-serif);font-size:clamp(2.6rem,4.6vw,5.1rem);line-height:1;letter-spacing:-.05em;color:var(--spring-ink)}
.season-now-intro p{margin:0 0 8px;color:rgba(35,68,53,.76);font-size:1rem;line-height:1.65}.season-now-intro small{color:rgba(35,68,53,.56);line-height:1.5}
.season-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:20px}
.season-card{min-height:245px;padding:24px;border:1px solid rgba(82,129,83,.15);border-radius:26px;background:rgba(255,253,247,.92);box-shadow:0 16px 40px rgba(72,119,75,.07);display:flex;flex-direction:column}
.season-card>span{font-size:.65rem;font-weight:900;letter-spacing:.14em;color:rgba(60,105,65,.45)}.season-card h3{margin:20px 0 9px;font-family:var(--studio-serif);font-size:1.55rem;line-height:1.05;letter-spacing:-.035em;color:var(--spring-ink)}.season-card p{margin:0 0 20px;color:rgba(35,68,53,.66);line-height:1.6}.season-card a{margin-top:auto;color:#477b4e;font-weight:850;font-size:.84rem;text-decoration:none}.season-card a:hover{text-decoration:underline;text-underline-offset:4px}
.season-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px}.season-actions .btn.primary{background:var(--spring-leaf);color:#fff}.season-actions .btn.ghost{border:1px solid rgba(82,129,83,.2);background:#fffdf7;color:var(--spring-ink)}
.blog-utility-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:-18px;margin-bottom:28px}.blog-utility-links a{display:flex;justify-content:space-between;gap:18px;align-items:center;padding:18px 20px;border:1px solid rgba(82,129,83,.15);border-radius:20px;background:rgba(255,253,247,.9);text-decoration:none;color:var(--spring-ink)}.blog-utility-links span{color:rgba(35,68,53,.62);font-size:.84rem;text-align:right}
.utility-hero{padding:58px 0 32px}.utility-hero .utility-back{display:inline-block;margin-bottom:18px;color:#477b4e;font-weight:800;text-decoration:none}.utility-hero h1{max-width:980px;margin:.35rem 0 18px;font-family:var(--studio-serif);font-size:clamp(3.2rem,6vw,6.5rem);line-height:.94;letter-spacing:-.06em;color:var(--spring-ink)}.utility-hero p{max-width:820px;color:rgba(35,68,53,.7);font-size:1.06rem;line-height:1.7}
.calendar-note,.tool-note{margin:16px 0 28px;padding:18px 20px;border:1px solid rgba(82,129,83,.15);border-radius:18px;background:#f4f8ef;color:rgba(35,68,53,.72);line-height:1.6}
.calendar-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;padding-bottom:80px}.calendar-month{scroll-margin-top:120px;padding:24px;border:1px solid rgba(82,129,83,.14);border-radius:26px;background:rgba(255,253,247,.9);box-shadow:0 14px 38px rgba(72,119,75,.06)}.calendar-month.is-current{outline:3px solid rgba(95,150,95,.32);background:linear-gradient(145deg,#f5f9ee,#fffdf7)}.calendar-month .month-no{display:flex;justify-content:space-between;align-items:center;color:rgba(60,105,65,.45);font-size:.68rem;font-weight:900;letter-spacing:.12em}.calendar-month .current-badge{display:none;padding:5px 8px;border-radius:999px;background:var(--spring-leaf);color:#fff;letter-spacing:.06em}.calendar-month.is-current .current-badge{display:inline-block}.calendar-month h2{margin:17px 0 10px;font-family:var(--studio-serif);font-size:2rem;line-height:1;letter-spacing:-.04em}.calendar-month ul{padding-left:1.15rem;margin:0;color:rgba(35,68,53,.68);line-height:1.65}.calendar-month li{margin:.45rem 0}.calendar-month a{display:inline-block;margin-top:15px;color:#477b4e;font-weight:850;text-decoration:none}
.tool-shell{display:grid;grid-template-columns:minmax(0,.9fr) minmax(330px,1.1fr);gap:22px;padding-bottom:76px}.tool-copy,.calculator-card{padding:28px;border:1px solid rgba(82,129,83,.15);border-radius:28px;background:rgba(255,253,247,.93);box-shadow:0 18px 48px rgba(72,119,75,.07)}.tool-copy h2,.calculator-card h2{font-family:var(--studio-serif);font-size:clamp(2rem,3vw,3rem);letter-spacing:-.045em;line-height:1.02}.tool-copy p,.tool-copy li{color:rgba(35,68,53,.68);line-height:1.7}.tool-copy ul{padding-left:1.2rem}
.calculator-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.calculator-grid label{display:grid;gap:7px;font-weight:800;font-size:.8rem;color:var(--spring-ink)}.calculator-grid input{width:100%;min-height:48px;padding:10px 12px;border:1px solid rgba(82,129,83,.22);border-radius:13px;background:#fff;color:var(--spring-ink);font:inherit}.calculator-actions{display:flex;gap:10px;align-items:center;margin-top:16px}.calculator-actions button{border:0;cursor:pointer}.calculator-result{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:20px}.result-box{padding:16px;border-radius:17px;background:#f1f6ea;border:1px solid rgba(82,129,83,.12)}.result-box small{display:block;color:rgba(35,68,53,.58);font-weight:750}.result-box strong{display:block;margin-top:5px;font-family:var(--studio-serif);font-size:1.55rem;color:var(--spring-ink)}.calculator-foot{margin:16px 0 0;color:rgba(35,68,53,.58);font-size:.82rem;line-height:1.55}
.utility-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:26px 0 80px}.utility-links a{padding:20px;border:1px solid rgba(82,129,83,.14);border-radius:20px;background:#fffdf7;color:var(--spring-ink);text-decoration:none;font-weight:850}
@media(max-width:980px){.season-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.calendar-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tool-shell{grid-template-columns:1fr}}
@media(max-width:720px){.season-now-head{grid-template-columns:1fr}.season-grid,.calendar-grid,.blog-utility-links,.utility-links{grid-template-columns:1fr}.blog-utility-links a{align-items:flex-start;flex-direction:column}.blog-utility-links span{text-align:left}.calculator-grid,.calculator-result{grid-template-columns:1fr}.season-card{min-height:0}.utility-hero{padding-top:34px}}

/* DIY maker tools */
.maker-home{padding-top:18px;padding-bottom:76px}
.maker-head{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(260px,.7fr);gap:34px;align-items:end;padding-bottom:25px;border-bottom:1px solid var(--spring-line)}
.maker-head h2{margin:.35rem 0 0;font-family:var(--studio-serif);font-size:clamp(2.5rem,4.4vw,4.9rem);line-height:1;letter-spacing:-.05em;color:var(--spring-ink)}
.maker-head p{margin:0;color:rgba(35,68,53,.67);line-height:1.7}
.maker-grid,.tools-hub-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:20px}
.tool-card{display:flex;flex-direction:column;min-height:250px;padding:24px;border:1px solid rgba(82,129,83,.15);border-radius:26px;background:rgba(255,253,247,.92);box-shadow:0 16px 40px rgba(72,119,75,.07);text-decoration:none;color:var(--spring-ink);transition:.22s}
.tool-card:hover{transform:translateY(-3px);box-shadow:0 24px 54px rgba(72,119,75,.11)}
.tool-card .tool-no{font-size:.65rem;font-weight:900;letter-spacing:.14em;color:rgba(60,105,65,.45)}
.tool-card h3{margin:20px 0 9px;font-family:var(--studio-serif);font-size:1.65rem;line-height:1.03;letter-spacing:-.04em}
.tool-card p{margin:0 0 22px;color:rgba(35,68,53,.64);line-height:1.62}
.tool-card strong{margin-top:auto;color:#477b4e;font-size:.84rem}
.tools-hub-grid{padding-bottom:44px}
.tools-hub-grid .tool-card{min-height:280px}
.tool-category{display:inline-flex;width:max-content;padding:6px 9px;border-radius:999px;background:#edf5e7;color:#477b4e;font-size:.68rem;font-weight:900;letter-spacing:.08em}
.tool-section{padding:12px 0 72px}
.tool-section .section-head{margin-bottom:18px}
.calculator-grid select,.guide-grid select{width:100%;min-height:48px;padding:10px 12px;border:1px solid rgba(82,129,83,.22);border-radius:13px;background:#fff;color:var(--spring-ink);font:inherit}
.check-row{display:flex!important;grid-column:1/-1;grid-template-columns:none!important;align-items:center;gap:10px!important;padding:12px 0;font-weight:750!important}
.check-row input{width:20px!important;min-height:20px!important}
.field-group{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;grid-column:1/-1}
.field-group[hidden]{display:none!important}
.guide-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.guide-grid label{display:grid;gap:7px;font-weight:800;font-size:.8rem;color:var(--spring-ink)}
.guide-output{display:grid;gap:10px;margin-top:20px}
.guide-box{padding:17px 18px;border:1px solid rgba(82,129,83,.13);border-radius:18px;background:#f1f6ea}
.guide-box small{display:block;margin-bottom:6px;color:rgba(35,68,53,.56);font-weight:850;text-transform:uppercase;letter-spacing:.06em}
.guide-box strong,.guide-box p{margin:0;color:var(--spring-ink);line-height:1.55}
.guide-warning{padding:17px 18px;border-radius:18px;background:#fff5db;border:1px solid rgba(176,132,47,.2);color:#66501f;line-height:1.6}
.source-box{margin:28px 0;padding:20px 22px;border-radius:20px;background:#f6f3e9;border:1px solid rgba(82,129,83,.11)}
.source-box h2{margin-top:0;font-size:1.4rem}.source-box ul{margin-bottom:0}.source-box a{text-decoration:underline;text-underline-offset:3px}
.faq-stack{display:grid;gap:12px;margin-top:18px}.faq-stack details{padding:16px 18px;border:1px solid rgba(82,129,83,.13);border-radius:17px;background:#fffdf7}.faq-stack summary{cursor:pointer;font-weight:850;color:var(--spring-ink)}.faq-stack p{color:rgba(35,68,53,.67);line-height:1.7}
@media(max-width:1050px){.maker-grid,.tools-hub-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.maker-head{grid-template-columns:1fr}.maker-grid,.tools-hub-grid,.guide-grid{grid-template-columns:1fr}.field-group{grid-template-columns:1fr}.tool-card{min-height:0}}

.cut-plan-output{display:grid;gap:9px;margin-top:18px}
.cut-bar{display:flex;justify-content:space-between;gap:18px;align-items:center;padding:15px 17px;border:1px solid rgba(82,129,83,.13);border-radius:17px;background:#f7f9f2}
.cut-bar div{display:grid;gap:5px;min-width:0}.cut-bar small{font-weight:850;color:rgba(35,68,53,.55);text-transform:uppercase;letter-spacing:.06em}.cut-bar strong{color:var(--spring-ink);line-height:1.45;word-break:break-word}.cut-bar>span{flex:0 0 auto;color:#477b4e;font-size:.82rem;font-weight:850}
.calculator-card textarea{width:100%;padding:12px 13px;border:1px solid rgba(82,129,83,.22);border-radius:13px;background:#fff;color:var(--spring-ink);font:inherit;line-height:1.5;resize:vertical}
@media(max-width:720px){.cut-bar{align-items:flex-start;flex-direction:column}.cut-bar>span{flex:auto}}

.maker-more{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:14px}
.maker-more a{display:grid;gap:4px;padding:15px 17px;border:1px solid rgba(82,129,83,.13);border-radius:17px;background:#f7f9f2;text-decoration:none;color:var(--spring-ink)}
.maker-more strong{font-size:.88rem}.maker-more span{font-size:.72rem;color:rgba(35,68,53,.58)}
@media(max-width:900px){.maker-more{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.maker-more{grid-template-columns:1fr}}

.planner-shell{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(300px,.55fr);gap:22px;padding-bottom:72px}
.planner-card{padding:26px;border:1px solid rgba(82,129,83,.15);border-radius:28px;background:rgba(255,253,247,.94);box-shadow:0 18px 48px rgba(72,119,75,.07)}
.planner-head{display:flex;justify-content:space-between;gap:20px;align-items:end;margin-bottom:20px}.planner-head h2{margin:.35rem 0 0;font-family:var(--studio-serif);font-size:clamp(2rem,3vw,3rem);letter-spacing:-.045em}.planner-head label{display:grid;gap:7px;min-width:260px;font-size:.78rem;font-weight:850;color:var(--spring-ink)}
.planner-head input,.planner-table input{width:100%;min-height:43px;padding:9px 10px;border:1px solid rgba(82,129,83,.2);border-radius:11px;background:#fff;color:var(--spring-ink);font:inherit}
.planner-table-wrap{overflow-x:auto}.planner-table{width:100%;border-collapse:separate;border-spacing:0 8px;min-width:760px}.planner-table th{padding:0 8px 4px;text-align:left;color:rgba(35,68,53,.54);font-size:.68rem;text-transform:uppercase;letter-spacing:.08em}.planner-table td{padding:0 5px}.planner-table td:first-child{padding-left:0}.planner-table td:last-child{width:40px;padding-right:0}
.planner-remove{width:38px;height:38px;border:1px solid rgba(140,80,70,.18);border-radius:11px;background:#fff8f5;color:#925548;font-size:1.25rem;cursor:pointer}.planner-actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:15px}
@media(max-width:900px){.planner-shell{grid-template-columns:1fr}.planner-head{align-items:stretch;flex-direction:column}.planner-head label{min-width:0}}
