:root{--color-paper:#f7f5ef;--color-surface:#efeee5;--color-ink:#23305e;--color-muted:#4b5470;--color-green:#36582f;--color-leaf:#7fae4b;--color-orange:#e89b3c;--color-sky:#aac9e6;--color-rule:#d3d6c9;--color-focus:#23305e;--color-error:#913728;--font-display:"Fraunces", "Iowan Old Style", Georgia, serif;--font-body:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--space-xs:.5rem;--space-sm:1rem;--space-md:1.5rem;--space-lg:2rem;--space-xl:3rem;--space-2xl:4rem;--space-3xl:6rem;--ease-out:cubic-bezier(.16, 1, .3, 1);--dur-short:.15s;--radius-control:4px;--navy:#23305e;--navy-deep:#1a2547;--orange:#e89b3c;--orange-soft:#f3b969;--leaf:#7fae4b;--leaf-deep:#5d8a33;--sky:#aac9e6;--sky-pale:#dce9f5;--paper:#f7f5ef;--white:#fff;--ink:#22293d;--ink-soft:#4b5470;--measure:62ch;--radius:12px;--shadow:0 2px 10px #23305e14, 0 10px 30px #23305e0f}*{box-sizing:border-box}html{scroll-behavior:smooth}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body{font-family:var(--font-body);color:var(--ink);background:var(--paper);-webkit-font-smoothing:antialiased;margin:0;font-size:1.0625rem;line-height:1.65}h1,h2,h3{font-family:var(--font-display);color:var(--navy);margin:0 0 .5em;font-weight:600;line-height:1.15}h1{font-size:clamp(2.1rem,5vw,3.25rem)}p{max-width:var(--measure);margin:0 0 1em}a{color:var(--leaf-deep);text-underline-offset:3px;text-decoration-thickness:1.5px}a:hover{color:var(--navy)}img,svg{max-width:100%;height:auto}.wrap{width:min(1080px,100% - 2.5rem);margin-inline:auto}.section{padding-block:clamp(3rem,7vw,5rem)}.section--tint{background:var(--sky-pale)}.eyebrow{letter-spacing:.14em;text-transform:uppercase;color:var(--leaf-deep);align-items:center;gap:.6rem;margin-bottom:.75rem;font-size:.8rem;font-weight:700;display:inline-flex}.eyebrow:before{content:"";background:var(--leaf);border-radius:3px;width:2.2rem;height:.55rem}.button{border:2px solid #0000;border-radius:999px;padding:.7rem 1.4rem;font-weight:700;text-decoration:none;transition:background-color .15s,color .15s;display:inline-block}.button--outline{border-color:var(--navy);color:var(--navy)}.card-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.5rem;margin-top:2rem;display:grid}.card{background:var(--white);border-radius:var(--radius);box-shadow:var(--shadow);border-top:6px solid var(--leaf);padding:1.75rem}.card h3{margin-top:.25rem}.card p{color:var(--ink-soft);margin-bottom:0}.skip-link{background:var(--navy);color:var(--white);z-index:100;padding:.6rem 1rem;position:absolute;top:0;left:-9999px}.skip-link:focus{top:.5rem;left:.5rem}:root{--leaf-deep:var(--color-green);--ink:var(--color-ink);--ink-soft:var(--color-muted)}html,body{overflow-x:clip}body{color:var(--color-ink);background:var(--color-paper)}[hidden]{display:none!important}button,input{font:inherit}h1,h2,h3{letter-spacing:-.025em;overflow-wrap:anywhere;min-width:0;font-style:normal}h1{font-size:clamp(2.5rem,5.2vw,4.5rem);line-height:1.06}h2{font-size:clamp(1.65rem,3vw,2.5rem)}h3{font-size:1.5rem}p{max-width:60ch}a{color:var(--color-green)}a,button{-webkit-tap-highlight-color:transparent}:focus-visible{outline:3px solid var(--color-focus);outline-offset:5px}[id]{scroll-margin-top:var(--space-lg)}.wrap{width:min(1120px,100% - 3rem)}.location{color:var(--color-green);margin-bottom:var(--space-md);font-size:.875rem}.lead{color:var(--color-muted);max-width:48ch;font-size:clamp(1.125rem,2vw,1.25rem);line-height:1.6}.button{justify-content:center;align-items:center;gap:var(--space-md);border-radius:var(--radius-control);min-height:48px;font:600 1rem/1.4 var(--font-body);cursor:pointer;white-space:nowrap;padding:.7rem 1.15rem;transition:none;display:inline-flex}.button--primary{background:var(--color-ink);color:var(--color-paper)}.button--primary:hover{background:var(--color-green);color:var(--color-paper)}.button--outline{border:1px solid var(--color-ink)}.button--outline:hover{background:var(--color-ink);color:var(--color-paper)}.button:active{transform:translateY(1px)}.button:disabled{cursor:wait;opacity:.7}.text-link{align-items:center;gap:var(--space-sm);text-underline-offset:5px;min-height:44px;font-weight:600;display:inline-flex}.actions{align-items:center;gap:var(--space-xs) var(--space-md);margin-top:var(--space-md);flex-wrap:wrap;display:flex}.site-header{border-bottom:1px solid var(--color-rule)}.header-bar{justify-content:space-between;align-items:center;gap:var(--space-lg);padding-block:var(--space-md);display:flex}.brand{color:inherit;flex-shrink:0;align-items:center;gap:.875rem;text-decoration:none;display:inline-flex}.brand svg{flex-shrink:0}.brand-name{font:600 1.375rem/1.1 var(--font-display);letter-spacing:-.025em}.brand-sub{font:400 .8125rem/1.7 var(--font-body);letter-spacing:.12em;text-transform:uppercase;display:block}.site-header nav ul{gap:var(--space-sm);margin:0;padding:0;list-style:none;display:flex}.site-header nav a{min-height:44px;color:var(--color-ink);justify-content:center;align-items:center;padding:.4rem .65rem;font-size:1rem;text-decoration:none;display:flex}.site-header nav a:hover,.site-header nav a[aria-current]{text-decoration:underline;-webkit-text-decoration-color:var(--color-green);text-decoration-color:var(--color-green);text-underline-offset:8px}.site-header nav a[aria-current]{font-weight:700}.home-intro{align-items:center;gap:var(--space-lg);padding-block:var(--space-2xl);grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);display:grid}.botanical{min-width:0}.art-caption{text-align:center;font:400 .875rem var(--font-body);letter-spacing:.14em;color:var(--color-green);margin:0}.offerings{padding-block:var(--space-md) var(--space-2xl)}.section-heading{justify-content:space-between;align-items:baseline;gap:var(--space-lg);display:flex}.section-heading p{max-width:34ch;color:var(--color-muted)}.plant-links{column-gap:var(--space-xl);margin-top:var(--space-sm);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.plant-link{border-block:1px solid var(--color-rule);padding-block:var(--space-md);text-decoration:none;display:block}.plant-link h3{justify-content:space-between;gap:var(--space-sm);color:var(--color-green);display:flex}.plant-link p{color:var(--color-muted);margin:0}.plant-link:hover h3{text-underline-offset:5px;text-decoration:underline}.split{gap:var(--space-xl);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.consult-feature{background:var(--color-surface);padding-block:var(--space-xl)}.consult-feature .location{margin-bottom:var(--space-sm)}.visit-line{justify-content:space-between;align-items:center;gap:var(--space-xl);padding-block:var(--space-xl);display:flex}.visit-line p{max-width:48ch;margin:0}.visit-line .button{flex-shrink:0}.page-intro{padding-block:var(--space-xl) var(--space-lg)}.page-intro h1{max-width:20ch}.section-nav{gap:var(--space-xs) var(--space-md);padding-top:var(--space-sm);flex-wrap:wrap;display:flex}.section-nav a{white-space:nowrap;align-items:center;min-height:44px;display:inline-flex}.service-directory{padding-bottom:var(--space-lg)}.service-row{gap:var(--space-xl);border-top:1px solid var(--color-rule);padding-block:var(--space-xl);grid-template-columns:minmax(0,.8fr) minmax(0,1.3fr);display:grid}.service-row p{color:var(--color-muted)}.enquiry-guide{padding-block:var(--space-lg) var(--space-xl)}.enquiry-guide h2{margin-bottom:var(--space-lg)}.about-intro{align-items:center;gap:var(--space-xl);padding-bottom:var(--space-xl);grid-template-columns:minmax(0,1fr) auto;display:grid}.about-mark{padding-inline:var(--space-xl)}.about-story .service-row{padding-bottom:var(--space-sm)}.contact-layout{gap:var(--space-xl);padding-bottom:var(--space-xl);grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);align-items:start;display:grid}.contact-card{background:var(--color-surface);padding:var(--space-lg);min-width:0}.contact-card h2{font-size:1.75rem}.contact-guide{padding-top:var(--space-sm)}.contact-guide h2,.contact-details h2{font-size:1.5rem}.contact-guide ul{margin-block:var(--space-sm);padding-left:1.2rem}.contact-guide li{margin-block:var(--space-sm)}.status{margin:var(--space-sm) 0 0;font-size:.9375rem}.status:empty{display:none}.status[data-error]{color:var(--color-error)}.contact-lines{gap:var(--space-sm);margin-top:var(--space-md);display:grid}.contact-action{padding:var(--space-sm);border:1px solid var(--color-rule);min-height:48px;text-decoration:none;display:block}.contact-action strong{text-underline-offset:4px;text-decoration:underline;display:block}.contact-action span{overflow-wrap:anywhere;color:var(--color-muted);margin-top:.25rem;font-size:.9375rem;display:block}.contact-action:hover{border-color:var(--color-green)}.contact-details{gap:var(--space-xl);border-top:1px solid var(--color-rule);padding-block:var(--space-lg) var(--space-xl);grid-template-columns:repeat(2,minmax(0,1fr));font-size:.9375rem;display:grid}.interest-note{color:var(--color-green)}.notice{border-left:2px solid var(--color-ink);padding-left:var(--space-sm)}#turnstile-slot:not(:empty){margin-top:var(--space-sm)}.site-footer{background:var(--color-ink);color:var(--color-paper);padding-block:var(--space-lg) var(--space-md)}.footer-main{justify-content:space-between;align-items:center;gap:var(--space-lg);display:flex}.footer-main p{font-family:var(--font-display);margin:0}.footer-main p span{font:.875rem var(--font-body);color:var(--color-sky)}.site-footer nav{gap:var(--space-md);display:flex}.site-footer a{color:var(--color-paper)}.site-footer nav a{align-items:center;min-height:44px;display:inline-flex}.site-footer :focus-visible{outline-color:var(--color-orange)}.footer-bottom{justify-content:space-between;align-items:center;gap:var(--space-xs) var(--space-lg);margin-top:var(--space-lg);padding-top:var(--space-sm);border-top:1px solid var(--color-muted);flex-wrap:wrap;font-size:.8125rem;display:flex}.footer-bottom p{margin:0}.footer-bottom a{align-items:center;min-height:44px;display:inline-flex}@media (width<=759px){.wrap{width:calc(100% - 2.5rem)}.header-bar{gap:var(--space-xs);padding-block:var(--space-sm) 0;flex-wrap:wrap}.site-header nav{width:100%}.site-header nav ul{grid-template-columns:repeat(3,minmax(0,1fr));gap:0;display:grid}.site-header nav a{padding-inline:.125rem;font-size:.9375rem}.home-intro{padding-block:var(--space-lg);gap:var(--space-sm);grid-template-columns:minmax(0,1fr)}.home-intro h1{font-size:clamp(2.35rem,8.5vw,3.6rem)}.botanical{justify-content:center;align-items:center;gap:var(--space-sm);display:flex}.botanical svg{width:210px;max-width:65%;height:158px}.art-caption{letter-spacing:.06em;font-size:.75rem}.section-heading{display:block}.section-heading p{max-width:none}.plant-links,.split,.service-row,.contact-layout,.contact-details{gap:var(--space-md);grid-template-columns:minmax(0,1fr)}.plant-links{gap:0}.plant-link+.plant-link{border-top:0}.offerings{padding-bottom:var(--space-lg)}.visit-line{align-items:start;gap:var(--space-md);padding-block:var(--space-lg);flex-direction:column}.page-intro,.service-row{padding-block:var(--space-lg)}.service-row h2{margin:0}.about-intro{gap:var(--space-sm);grid-template-columns:minmax(0,1fr)}.about-mark{display:none}.contact-card{padding:var(--space-md) var(--space-sm)}.contact-layout{gap:var(--space-lg)}.footer-main{align-items:start;gap:var(--space-md);flex-wrap:wrap}.footer-main>p{width:100%}.footer-bottom{display:block}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important}}::selection{background:var(--color-sky);color:var(--color-ink)}input,textarea,select{font:inherit;color:var(--color-ink);caret-color:var(--color-green)}input::placeholder,textarea::placeholder{color:var(--color-muted);opacity:1}.field{gap:var(--space-xs);min-width:0;display:grid}.field label{font-weight:600}.field input,.field textarea,.field select{border:1px solid var(--color-muted);border-radius:var(--radius-control);background:var(--color-paper);width:100%;min-width:0;min-height:48px;padding:.65rem .75rem}.field textarea{resize:vertical}.field [aria-invalid=true]{border:2px solid var(--color-error)}.field-help,.list-meta{color:var(--color-muted);font-size:.9375rem}.field-help{margin:0}.plain-text{white-space:pre-line;overflow-wrap:anywhere}.catalogue{padding-bottom:var(--space-lg)}.catalogue-filter{align-items:end;gap:var(--space-sm);padding-bottom:var(--space-md);flex-wrap:wrap;display:flex}.catalogue-filter .field{flex:220px}.empty-state{padding:var(--space-lg);background:var(--color-surface)}.empty-state>:last-child{margin-bottom:0}.plant-category{margin-top:var(--space-xl)}.inventory-list,.event-list,.admin-list{margin:0;padding:0;list-style:none}.inventory-list>li,.admin-list>li{justify-content:space-between;align-items:start;gap:var(--space-lg);padding-block:var(--space-md);border-top:1px solid var(--color-rule);display:flex}.inventory-list>li>div,.admin-list>li>div{min-width:0}.inventory-list p{margin-bottom:.5rem}.inventory-list .text-link,.admin-list .button{flex-shrink:0}.plant-summary{align-items:start;gap:var(--space-md);display:flex}.plant-summary>div{min-width:0}.plant-photo{aspect-ratio:4/3;object-fit:contain;background:var(--color-surface);flex-shrink:0;width:240px;max-width:100%;height:auto}.photo-field{min-width:0;padding:var(--space-md);border:1px solid var(--color-rule);gap:var(--space-sm);margin:0;display:grid}.photo-field legend{padding-inline:var(--space-xs);font-weight:600}.photo-preview{aspect-ratio:4/3;object-fit:contain;background:var(--color-surface);width:100%;max-width:480px;height:auto}.photo-field button{justify-self:start}.photo-field [hidden]{display:none}#photo-status[data-error]{color:var(--color-error)}.botanical-name{color:var(--color-muted)}.event-list>li{gap:var(--space-xl);border-top:1px solid var(--color-rule);padding-block:var(--space-lg);grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);display:grid}.event-date{color:var(--color-green);font-variant-numeric:tabular-nums;font-weight:600}.event-date p{margin-top:.5rem;font-weight:400}.faq-list details{border-top:1px solid var(--color-rule);padding-block:var(--space-md)}.faq-list details:last-child{border-bottom:1px solid var(--color-rule)}.faq-list summary{cursor:pointer;min-height:44px;font-size:1.125rem;font-weight:600}.faq-list details>div{margin-top:var(--space-sm)}.faq-list details p{margin-bottom:0}.admin-page h1,.admin-page h2,.admin-page h3{font-family:var(--font-body);letter-spacing:-.02em}.admin-page h1{font-size:clamp(2rem,4vw,2.75rem)}.admin-page h2{font-size:1.25rem}.admin-bar{justify-content:space-between;align-items:center;gap:var(--space-md);padding-block:var(--space-sm);display:flex}.admin-brand{color:var(--color-ink);font-weight:700;text-decoration:none}.admin-bar .actions{margin:0}.admin-nav{gap:var(--space-md);margin-block:var(--space-md);border-bottom:1px solid var(--color-rule);display:flex}.admin-nav a{min-height:48px;padding:var(--space-xs);align-items:center;text-decoration:none;display:inline-flex}.admin-nav a[aria-current]{border-bottom:2px solid var(--color-green);font-weight:700}.admin-main{padding-block:var(--space-sm) var(--space-2xl)}.admin-main .section-heading{align-items:start}.admin-main .section-heading p{max-width:65ch}.admin-main .section-heading .button{flex-shrink:0}.admin-list h2{margin:0}.admin-list p{color:var(--color-muted);margin:.4rem 0 0;font-size:.9375rem}.editor-form{gap:var(--space-md);max-width:760px;margin-top:var(--space-lg);display:grid}.editor-form .split{gap:var(--space-md)}.editor-form .field--short{max-width:360px}.editor-form .editor-actions{margin:0}.editor-form :disabled{opacity:.7;cursor:wait}.editor-form .status{margin:0}@media (width>=760px) and (width<=1020px){.header-bar{gap:var(--space-xs);flex-wrap:wrap}.site-header nav{width:100%}.site-header nav ul{justify-content:space-between}}@media (width<=759px){.site-footer nav{gap:var(--space-xs) var(--space-md);flex-wrap:wrap}.event-list>li{gap:var(--space-sm);grid-template-columns:minmax(0,1fr)}.admin-bar{gap:var(--space-xs);flex-wrap:wrap}.admin-bar .actions{gap:var(--space-md)}.admin-main .section-heading>.button{margin-bottom:var(--space-sm)}.inventory-list>li{gap:var(--space-xs);flex-direction:column}.plant-summary{gap:var(--space-sm);flex-direction:column;width:100%}.plant-photo{width:100%;max-width:480px}.editor-actions .button{white-space:normal}.empty-state{padding:var(--space-md)}.empty-state .button{white-space:normal}}
