/* Standalone styles so updated pages work before a fresh Vite build. */
.nursery-gallery-card{cursor:pointer;transition:transform .28s ease,box-shadow .28s ease,background-color .28s ease}
@media(hover:hover){.nursery-gallery-card:hover{transform:translateY(-5px);box-shadow:0 22px 40px rgb(25 59 58 / .16)}.nursery-gallery-card:hover .nursery-gallery-slide.is-active{transform:scale(1.035)}}
.nursery-gallery-card:focus-visible{box-shadow:0 22px 40px rgb(25 59 58 / .16)}
.nursery-gallery-slide{opacity:0;pointer-events:none;transition:opacity .65s ease,transform .35s ease}.nursery-gallery-slide.is-active{opacity:1}
.gallery-image-row{display:grid;grid-template-columns:auto 64px minmax(0,1fr) auto;min-width:0;align-items:start;gap:.5rem}
.gallery-image-row :is(input,a){min-width:0}.gallery-image-row a img{width:64px;height:64px;object-fit:cover}
@media(min-width:640px){.gallery-image-row{grid-template-columns:auto 76px minmax(0,1fr) auto}.gallery-image-row a img{width:76px;height:76px}}
.gallery-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}@media(min-width:768px){.gallery-detail-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
.gallery-detail-dialog{position:fixed;inset:0;margin:auto;max-width:min(95vw,1100px);max-height:92dvh;overflow:auto;background:#193b3a;color:white;border:0;border-radius:1.5rem;padding:1rem}.gallery-detail-dialog::backdrop{background:rgb(10 30 28 / 85%)}
.gallery-detail-dialog img{display:block;max-width:100%;max-height:75dvh;margin:auto;object-fit:contain}
@media(prefers-reduced-motion:reduce){.nursery-gallery-card,.nursery-gallery-slide{transition:none!important;transform:none!important}}
/* Rich CMS content uses a controlled brand palette and the same styles in preview and editor. */
.rich-tool{border:1px solid rgb(25 59 58 / .14);border-radius:.55rem;background:white;padding:.4rem .65rem;font-weight:700;color:#193b3a}
.rich-tool:hover,.rich-tool:focus-visible{background:#e8f2ed;border-color:#6d9a89}
.rich-content{min-width:0;overflow-wrap:anywhere}
.rich-content :is(h1,h2,h3,h4){margin:1.2em 0 .5em;line-height:1.12;color:#193b3a}
.rich-content h1{font-size:clamp(2rem,4vw,3rem)}
.rich-content h2{font-size:clamp(1.7rem,3vw,2.35rem)}
.rich-content h3{font-size:1.65rem}.rich-content h4{font-size:1.3rem}
.rich-content p{margin:.75rem 0;line-height:1.75}
.rich-content :is(ul,ol){margin:1rem 0;padding-left:1.5rem;list-style-position:outside}
.rich-content ul{list-style-type:disc}.rich-content ol{list-style-type:decimal}
.rich-content :is(ul,ol) :is(ul,ol){margin:.3rem 0}
.rich-content a:not([class]){color:#b83f2d;text-decoration:underline;text-underline-offset:3px}
.rich-content a:focus-visible{outline:2px solid #b83f2d;outline-offset:3px}
.rich-content blockquote{margin:1.5rem 0;padding:1.25rem 1.5rem;border-left:4px solid #e98366;border-radius:0 1rem 1rem 0;background:#f5e9dc;font-family:Georgia,serif;font-size:1.2rem}
.rich-content hr{margin:2rem 0;border:0;border-top:2px solid #dcebd5}
.rich-content :is(img,figure){max-width:100%}
.rich-content figure{margin:1.5rem 0}.rich-content figure img{width:100%;height:auto;border-radius:1.25rem}
.rich-content figcaption{margin-top:.45rem;text-align:center;color:#486158;font-size:.9rem}
.rich-content .cms-image-left{max-width:min(100%,26rem);margin-right:auto}.rich-content .cms-image-center{max-width:min(100%,42rem);margin-inline:auto}.rich-content .cms-image-right{max-width:min(100%,26rem);margin-left:auto}
.rich-content :is(.cms-button-primary,.cms-button-secondary,.cms-button-outline){display:inline-flex;margin:.65rem .5rem .65rem 0;padding:.75rem 1.2rem;border-radius:999px;font-size:.9rem;font-weight:800;text-decoration:none;transition:transform .2s,background-color .2s}
.rich-content :is(.cms-button-primary,.cms-button-secondary,.cms-button-outline):hover{transform:translateY(-2px)}
.rich-content .cms-button-primary{background:#b83f2d;color:white}.rich-content .cms-button-secondary{background:#e8f2ed;color:#193b3a}.rich-content .cms-button-outline{border:2px solid #193b3a;color:#193b3a}
.rich-content [class^="cms-callout-"]{margin:1.5rem 0;padding:1.2rem 1.4rem;border-radius:1.25rem;color:#193b3a}
.rich-content .cms-callout-green{background:#e8f2ed}.rich-content .cms-callout-yellow{background:#fff2c8}.rich-content .cms-callout-peach{background:#f5e9dc}.rich-content .cms-callout-neutral{background:#f1f2ef}
.rich-content .cms-align-center{text-align:center}.rich-content .cms-align-right{text-align:right}.rich-content .cms-align-justify{text-align:justify}
.rich-content .cms-table-wrap{max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
.rich-content table{width:100%;min-width:25rem;border-collapse:collapse;margin:1rem 0}.rich-content :is(td,th){border:1px solid #a2b9aa;padding:.7rem;text-align:left}.rich-content th{background:#e8f2ed}
.rich-insert-dialog{width:min(94vw,34rem);max-height:90dvh;overflow:auto;margin:auto}
@media(prefers-reduced-motion:reduce){.rich-content :is(.cms-button-primary,.cms-button-secondary,.cms-button-outline){transition:none}}
/* Compact status-mode contact form: the dialog itself never becomes a scroll pane. */
.status-contact-result{margin:1rem auto;color:#244b42;font-weight:800}
.status-contact-dialog{position:fixed;inset:0;width:min(96vw,640px);max-width:none;max-height:none;margin:auto;padding:clamp(14px,2.6vh,24px);border:2px solid #244b42;border-radius:26px;background:#fffaf0;color:#244b42;box-shadow:0 22px 70px #172d2880;overflow:visible;box-sizing:border-box;text-align:left;font-family:"Nunito Sans",Arial,sans-serif}
.status-contact-dialog::backdrop{background:rgb(16 46 44 / 76%)}
.status-contact-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:clamp(10px,1.6vh,16px)}
.status-contact-head h2{margin:0;font-size:clamp(1.4rem,3vh,2rem);line-height:1.1;font-family:Georgia,serif}
.status-contact-head p{margin:.25rem 0 0;font-size:.88rem;line-height:1.3;color:#486158}
.status-contact-close{display:grid;flex:none;width:42px;height:42px;place-items:center;border:1px solid #244b4240;border-radius:50%;background:white;color:#244b42;font-size:1.5rem;cursor:pointer;transition:background-color .2s,transform .2s}
.status-contact-close:hover{background:#e8f2ed;transform:rotate(90deg)}
.status-contact-form{display:grid;gap:clamp(7px,1.15vh,12px)}
.status-contact-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(7px,1.15vh,12px)}
.status-contact-field{display:grid;gap:3px;min-width:0}.status-contact-field>label{font-size:.83rem;line-height:1.15;font-weight:800}
.status-optional{font-size:.71rem;font-weight:400;color:#486158}
.status-contact-field :is(input:not([type=checkbox]),textarea,select){box-sizing:border-box;width:100%;height:clamp(34px,5vh,42px);padding:5px 10px;border:1px solid #758c82;border-radius:10px;background:white;color:#244b42;font:inherit;font-size:.92rem;transition:border-color .15s,box-shadow .15s}
.status-contact-field textarea{min-height:clamp(55px,8vh,80px);height:clamp(55px,8vh,80px);resize:none}
.status-contact-field :is(input,select,textarea):hover{border-color:#244b42}
.status-contact-field :is(input,select,textarea):focus-visible,.status-contact-close:focus-visible,.status-contact-submit:focus-visible{outline:3px solid #e98366;outline-offset:2px}
.status-contact-field [aria-invalid="true"]{border-color:#a42d20;background:#fff7f5}
.status-contact-field small:not(:empty){color:#9b2619;font-size:.72rem;line-height:1.1}
.status-contact-consent{display:flex;align-items:flex-start;gap:9px;font-size:.78rem!important;font-weight:600!important;line-height:1.3!important}
.status-contact-consent input{flex:none;width:18px;height:18px;margin:0;accent-color:#b83f2d}
.status-contact-trap{position:absolute;left:-9999px;opacity:0;pointer-events:none}
.status-contact-error-summary{margin:0;color:#9b2619;font-size:.8rem}
.status-contact-submit{display:inline-flex;justify-content:center;align-items:center;min-height:clamp(38px,5vh,46px);width:100%;padding:7px 18px;border:0;border-radius:12px;background:#b83f2d;color:white;font-weight:900;font-size:.95rem;cursor:pointer;box-shadow:0 3px 0 #244b42;transition:transform .2s,background-color .2s,box-shadow .2s}
.status-contact-submit:hover{background:#9d3626;transform:translateY(-2px);box-shadow:0 5px 0 #244b42}
.status-contact-submit:disabled{opacity:.65;cursor:wait;transform:none}
.status-contact-success{text-align:center;padding:10px 3px}.status-contact-success>span{font-size:2.4rem;color:#b83f2d}.status-contact-success h3{font-size:1.7rem;margin:.3rem 0}.status-contact-success p{line-height:1.5}
.status-contact-dialog [hidden]{display:none!important}
@media(max-width:560px){.status-contact-dialog{width:calc(100vw - 16px);padding:12px;border-radius:18px}.status-contact-head p{font-size:.75rem}.status-contact-grid{gap:7px}.status-contact-grid .status-contact-field>label{font-size:.73rem}.status-contact-field :is(input:not([type=checkbox]),select,textarea){font-size:.82rem;padding:4px 7px}.status-contact-consent{font-size:.72rem!important}}
@media(max-width:360px){.status-contact-dialog{padding:9px}.status-contact-grid{grid-template-columns:1fr}.status-contact-field :is(input:not([type=checkbox]),select){height:30px}}
@media(max-height:600px){.status-contact-dialog{padding:9px 15px}.status-contact-head{margin-bottom:5px}.status-contact-form,.status-contact-grid{gap:5px}.status-contact-head p{font-size:.73rem}.status-contact-field :is(input:not([type=checkbox]),select){height:31px}.status-contact-field textarea{height:52px;min-height:52px}.status-contact-submit{min-height:34px}}
@media(prefers-reduced-motion:reduce){.status-contact-close,.status-contact-submit{transition:none!important}}
/* Entire downloadable resource card is interactive, matching the Gallery cards. */
.nursery-resource-card{cursor:pointer;transition:transform .28s ease,box-shadow .28s ease,background-color .28s ease}
@media(hover:hover){.nursery-resource-card:hover{transform:translateY(-5px);box-shadow:0 22px 40px rgb(25 59 58 / .16)}.nursery-resource-card:hover img{transform:scale(1.035)}.nursery-resource-card:hover .nursery-resource-cta{color:#b83f2d;text-decoration:underline}}
.nursery-resource-card:focus-visible{box-shadow:0 22px 40px rgb(25 59 58 / .16);outline:3px solid #e98366;outline-offset:3px}
.nursery-resource-card img{transition:transform .35s ease}
@media(prefers-reduced-motion:reduce){.nursery-resource-card,.nursery-resource-card img{transition:none!important;transform:none!important}}
