/* Leslie Stock Desk: theme.css (Maggie redesign, full replacement)
   Scope: body.theme-stock-desk. No inline styles anywhere. */
@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@500;600;700&family=Fraunces:opsz,wght@9..144,500;9..144,700&family=IBM+Plex+Mono:wght@400;600&family=Source+Sans+3:ital,wght@0,400;0,600;0,700;1,400&display=swap');

:root{
  --cream:#F5F0E8;--cream-dim:#E8E0D4;--paper:#FFFCF7;
  --teal:#2A9D8F;--teal-ink:#17675E;--teal-deep:#1A5F57;--teal-mist:rgba(42,157,143,.14);
  --charcoal:#1C2430;--charcoal-lift:#2A3444;--ink:#1C2430;--mute:#4F5D6B;
  --amber:#E9C46A;--amber-soft:#F0D48A;--amber-ink:#5A4410;
  --line:rgba(28,36,48,.14);--line-night:rgba(245,240,232,.18);
  --r:10px;--r-lg:16px;--shadow:0 12px 32px rgba(28,36,48,.16);--shadow-s:0 4px 18px rgba(28,36,48,.08);
  --f-display:"Barlow Condensed","Arial Narrow",sans-serif;--f-serif:"Fraunces",Georgia,serif;
  --f-sans:"Source Sans 3",system-ui,sans-serif;--f-mono:"IBM Plex Mono",ui-monospace,monospace;
  --max:1160px;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
body.theme-stock-desk{margin:0;min-height:100vh;color:var(--ink);font-family:var(--f-sans);font-size:1.05rem;line-height:1.65;
  background:radial-gradient(1100px 480px at 8% -8%,rgba(42,157,143,.09),transparent 55%),radial-gradient(900px 420px at 100% 0%,rgba(233,196,106,.1),transparent 50%),var(--cream);-webkit-font-smoothing:antialiased}
.theme-stock-desk img{max-width:100%;height:auto;display:block}
.theme-stock-desk a{color:var(--teal-ink);text-underline-offset:3px}
.theme-stock-desk a:hover{color:var(--teal-deep)}
.theme-stock-desk :focus-visible{outline:3px solid var(--amber);outline-offset:2px}
.theme-stock-desk h1,.theme-stock-desk h2,.theme-stock-desk h3{font-family:var(--f-serif);line-height:1.15;margin:0 0 .5em;color:var(--charcoal)}
.theme-stock-desk h1{font-size:clamp(2.2rem,5vw,3.6rem)}
.theme-stock-desk h2{font-size:clamp(1.5rem,3vw,2.1rem)}
.theme-stock-desk h3{font-size:1.2rem}
.theme-stock-desk p{margin:0 0 1em}
.skip-link{position:absolute;left:-999px;top:0;background:var(--amber);color:var(--charcoal);padding:.5rem 1rem;z-index:50}
.skip-link:focus{left:1rem}

/* ---------- chrome ---------- */
.desk-chrome{background:var(--charcoal);color:var(--cream)}
.desk-chrome-inner{max-width:var(--max);margin:0 auto;padding:1rem 1.25rem;display:flex;gap:1.5rem;align-items:center;justify-content:space-between;flex-wrap:wrap}
.brand-lockup{display:flex;gap:.75rem;align-items:center}
.avatar-face{width:44px;height:44px;border-radius:50%;background:var(--teal);display:grid;place-items:center;font-family:var(--f-display);font-weight:700;font-size:1.4rem;color:var(--charcoal)}
.brand-name{margin:0;font-family:var(--f-display);font-size:1.4rem;letter-spacing:.04em;text-transform:uppercase;color:var(--cream)}
.brand-tag{margin:0;font-family:var(--f-mono);font-size:.75rem;color:var(--amber-soft)}
.desk-nav{display:flex;flex-wrap:wrap;gap:.25rem .9rem}
.desk-nav a{color:var(--cream);text-decoration:none;font-family:var(--f-display);font-size:1.05rem;letter-spacing:.05em;text-transform:uppercase;padding:.2rem 0;border-bottom:2px solid transparent}
.desk-nav a:hover{color:var(--amber);border-bottom-color:var(--amber)}
.film-strip{background:repeating-linear-gradient(90deg,var(--charcoal-lift) 0 14px,var(--charcoal) 14px 22px);border-top:1px solid var(--line-night);padding:.35rem 1.25rem;font-family:var(--f-mono);font-size:.75rem;color:var(--cream);display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap}
.film-strip .film-amber{color:var(--amber)}
.desk-page{max-width:var(--max);margin:0 auto;padding:2rem 1.25rem 3rem}
.desk-footer{background:var(--charcoal);color:var(--cream);margin-top:2rem}
.desk-footer-inner{max-width:var(--max);margin:0 auto;padding:2rem 1.25rem;display:grid;grid-template-columns:2fr 1fr;gap:2rem}
.desk-footer p{color:var(--cream-dim)}
.footer-brand{font-family:var(--f-display);font-size:1.3rem;text-transform:uppercase;letter-spacing:.05em;color:var(--cream)!important}
.footer-links{display:flex;flex-direction:column;gap:.4rem}
.footer-links a{color:var(--amber-soft)}
.footer-links a:hover{color:var(--amber)}

/* ---------- buttons (contrast fixed) ---------- */
.theme-stock-desk .btn,.theme-stock-desk .keel-form button,.theme-stock-desk .keel-form [type=submit]{display:inline-flex;align-items:center;gap:.4rem;padding:.7rem 1.2rem;border-radius:999px;font-family:var(--f-display);font-size:1.1rem;letter-spacing:.05em;text-transform:uppercase;text-decoration:none;font-weight:700;border:2px solid transparent;cursor:pointer;transition:transform .15s,background .15s}
.theme-stock-desk .btn:hover{transform:translateY(-1px)}
/* amber: charcoal label, 10.9:1 */
.theme-stock-desk .btn-amber,.theme-stock-desk .keel-form button,.theme-stock-desk .keel-form [type=submit]{background:var(--amber);color:var(--charcoal);border-color:var(--amber)}
.theme-stock-desk .btn-amber:hover{background:var(--amber-soft);color:var(--charcoal)}
/* teal solid: cream on deep teal, 7:1 */
.theme-stock-desk .btn-teal{background:var(--teal-deep);color:var(--paper);border-color:var(--teal-deep)}
.theme-stock-desk .btn-teal:hover{background:var(--charcoal);color:var(--paper)}
/* ghost on light surfaces: charcoal outline + label */
.theme-stock-desk .btn-ghost{background:transparent;color:var(--charcoal);border-color:var(--charcoal)}
.theme-stock-desk .btn-ghost:hover{background:var(--charcoal);color:var(--cream)}
/* ghost on dark surfaces: cream outline + label (fixes teal-on-teal) */
.theme-stock-desk .is-night .btn-ghost,.theme-stock-desk .panel-night .btn-ghost,.theme-stock-desk .hero-night .btn-ghost,.theme-stock-desk .desk-footer .btn-ghost{color:var(--cream);border-color:var(--cream)}
.theme-stock-desk .is-night .btn-ghost:hover,.theme-stock-desk .panel-night .btn-ghost:hover,.theme-stock-desk .hero-night .btn-ghost:hover{background:var(--cream);color:var(--charcoal)}
.btn-row{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.25rem}

/* ---------- shared bits ---------- */
.kicker{font-family:var(--f-mono);font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;color:var(--teal-ink);margin-bottom:.5rem}
.is-night .kicker,.panel-night .kicker{color:var(--amber)}
.lead{font-size:1.2rem;color:var(--ink)}
.panel{background:var(--paper);border:1px solid var(--line);border-radius:var(--r-lg);padding:1.5rem;box-shadow:var(--shadow-s);margin:0 0 1.5rem}
.panel-night,.is-night{background:var(--charcoal);color:var(--cream);border-color:var(--charcoal)}
.panel-night h2,.panel-night h3,.is-night h2,.is-night h3{color:var(--cream)}
.panel-night a:not(.btn),.is-night a:not(.btn){color:var(--amber-soft)}
.chip{display:inline-block;font-family:var(--f-mono);font-size:.75rem;padding:.15rem .55rem;border-radius:999px;background:var(--cream-dim);color:var(--charcoal);margin:.15rem .25rem .15rem 0}
.chip-free{background:var(--teal-mist);color:var(--teal-deep)}
.chip-paid{background:var(--charcoal);color:var(--cream)}
.chip-amber{background:var(--amber);color:var(--charcoal)}
/* lists: one marker only (fixes double bullets) */
.theme-stock-desk .plain-list,.theme-stock-desk .check-list,.theme-stock-desk .board-list{list-style:none;margin:0;padding:0}
.theme-stock-desk .check-list li{position:relative;padding:.35rem 0 .35rem 1.9rem;border-bottom:1px dashed var(--line)}
.theme-stock-desk .check-list li:last-child{border-bottom:0}
.theme-stock-desk .check-list li::before{content:"";position:absolute;left:0;top:.6rem;width:1.1rem;height:1.1rem;border:2px solid var(--teal-deep);border-radius:3px;background:var(--paper)}
.theme-stock-desk .check-list li::marker{content:none}

/* ---------- contact-sheet photo grid ---------- */
.sheet{background:var(--charcoal);border-radius:var(--r-lg);padding:1rem;box-shadow:var(--shadow)}
.sheet-head{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;font-family:var(--f-mono);font-size:.78rem;color:var(--amber);padding:0 .25rem .75rem}
.sheet-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem;margin:0;padding:0;list-style:none}
.frame{margin:0;background:var(--paper);padding:.5rem .5rem .6rem;border-radius:4px;position:relative}
.frame img{width:100%;aspect-ratio:3/2;object-fit:cover;border-radius:2px}
.frame figcaption{font-family:var(--f-mono);font-size:.7rem;line-height:1.4;color:var(--mute);margin-top:.45rem}
.frame figcaption strong{display:block;font-family:var(--f-sans);font-size:.88rem;color:var(--charcoal)}
.frame-no{position:absolute;top:.85rem;left:.85rem;background:var(--charcoal);color:var(--amber);font-family:var(--f-display);font-weight:700;padding:0 .4rem;border-radius:3px;font-size:.9rem}
.frame.is-keeper{outline:3px solid var(--amber);outline-offset:-3px}
.frame.is-keeper::after{content:"KEEPER";position:absolute;top:.85rem;right:.85rem;background:var(--amber);color:var(--charcoal);font-family:var(--f-display);font-weight:700;font-size:.8rem;padding:0 .4rem;border-radius:3px}
.frame-license{display:block;color:var(--teal-ink)}

