.package-page [hidden]{display:none!important}
.package-page{background:#f7f4ef}
.package-page .package-hero{background:#203d30;padding:3rem 0;color:#fff}
.package-page .package-hero h1{font-size:clamp(2.3rem,4.5vw,4rem);line-height:1.08;margin:.8rem 0 1rem}
.package-page .package-hero .catalog-page-eyebrow{color:#dec9a9}
.package-page .package-hero-steps{max-width:350px;justify-self:end;gap:1rem}
.package-page .package-layout{display:grid;grid-template-columns:minmax(0,1fr) 350px;gap:1.5rem;align-items:start}
.package-shopping{display:grid;gap:1.5rem;min-width:0}
.package-page .package-builder-card,.package-page .package-submit-card{padding:1.5rem;border-color:#e7e1d8;box-shadow:none}
.package-intro{font-size:.85rem;color:#6a6c66;line-height:1.6}
.package-presets{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem}
.package-preset{display:flex;flex-direction:column;text-align:left;background:#f8f6f2;border:1px solid #e7e1d8;border-radius:12px;padding:.7rem;gap:.4rem;transition:transform .15s,border-color .15s;min-width:0}
.package-preset:hover{transform:translateY(-3px);border-color:#b8a07e}
.package-preset-images{display:flex;height:110px;overflow:hidden;border-radius:8px}
.package-preset-images img{width:50%;height:100%;object-fit:contain;background:#f2efeb}
.package-preset strong{font-size:.9rem}.package-preset small{font-size:.72rem;color:#666}.package-preset>span:last-child{font-size:.7rem;color:#24573e;font-weight:600;margin-top:auto}
.package-filters{display:flex;flex-wrap:wrap;gap:.4rem;margin:1rem 0}
.package-filters button{border:1px solid #dedbd4;background:white;border-radius:30px;padding:.5rem .8rem;font-size:.75rem;min-height:40px}
.package-filters button[aria-pressed=true]{background:#24573e;color:white;border-color:#24573e}
.package-search{margin-bottom:1rem}
.package-products{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}
.package-product{display:flex;flex-direction:column;min-width:0;text-align:left;background:#fff;border:1px solid #e7e1d8;border-radius:12px;overflow:hidden;padding:0;transition:border-color .15s,box-shadow .15s}
.package-product:hover,.package-product.is-selected{border-color:#3c7757;box-shadow:0 0 0 1px #3c7757}
.package-product:disabled{opacity:.65}
.package-product-visual{height:195px;background:#f2efeb;width:100%;display:block}
.package-product-visual img{width:100%;height:100%;object-fit:contain}
.package-product-body{padding:.85rem;display:flex;flex-direction:column;gap:.35rem;flex:1;width:100%}
.package-product-brand{font-size:.58rem;color:#8e7556;font-weight:700;text-transform:uppercase}
.package-product-body strong{font-size:.91rem;line-height:1.35}.package-product-body>small:not(.package-product-brand){font-size:.72rem;color:#6a6c66}
.package-product-selected{font-size:.67rem;color:#24573e;font-weight:600;border-top:1px solid #eee;margin-top:auto;padding-top:.6rem}
.package-selection{position:sticky;top:95px;background:white;border:1px solid #e7e1d8;border-radius:18px;padding:1.25rem;box-shadow:0 8px 30px #203d3009;scroll-margin-top:95px}
.package-selection-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.package-selection h2{font-size:1.35rem;margin:0}
#package-count{display:grid;place-items:center;min-width:36px;height:36px;padding:0 .4rem;border-radius:50%;background:#e7f3eb;color:#24573e;font-weight:700}
.package-page .package-lines{display:grid;gap:.8rem;max-height:52vh;overflow:auto;padding:2px}
.package-page .package-line{display:block;background:#f8f6f2;padding:.85rem;border:1px solid #e7e1d8;border-radius:10px}
.package-line-head{display:flex;align-items:center;gap:.6rem;margin-bottom:.7rem}.package-line-head img{width:48px;height:55px;object-fit:contain;border-radius:5px}.package-line-head>div{flex:1}.package-line-head strong{display:block;font-size:.79rem}.package-line-head small{display:block;font-size:.65rem;color:#666}
.package-page .package-line-remove{width:28px;height:28px;padding:0;font-size:1.3rem;border:0;background:transparent;align-self:start;color:#555}
.package-line-fields{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.3fr) 60px;gap:.45rem}.package-line-fields>div{min-width:0}
.package-line-fields label{font-size:.7rem;margin-bottom:.25rem}.package-line-fields .form-select,.package-line-fields .form-control{font-size:.75rem;padding:.5rem .35rem;min-height:40px}.package-line-fields .form-select{padding-right:1rem;background-position:right .25rem center;background-size:10px}
.package-line-copy{border:0;padding:.5rem 0 0;background:transparent;text-decoration:underline;color:#24573e;font-size:.67rem}
.package-page .package-preview{background:none;border:0;border-radius:0;border-top:1px solid #e7e1d8;padding:1rem 0 0;margin-top:1rem;font-size:.85rem}.package-preview p{font-size:.78rem;color:#6a6c66;margin:.5rem 0}
@media(max-width:620px){.package-page .package-hero h1{font-size:2rem}}
.package-feedback{font-size:.75rem;color:#24573e}.package-feedback:empty{display:none}
#package-continue{width:100%;min-height:46px;background:#24573e;border-color:#24573e;font-size:.85rem}
.package-selection-note{font-size:.7rem;text-align:center;margin:.6rem 0}.package-selection-hint{font-size:.7rem;color:#6a6c66;margin-bottom:0}
#package-contact{scroll-margin-top:105px}.package-upload{display:flex;gap:1rem;padding:1.2rem;background:#f6f9f6;border:1px dashed #9bb3a4;border-radius:10px}.package-upload>i{font-size:2rem;color:#24573e}.package-upload>div{min-width:0;flex:1}.package-upload strong{display:block;font-size:.85rem;margin-bottom:.75rem}#package-logo-preview{max-width:180px;max-height:120px;object-fit:contain;margin-top:.75rem}
.package-page .package-submit-card{display:block;background:#eef5ef}.package-submit-card button{width:100%;margin-top:.7rem}
.package-form>.sent-message{margin-top:1rem;padding:1.5rem;border-radius:12px;background:#e7f3eb}
#package-mobile-summary{display:none}
.package-product:focus-visible,.package-preset:focus-visible,.package-filters button:focus-visible{outline:3px solid #b8a07e;outline-offset:3px}
@media(min-width:1400px){.package-page .package-layout{grid-template-columns:minmax(0,1fr) 380px}.package-product-visual{height:230px}}
@media(max-width:991px){.package-page .package-layout{grid-template-columns:1fr}.package-selection{position:static}.package-page .package-lines{grid-template-columns:repeat(2,minmax(0,1fr));max-height:none}.package-page .package-hero-steps{justify-self:start;max-width:none}.package-section{padding-bottom:6rem}#package-mobile-summary{display:block;position:fixed;bottom:16px;left:5%;width:90%;z-index:100;background:#24573e;color:white;border:0;border-radius:12px;min-height:50px;font-weight:600;box-shadow:0 4px 20px #0003}}
@media(max-width:620px){.package-page .package-hero{padding:2rem 0}.package-page .package-builder-card{padding:1rem}.package-presets{gap:.4rem}.package-preset{padding:.45rem}.package-preset-images{height:75px}.package-preset strong{font-size:.75rem}.package-preset small,.package-preset>span:last-child{font-size:.65rem}.package-products{grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem}.package-product-visual{height:190px}.package-product-body{padding:.65rem}.package-product-body strong{font-size:.85rem}.package-page .package-lines{grid-template-columns:1fr}.package-line-fields .form-select,.package-line-fields .form-control{font-size:16px;min-height:44px}.package-upload{padding:.8rem;gap:.6rem}.package-page .package-hero-steps{gap:.5rem}.package-page .package-hero-steps span{font-size:.85rem}}
@media(prefers-reduced-motion:reduce){.package-preset,.package-product{transition:none}.package-preset:hover{transform:none}}
