@charset "UTF-8";*,*:before,*:after{box-sizing:border-box}html,body{margin:0;padding:0}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}:root{--color-bg: #f7f4ec;--color-bg-alt: #fcfaf5;--color-surface: #ffffff;--color-sage: #8fa58b;--color-sage-soft: #dde6d8;--color-sage-dark: #5f7a5c;--color-leaf: #4a6347;--color-text: #2f3a2e;--color-text-muted: #6b756a;--color-on-dark: #f3efe6;--color-on-dark-muted: #cbd5c6;--color-accent: #c98c7a;--color-accent-hover: #b4755f;--color-accent-soft: #f1ded6;--color-border: #e1dccf;--color-border-soft: #ece8dd;--color-primary: #4a6347;--color-primary-hover: #3a4f38;--color-primary-text: #f7f4ec;--color-error: #b9473a;--color-success: #5f7a5c;--color-warning: #b58a2d;--color-sale: #b9473a;--font-heading: "Cormorant Garamond", "Times New Roman", serif;--font-body: "Nunito Sans", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--radius: 8px;--radius-lg: 18px;--radius-xl: 32px;--shadow-sm: 0 1px 2px rgba(47, 58, 46, .06), 0 2px 8px rgba(47, 58, 46, .05);--shadow-md: 0 6px 24px rgba(47, 58, 46, .1);--page-max: 1200px;--page-pad: 1.25rem;--header-h: 72px;--field-border: var(--color-border);--field-border-focus: var(--color-sage-dark);--field-border-error: var(--color-error);--field-bg: var(--color-surface);--field-text: var(--color-text);--field-label-color: var(--color-text-muted);--field-error-color: var(--color-error);--field-radius: var(--radius);--field-padding-y: .7rem;--field-padding-x: .9rem;--field-font-size: 1rem}body{font-family:var(--font-body);background:var(--color-bg);color:var(--color-text);font-size:17px;line-height:1.65;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}h1,h2,h3,h4{font-family:var(--font-heading);font-weight:500;line-height:1.12;color:var(--color-text);margin:0 0 .6em;letter-spacing:.01em}h1{font-size:clamp(2.2rem,5vw,3.4rem)}h2{font-size:clamp(1.7rem,3.4vw,2.4rem)}h3{font-size:clamp(1.3rem,2.4vw,1.6rem)}p{margin:0 0 1em}a{color:var(--color-sage-dark)}img{max-width:100%;height:auto;display:block}button{font:inherit}.container{width:100%;max-width:var(--page-max);margin-inline:auto;padding-inline:var(--page-pad)}.container--narrow{max-width:820px}.section{padding-block:clamp(2.5rem,6vw,5rem)}.section--alt{background:var(--color-bg-alt)}.section--dark{background:var(--color-leaf);color:var(--color-on-dark)}.section--dark h1,.section--dark h2,.section--dark h3{color:var(--color-on-dark)}.eyebrow{font-family:var(--font-body);font-size:.78rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--color-sage-dark);margin:0 0 .6rem}.section--dark .eyebrow{color:var(--color-on-dark-muted)}.lede{font-size:1.15rem;color:var(--color-text-muted)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.85rem 1.7rem;border:1px solid transparent;border-radius:999px;font-family:var(--font-body);font-size:.82rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;text-decoration:none;cursor:pointer;transition:background .18s ease,color .18s ease,border-color .18s ease,transform .12s ease;line-height:1.2}.btn:active{transform:translateY(1px)}.btn:disabled,.btn[aria-disabled=true]{opacity:.55;cursor:not-allowed}.btn--primary{background:var(--color-primary);color:var(--color-primary-text)}.btn--primary:hover:not(:disabled){background:var(--color-primary-hover)}.btn--accent{background:var(--color-accent);color:#fff}.btn--accent:hover:not(:disabled){background:var(--color-accent-hover)}.btn--light{background:var(--color-bg-alt);color:var(--color-text);border-color:var(--color-border)}.btn--light:hover:not(:disabled){background:#fff}.btn--outline{background:transparent;border-color:currentColor;color:inherit}.btn--outline:hover:not(:disabled){background:#0000000a}.btn--small{padding:.55rem 1.1rem;font-size:.74rem}.btn--block{width:100%}.linklike{background:none;border:0;padding:0;color:var(--color-sage-dark);text-decoration:underline;cursor:pointer;font:inherit}.alert{border-radius:var(--radius);padding:.8rem 1rem;font-size:.95rem;margin-bottom:1rem}.alert--error{background:#f8e5e2;color:var(--color-error)}.alert--success{background:var(--color-sage-soft);color:var(--color-sage-dark)}.alert--info{background:var(--color-accent-soft);color:#7a4a3a}.price{font-weight:700}.price--sale{color:var(--color-sale)}.price--was{text-decoration:line-through;color:var(--color-text-muted);font-weight:400;margin-left:.4rem}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:absolute;left:-999px;top:0;background:var(--color-primary);color:var(--color-primary-text);padding:.6rem 1rem;z-index:1000}.skip-link:focus{left:1rem;top:1rem}.admin-page{padding-block:1.5rem 3rem}.admin-page h1{font-size:2rem;margin-bottom:.3rem}.admin-toolbar{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center;justify-content:space-between;margin:1rem 0 1.25rem}.admin-toolbar__filters{display:flex;flex-wrap:wrap;gap:.6rem;align-items:center}.panel{background:var(--color-surface);border:1px solid var(--color-border-soft);border-radius:var(--radius-lg);padding:1.25rem;box-shadow:var(--shadow-sm)}.panel+.panel{margin-top:1.25rem}.panel h2{font-size:1.35rem;margin-bottom:.9rem}.table-wrap{overflow-x:auto;background:var(--color-surface);border:1px solid var(--color-border-soft);border-radius:var(--radius-lg)}.table{width:100%;border-collapse:collapse;font-size:.95rem}.table th,.table td{text-align:left;padding:.7rem .9rem;border-bottom:1px solid var(--color-border-soft);vertical-align:middle}.table th{font-size:.74rem;letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-muted);background:var(--color-bg-alt)}.table tr:last-child td{border-bottom:0}.table tbody tr:hover td{background:#fbfaf6}.table a{color:var(--color-text);font-weight:600}.table .num{text-align:right;font-variant-numeric:tabular-nums}.badge{display:inline-block;padding:.15rem .6rem;border-radius:999px;font-size:.74rem;font-weight:700;letter-spacing:.04em;background:var(--color-bg);color:var(--color-text-muted);white-space:nowrap}.badge--green{background:var(--color-sage-soft);color:var(--color-sage-dark)}.badge--amber{background:#f6ebd0;color:#8a6a1e}.badge--red{background:#f8e5e2;color:var(--color-error)}.badge--blue{background:#dfe8f3;color:#335b86}.badge--grey{background:#ebe9e3;color:#6b756a}.form-grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.form-grid--2{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid .span-2{grid-column:1/-1}.form-actions{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center;margin-top:1.25rem}.field-group{display:flex;flex-direction:column;gap:.25rem}.field-group__label{font-size:.875rem;font-weight:600;color:var(--field-label-color)}.field-group__hint{font-size:.8rem;color:var(--color-text-muted)}.field-group select,.field-group textarea,.field-group input:not([type=checkbox]):not([type=radio]){width:100%;border:1px solid var(--field-border);background:var(--field-bg);color:var(--field-text);border-radius:var(--field-radius);padding:var(--field-padding-y) var(--field-padding-x);font:inherit;font-size:var(--field-font-size);outline:none;transition:border-color .15s ease}.field-group select:focus,.field-group textarea:focus,.field-group input:focus{border-color:var(--field-border-focus)}.field-group textarea{min-height:110px;resize:vertical}.check{display:flex;align-items:center;gap:.55rem;font-size:.95rem;cursor:pointer}.check input{width:1.1rem;height:1.1rem;accent-color:var(--color-sage-dark)}.stat-grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}.stat{background:var(--color-surface);border:1px solid var(--color-border-soft);border-radius:var(--radius-lg);padding:1rem 1.1rem}.stat__label{font-size:.74rem;letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-muted)}.stat__value{font-family:var(--font-heading);font-size:2rem;line-height:1.1;margin-top:.25rem}.pager{display:flex;gap:.5rem;align-items:center;justify-content:flex-end;margin-top:1rem;font-size:.9rem;color:var(--color-text-muted)}.empty{padding:2rem 1rem;text-align:center;color:var(--color-text-muted)}