/* ---------- HOME: asymmetric ---------- */
.home-hero{display:grid;grid-template-columns:1.35fr 1fr;gap:2rem;align-items:center;margin-bottom:2.5rem}
.home-hero .hero-photo{transform:rotate(1.5deg);background:var(--paper);padding:.6rem .6rem 2.2rem;box-shadow:var(--shadow);border-radius:4px}
.home-hero .hero-photo figcaption{font-family:var(--f-mono);font-size:.72rem;color:var(--mute);margin-top:.5rem}
.home-split{display:grid;grid-template-columns:1.6fr 1fr;gap:2rem;align-items:start;margin-bottom:2.5rem}
.nope-wall{background:var(--charcoal);color:var(--cream);border-radius:var(--r-lg);padding:1.5rem;transform:rotate(-.6deg)}
.nope-wall h2{color:var(--amber)}
.nope-list{list-style:none;margin:0;padding:0;display:grid;gap:.6rem}
.nope-list li{background:var(--charcoal-lift);border-left:4px solid var(--amber);padding:.6rem .8rem;border-radius:4px}
.nope-list li strong{display:block;font-family:var(--f-display);text-transform:uppercase;letter-spacing:.04em;color:var(--amber-soft)}
.nope-list li span{font-size:.95rem;color:var(--cream-dim)}
.home-cta{display:grid;grid-template-columns:2fr 1fr;gap:1.5rem;align-items:center;background:var(--teal-deep);color:var(--paper);border-radius:var(--r-lg);padding:2rem}
.home-cta h2{color:var(--paper)}
.home-cta p{color:var(--cream)}
.home-cta .btn-ghost{color:var(--paper);border-color:var(--paper)}
.home-cta .btn-ghost:hover{background:var(--paper);color:var(--teal-deep)}

