/* Agri Squadron Shop — layered on the main site's style.css (same tokens) */
.sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip{position:absolute;left:-9999px;top:8px;z-index:300;background:var(--ink);color:#fff;padding:10px 14px;border-radius:10px}
.skip:focus{left:12px}
.shop-word{font-weight:300;color:var(--graphite);margin-left:4px}
.train-link{font-size:14px}
.quote-btn{gap:8px;display:inline-flex;align-items:center}
.q-count{display:inline-flex;min-width:22px;height:22px;padding:0 6px;border-radius:11px;background:#fff;color:var(--sky);
  font-size:12.5px;font-weight:500;align-items:center;justify-content:center}
.q-count[hidden]{display:none}
.quote-btn{white-space:nowrap}
@media(max-width:640px){.train-link{display:none}.quote-btn{padding:9px 13px;font-size:14px}}
@media(max-width:430px){.brand-word{display:none}.shop-word{margin-left:0;color:var(--sky);font-weight:400}}

/* hero */
.shop-hero{padding:56px 0 40px}
.hero-search{display:flex;gap:10px;margin-top:34px;max-width:760px}
.hero-search input{flex:1;min-width:0;font:inherit;font-size:19px;padding:17px 20px;border-radius:14px;border:1.5px solid var(--ink);
  background:#fff;color:var(--ink);letter-spacing:-.2px}
.hero-search input:focus{outline:3px solid rgba(1,122,70,.25);outline-offset:1px;border-color:var(--sky)}
.hero-search .btn{padding:0 26px}
@media(max-width:520px){.hero-search{flex-direction:column}.hero-search .btn{padding:15px}}

.sec-h{font-size:clamp(26px,3.4vw,38px);line-height:1.05;letter-spacing:-.03em;font-weight:200;margin:0 0 22px}

/* featured systems: a horizontal shelf of the aircraft people come for */
.feat-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
@media(min-width:900px){.feat-row{grid-template-columns:repeat(3,minmax(0,1fr))}}
.feat{display:flex;flex-direction:column;gap:6px;padding:20px 20px 18px;border-radius:14px;background:var(--sand);color:var(--ink);
  min-height:150px;transition:background .2s}
.feat:hover{background:#efebd2}
.f-cat{font-size:13px;color:var(--graphite)}
.f-name{font-size:17px;line-height:1.25;letter-spacing:-.3px;flex:1}
.f-price{font-size:15px;color:var(--sky);font-variant-numeric:tabular-nums}

/* category grid */
.cat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px}
.cat-card{display:flex;flex-direction:column;border-radius:14px;overflow:hidden;background:var(--card);color:var(--ink);border:1px solid var(--line)}
.cat-card img{width:100%;aspect-ratio:3/2;object-fit:cover;display:block}
.cat-card:not(.has-img){justify-content:flex-end;min-height:140px;background:var(--forest);color:#fff;border-color:transparent}
.cat-card:not(.has-img) .cc-m{color:rgba(255,255,255,.65)}
.cc-body{display:flex;flex-direction:column;gap:4px;padding:16px 18px 18px}
.cc-t{font-size:19px;letter-spacing:-.35px}
.cc-m{font-size:13.5px;color:var(--graphite)}
.cat-card:hover .cc-t{text-decoration:underline;text-underline-offset:3px}

/* how it works — a real sequence, so it's numbered */
.how{display:grid;gap:26px;padding:34px;border-radius:16px;border:1px solid var(--line)}
@media(min-width:900px){.how{grid-template-columns:280px 1fr}}
.how-steps{margin:0;padding-left:22px;display:grid;gap:14px;color:var(--graphite);font-size:16.5px;line-height:1.5}
.how-steps b{color:var(--ink);font-weight:500}
.train-band{display:flex;flex-wrap:wrap;gap:22px;align-items:center;justify-content:space-between;padding:34px;border-radius:16px;background:var(--sand)}

/* category + list pages */
.cat-top{padding:40px 0 20px}
.crumbs{font-size:14px;color:var(--stone);margin-bottom:22px;letter-spacing:-.1px}
.crumbs a{color:var(--graphite)}
.crumbs a:hover{color:var(--sky)}
.cat-head{display:grid;gap:30px;align-items:end}
@media(min-width:900px){.cat-head.with-img{grid-template-columns:1fr 440px}}
.cat-hero-img{width:100%;border-radius:14px;aspect-ratio:3/2;object-fit:cover}
.grp-h{font-size:21px;font-weight:300;letter-spacing:-.4px;margin:40px 0 4px;display:flex;gap:10px;align-items:baseline}
.grp-h span{font-size:14px;color:var(--stone)}

.plist{list-style:none;margin:0;padding:0;border-top:1px solid var(--ink)}
.prow{display:grid;grid-template-columns:1fr auto auto;gap:18px;align-items:center;padding:14px 0;border-bottom:1px solid var(--line)}
.prow[hidden]{display:none}
.prow-name{display:flex;flex-direction:column;gap:3px;color:var(--ink);min-width:0}
.prow-name:hover .pn{color:var(--sky);text-decoration:underline;text-underline-offset:3px}
.pn{font-size:16.5px;line-height:1.3;letter-spacing:-.25px}
.ps{font-size:13px;color:var(--stone);letter-spacing:0}
.prow-price{font-size:17px;font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap}
.rrp-l{font-size:12px;color:var(--stone);margin-right:3px}
.add-btn{font:inherit;font-size:14px;padding:9px 14px;border-radius:24px;border:1.5px solid var(--sky);background:transparent;color:var(--sky);
  cursor:pointer;white-space:nowrap;transition:background .15s,color .15s}
.add-btn:hover{background:rgba(1,122,70,.08)}
.add-btn.added{background:var(--sky);color:#fff}
.add-btn:focus-visible,.qty button:focus-visible{outline:3px solid rgba(1,122,70,.35);outline-offset:2px}
@media(max-width:640px){
  .prow{grid-template-columns:1fr auto;row-gap:8px}
  .prow-name{grid-column:1/-1}
  .prow-price{text-align:left}
}
.tag{display:inline-block;align-self:flex-start;font-size:11.5px;letter-spacing:0;padding:3px 8px;border-radius:6px;background:var(--driftwood);color:var(--ink);margin-top:3px;margin-right:4px}
.tag-eol{background:#f6e3cf;color:#8a4a0f}
.tag-note{background:#e6efe9;color:var(--evergreen)}
.tag-type{background:transparent;border:1px solid var(--line);color:var(--graphite)}

/* product page */
.pdp{padding:40px 0 30px}
.pdp-grid{display:grid;gap:40px}
@media(min-width:900px){.pdp-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start}}
.pimg{width:100%;border-radius:16px;background:#fff;aspect-ratio:1;object-fit:contain}
.pimg-cat{margin:0}
.pimg-cat img{width:100%;border-radius:16px;aspect-ratio:3/2;object-fit:cover;display:block}
.pimg-cat figcaption{font-size:13px;color:var(--stone);margin-top:8px}
.pimg-ph{aspect-ratio:4/3;border-radius:16px;background:var(--sand);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:20px;text-align:center}
.pimg-ph span{font-size:clamp(22px,3.4vw,36px);font-weight:200;letter-spacing:-.03em;word-break:break-all}
.pimg-ph small{font-size:13.5px;color:var(--graphite)}
.ptags{display:flex;flex-wrap:wrap;gap:4px}
.pdp-h{font-size:clamp(28px,3.6vw,42px);line-height:1.08;letter-spacing:-.03em;font-weight:300;margin-top:10px}
.pmeta{display:flex;flex-wrap:wrap;gap:8px 26px;margin:20px 0 0}
.pmeta div{display:flex;gap:8px;font-size:14px}
.pmeta dt{color:var(--stone)}
.pmeta dd{margin:0}
.pmeta a{color:var(--sky);border-bottom:1px solid rgba(1,122,70,.3)}
.pprice{display:flex;align-items:baseline;flex-wrap:wrap;gap:4px 10px;margin-top:26px;padding-top:22px;border-top:1px solid var(--line)}
.pprice .amt{font-size:clamp(34px,4.4vw,48px);font-weight:200;letter-spacing:-.04em;font-variant-numeric:tabular-nums}
.pprice .gst{font-size:14px;color:var(--graphite)}
.padd{display:flex;gap:10px;margin-top:20px;flex-wrap:wrap}
.qty{display:flex;align-items:center;border:1.5px solid var(--ink);border-radius:24px;overflow:hidden}
.qty button{font:inherit;font-size:20px;width:42px;height:46px;border:0;background:transparent;cursor:pointer;color:var(--ink)}
.qty input{width:52px;height:46px;border:0;text-align:center;font:inherit;font-size:17px;background:transparent;-moz-appearance:textfield}
.qty input::-webkit-outer-spin-button,.qty input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.add-lg{border-radius:24px;padding:12px 24px;font-size:16px;border:0}
.add-lg.added{background:var(--evergreen)}
.pnote{margin:16px 0 0;padding:12px 14px;border-radius:10px;background:#fbf0e3;font-size:14.5px;line-height:1.45;color:#5c3608}
.ptrain{margin-top:18px;padding:14px 16px;border-radius:10px;background:var(--sand);font-size:15px;line-height:1.45}
.ptrain a{color:var(--sky);border-bottom:1px solid rgba(1,122,70,.3)}

/* all products */
.filters{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px;align-items:center}
.filters input[type=search],.filters select{font:inherit;font-size:16px;padding:12px 14px;border-radius:12px;border:1px solid rgba(0,0,0,.25);background:#fff;color:var(--ink)}
.filters input[type=search]{flex:1 1 280px;min-width:0}
.eol-t{display:flex;gap:8px;align-items:center;font-size:14.5px;color:var(--graphite);cursor:pointer}
.eol-t input{accent-color:var(--sky);width:17px;height:17px}
.empty{padding:30px 0;color:var(--graphite)}
.empty a{color:var(--sky);border-bottom:1px solid rgba(1,122,70,.3)}

/* quote list */
.quote-grid{display:grid;gap:30px;align-items:start}
@media(min-width:960px){.quote-grid{grid-template-columns:minmax(0,1fr) 400px}}
.qlist{list-style:none;margin:0;padding:0;border-top:1px solid var(--ink)}
.qitem{display:grid;grid-template-columns:1fr auto auto;gap:14px;align-items:center;padding:14px 0;border-bottom:1px solid var(--line)}
.qitem .qty{border-width:1px}
.qitem .qty button{width:34px;height:38px;font-size:17px}
.qitem .qty input{width:42px;height:38px;font-size:15px}
.q-line{font-size:15.5px;text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}
.q-rm{font:inherit;font-size:13px;border:0;background:none;color:var(--stone);cursor:pointer;padding:4px 0;text-decoration:underline;text-underline-offset:2px}
@media(max-width:640px){.qitem{grid-template-columns:1fr auto}.qitem .prow-name{grid-column:1/-1}}
.qtotal{display:flex;justify-content:space-between;align-items:baseline;padding:18px 0;font-size:16px}
.qtotal b{font-size:26px;font-weight:300;letter-spacing:-.03em;font-variant-numeric:tabular-nums}
.qform{padding:26px}
.opt{color:var(--stone);font-size:13px;font-weight:400}
.q-empty{padding:26px 0}
.q-empty .btn{margin-top:18px}
.q-done{padding:20px 0 40px}

/* images keep their proportions even with width/height attributes set */
.cat-card img,.cat-hero-img,.pimg,.pimg-cat img{height:auto}
/* the main add button is a solid primary action */
.add-btn.add-lg{background:var(--sky);color:#fff;border:0}
.add-btn.add-lg:hover{background:var(--evergreen)}