/* ---------- LIBRARIES: board + loupe catalog ---------- */
.lib-hero{border-bottom:3px double var(--charcoal);width:100%;max-width:none;padding:0 0 1.5rem;margin:0 0 2rem;text-align:left}
.page-libraries .lib-hero h1,.page-libraries .lib-hero .lead{max-width:none}
.lib-layout{display:grid;grid-template-columns:260px 1fr;gap:2rem;align-items:start}
.lib-board{position:sticky;top:1rem;background:var(--charcoal);color:var(--cream);border-radius:var(--r-lg);padding:1.25rem}
.lib-board h2,.lib-board h3{color:var(--amber);font-family:var(--f-display);text-transform:uppercase;letter-spacing:.05em}
.board-list li{display:flex;justify-content:space-between;gap:.5rem;padding:.35rem 0;border-bottom:1px solid var(--line-night);font-family:var(--f-mono);font-size:.82rem}
.board-list li em{font-style:normal;color:var(--teal);}
.board-list li.is-paid em{color:var(--amber)}
.loupe-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.25rem}
.loupe-card{background:var(--paper);border:1px solid var(--line);border-radius:var(--r-lg);padding:1.25rem 1.25rem 1.25rem 4.2rem;position:relative;box-shadow:var(--shadow-s)}
.loupe-card::before{content:attr(data-lane);position:absolute;left:1rem;top:1.15rem;width:2.4rem;height:2.4rem;border-radius:50%;border:3px solid var(--teal-deep);display:grid;place-items:center;font-family:var(--f-display);font-weight:700;font-size:.8rem;color:var(--teal-deep);background:var(--teal-mist)}
.loupe-card.is-wide{grid-column:1/-1}
.loupe-card.is-amber{border-top:4px solid var(--amber)}
.loupe-card.is-deep{border-top:4px solid var(--teal-deep)}

/* ---------- CONTACT SHEET: film strip ---------- */
.film-hero{text-align:center;max-width:760px;margin:0 auto 2rem}
.filmstrip{background:var(--charcoal);padding:1.6rem 0;border-radius:6px;position:relative;overflow-x:auto;
  background-image:radial-gradient(circle,var(--cream) 0 3px,transparent 3.5px),radial-gradient(circle,var(--cream) 0 3px,transparent 3.5px);
  background-size:22px 100%,22px 100%;background-position:0 -45%,0 145%;background-repeat:repeat-x}
.filmstrip-track{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);gap:.6rem;padding:0 .8rem;list-style:none;margin:0;counter-reset:frame}
.film-frame{background:var(--paper);border-radius:3px;padding:1rem;counter-increment:frame;position:relative;min-height:220px}
.film-frame::before{content:counter(frame,decimal-leading-zero) "A";font-family:var(--f-display);font-weight:700;color:var(--amber-ink);background:var(--amber);padding:0 .4rem;border-radius:3px;font-size:.9rem;display:inline-block;margin-bottom:.5rem}
.film-frame h3{font-size:1.1rem}
.film-frame p{font-size:.95rem;margin:0}
.film-frame.is-keeper{outline:3px solid var(--amber);outline-offset:-3px}
.film-below{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-top:2rem}
.amber-slab{background:var(--amber);color:var(--charcoal);border-radius:var(--r-lg);padding:1.5rem}
.amber-slab h2,.amber-slab p,.amber-slab a:not(.btn){color:var(--charcoal)}
.amber-slab .btn-ghost{color:var(--charcoal);border-color:var(--charcoal)}
.amber-slab .btn-teal{background:var(--charcoal);border-color:var(--charcoal);color:var(--amber)}

/* ---------- ABOUT: magazine spread ---------- */
.mag-spread{display:grid;grid-template-columns:1fr 1fr;gap:0;background:var(--paper);border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--shadow);margin-bottom:2rem}
.mag-portrait{margin:0;background:var(--teal-deep);display:flex;align-items:flex-end}
.mag-portrait img{width:100%;height:100%;object-fit:cover;min-height:420px}
.mag-cover{padding:2.5rem 2rem;display:flex;flex-direction:column;justify-content:center}
.mag-cover .issue{font-family:var(--f-mono);font-size:.78rem;color:var(--teal-ink);letter-spacing:.1em;text-transform:uppercase}
.pull-quote{font-family:var(--f-serif);font-size:clamp(1.5rem,3vw,2.2rem);line-height:1.2;color:var(--charcoal);border-left:6px solid var(--amber);padding:.25rem 0 .25rem 1.25rem;margin:2rem 0}
.pull-quote cite{display:block;font-family:var(--f-mono);font-style:normal;font-size:.8rem;color:var(--mute);margin-top:.6rem}
.mag-columns{column-count:2;column-gap:2rem;column-rule:1px solid var(--line)}
.mag-columns p:first-of-type::first-letter{font-family:var(--f-serif);font-size:3.4rem;float:left;line-height:.9;padding:.2rem .5rem 0 0;color:var(--teal-deep)}
.mag-columns h3{break-after:avoid}
.mag-columns p,.mag-columns h3{break-inside:avoid;page-break-inside:avoid}
.mag-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:2rem}

/* ---------- CONTACT: intake two-column ---------- */
.intake-hero{margin-bottom:1.5rem}
.intake-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:2rem;align-items:start}
.intake-form-col{background:var(--paper);border:1px solid var(--line);border-top:6px solid var(--teal-deep);border-radius:var(--r-lg);padding:1.75rem;box-shadow:var(--shadow-s)}
.intake-check-col{background:var(--cream-dim);border-radius:var(--r-lg);padding:1.5rem;position:sticky;top:1rem}
.intake-check-col h2{font-size:1.35rem}
.theme-stock-desk .keel-form label{font-weight:600;display:block;margin:.8rem 0 .3rem}
.theme-stock-desk .keel-form input:not([type=checkbox]):not([type=radio]),.theme-stock-desk .keel-form select,.theme-stock-desk .keel-form textarea{width:100%;max-width:100%;padding:.65rem .8rem;border:1.5px solid var(--charcoal-lift);border-radius:var(--r);background:var(--paper);font:inherit;color:var(--ink);box-sizing:border-box}
.theme-stock-desk .keel-form input:focus,.theme-stock-desk .keel-form textarea:focus,.theme-stock-desk .keel-form select:focus{border-color:var(--teal);outline:3px solid var(--teal-mist)}
.theme-stock-desk .keel-form input[type=checkbox],.theme-stock-desk .keel-form input[type=radio]{width:auto;margin-right:.5rem;accent-color:var(--teal-deep)}
.theme-stock-desk .keel-form ul,.theme-stock-desk .keel-form ol{list-style:none;padding-left:0}

/* region wrappers: kill empty gaps */
.theme-stock-desk .region:empty,.theme-stock-desk [data-region]:empty{display:none}
.theme-stock-desk .region > *:last-child{margin-bottom:0}

/* ---------- mobile: stack at 640px ---------- */
@media (max-width:900px){
  .mag-columns{column-count:2}
  .lib-layout{grid-template-columns:1fr}
  .lib-board{position:static}
}
@media (max-width:640px){
  .home-hero,.home-split,.home-cta,.film-below,.mag-spread,.mag-strip,.intake-grid,.desk-footer-inner,.loupe-grid{grid-template-columns:1fr}
  .mag-columns{column-count:1}
  .mag-portrait img{min-height:280px}
  .home-hero .hero-photo,.nope-wall{transform:none}
  .intake-check-col{position:static}
  .filmstrip-track{grid-auto-flow:row;grid-auto-columns:auto}
  .filmstrip{background-image:none;padding:.6rem 0}
  .desk-chrome-inner{flex-direction:column;align-items:flex-start}
  .sheet-grid{grid-template-columns:repeat(2,1fr)}
  .btn-row .btn{flex:1 1 100%;justify-content:center}
  .theme-stock-desk h1{font-size:2rem}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}

/* --- Maggie redesign nits (2026-10-15) --- */
.nope-wall .kicker,
.nope-wall .eyebrow,
.nope-wall p.kicker,
.nope-wall .metric-label{color:var(--amber-soft)!important}

/* --- Maggie QA batch 2 (2026-10-15) --- */

/* Film strip: fit all 6 on desktop; scroll + fade cue below 900px */
.filmstrip-wrap,.filmstrip{position:relative}
.filmstrip::after{content:"";position:absolute;right:0;top:0;bottom:0;width:2.5rem;background:linear-gradient(90deg,transparent,var(--charcoal));pointer-events:none;opacity:0;transition:opacity .2s}
.film-frame{min-width:0}
.film-frame h3,.film-frame p{overflow-wrap:anywhere}
.film-scroll-hint{display:none;font-family:var(--f-mono);font-size:.78rem;color:var(--mute);margin:.4rem 0 0;text-align:right}
@media (max-width:900px){
  .filmstrip-track{grid-auto-columns:minmax(220px,1fr)}
  .filmstrip::after{opacity:1}
  .film-scroll-hint{display:block}
}
@media (max-width:640px){
  .filmstrip-track{grid-auto-columns:auto}
  .filmstrip::after{display:none}
  .film-scroll-hint{display:none}
}

/* Form fields: label, input, then hint underneath as muted helper text */
.theme-stock-desk .keel-form .keel-field:not(:has(input[type=checkbox])),
.theme-stock-desk .keel-form .form-field:not(:has(input[type=checkbox])),
.theme-stock-desk .keel-form .field:not(:has(input[type=checkbox])){
  display:flex;flex-direction:column
}
.theme-stock-desk .keel-form .keel-field > label,
.theme-stock-desk .keel-form .form-field > label,
.theme-stock-desk .keel-form .field > label{order:1;margin:.8rem 0 .3rem}
.theme-stock-desk .keel-form .keel-field > input,
.theme-stock-desk .keel-form .keel-field > select,
.theme-stock-desk .keel-form .keel-field > textarea,
.theme-stock-desk .keel-form .form-field > input,
.theme-stock-desk .keel-form .form-field > select,
.theme-stock-desk .keel-form .form-field > textarea,
.theme-stock-desk .keel-form .field > input,
.theme-stock-desk .keel-form .field > select,
.theme-stock-desk .keel-form .field > textarea{order:2}
.theme-stock-desk .keel-form .keel-field > .hint,
.theme-stock-desk .keel-form .keel-field > .help,
.theme-stock-desk .keel-form .keel-field > .description,
.theme-stock-desk .keel-form .keel-field > .keel-hint,
.theme-stock-desk .keel-form .keel-field > .keel-field__hint,
.theme-stock-desk .keel-form .keel-field > small,
.theme-stock-desk .keel-form .keel-field > p,
.theme-stock-desk .keel-form .form-field > .hint,
.theme-stock-desk .keel-form .form-field > .help,
.theme-stock-desk .keel-form .form-field > .description,
.theme-stock-desk .keel-form .form-field > small,
.theme-stock-desk .keel-form .field > .hint,
.theme-stock-desk .keel-form .field > .help,
.theme-stock-desk .keel-form .field > .description,
.theme-stock-desk .keel-form .field > small{
  order:3;margin:.35rem 0 0;font-size:.85rem;color:var(--mute);font-weight:400;line-height:1.4
}

/* --- Maggie QA batch 3: real Keel form selectors + 390px (2026-10-15) --- */

/* Hint under input using Keel's real classes */
.theme-stock-desk .keel-form .keel-field:not(.keel-field--checkbox):not(.keel-field--consent){
  display:flex;flex-direction:column
}
.theme-stock-desk .keel-form .keel-field__label{order:1}
.theme-stock-desk .keel-form .keel-field__input{order:2;width:100%;max-width:100%;box-sizing:border-box}
.theme-stock-desk .keel-form .keel-field__hint{
  order:3;margin:.35rem 0 0;font-size:.85rem;color:var(--mute);font-weight:400;line-height:1.4
}
.theme-stock-desk .keel-form .keel-field__error{order:4}

/* Checkbox: Keel wraps input+label in .keel-field__choice */
.theme-stock-desk .keel-form .keel-field--checkbox,
.theme-stock-desk .keel-form .keel-field--consent{margin:.9rem 0}
.theme-stock-desk .keel-form .keel-field__choice{
  display:flex;align-items:flex-start;gap:.75rem;flex-wrap:nowrap
}
.theme-stock-desk .keel-form .keel-field__checkbox,
.theme-stock-desk .keel-form input.keel-field__checkbox[type=checkbox]{
  -webkit-appearance:none!important;appearance:none!important;
  width:1.25rem!important;height:1.25rem!important;min-width:1.25rem;max-width:1.25rem;
  margin:0.15rem 0 0!important;flex:0 0 auto;padding:0!important;
  border:2px solid var(--charcoal-lift)!important;border-radius:4px;
  background:var(--paper)!important;accent-color:var(--teal-deep);
  display:inline-grid;place-content:center;cursor:pointer;box-sizing:border-box
}
.theme-stock-desk .keel-form .keel-field__checkbox::before{
  content:"";width:.65rem;height:.65rem;transform:scale(0);
  background:var(--teal-deep);border-radius:2px;transition:transform .12s ease
}
.theme-stock-desk .keel-form .keel-field__checkbox:checked{
  border-color:var(--teal-deep)!important;background:var(--teal-mist)!important
}
.theme-stock-desk .keel-form .keel-field__checkbox:checked::before{transform:scale(1)}
.theme-stock-desk .keel-form .keel-field__checkbox:focus-visible{
  outline:2px solid var(--teal-deep);outline-offset:2px
}
.theme-stock-desk .keel-form .keel-field--checkbox .keel-field__label,
.theme-stock-desk .keel-form .keel-field--consent .keel-field__label{
  display:inline!important;margin:0!important;font-weight:600;line-height:1.35;
  flex:1 1 auto;cursor:pointer
}

/* Submit + actions */
.theme-stock-desk .keel-form .keel-form__actions{margin-top:1.25rem}
.theme-stock-desk .keel-form .keel-form__submit{
  display:inline-flex;align-items:center;justify-content:center;gap:.4rem;
  width:auto;max-width:100%;box-sizing:border-box;
  padding:.85rem 1.25rem;border:0;border-radius:var(--r);
  background:var(--teal-deep);color:var(--paper);font:inherit;font-weight:700;
  cursor:pointer;white-space:normal;line-height:1.3;text-align:center
}
.theme-stock-desk .keel-form .keel-form__submit:hover{background:var(--teal-ink)}

/* Phone: 480px — 1-col sheets, full-width form, bigger hero photo */
@media (max-width:480px){
  .sheet-grid{grid-template-columns:1fr!important}
  .home-hero .hero-photo{width:100%;max-width:100%;margin:0;padding:.5rem .5rem 1.5rem}
  .home-hero .hero-photo img{width:100%;height:auto;min-height:220px;object-fit:cover;border-radius:2px}
  .intake-form-col{padding:1.1rem}
  .theme-stock-desk .keel-form .keel-field__input,
  .theme-stock-desk .keel-form input:not([type=checkbox]):not([type=radio]),
  .theme-stock-desk .keel-form select,
  .theme-stock-desk .keel-form textarea{width:100%!important;max-width:100%!important;box-sizing:border-box}
  .theme-stock-desk .keel-form .keel-form__actions{width:100%}
  .theme-stock-desk .keel-form .keel-form__submit{
    width:100%!important;max-width:100%!important;display:flex;
    font-size:1rem;padding:.95rem 1rem;white-space:normal
  }
  .btn-row{flex-direction:column}
  .btn-row .btn{width:100%;justify-content:center}
}
