.package-workspace{background:#f4f8f5;padding:84px max(24px,calc((100% - 1200px)/2)) 120px;color:#0d1512}.package-heading{max-width:850px}.package-heading h1{margin:12px 0 14px;font:800 clamp(46px,6vw,78px)/.98 'Bricolage Grotesque',sans-serif;letter-spacing:-.05em}.package-heading>p{max-width:680px;color:#3d4f45;font-size:18px;line-height:1.6}
.buying-mode{display:grid;grid-template-columns:1fr 1fr;gap:0;margin:38px 0 0;padding:0;border:1px solid #bccbc2}.buying-mode label,.package-options label{position:relative;cursor:pointer}.buying-mode input,.package-options input{position:absolute;opacity:0;pointer-events:none}.buying-mode span{display:flex;min-height:92px;flex-direction:column;justify-content:center;padding:18px 22px;border-right:1px solid #bccbc2;transition:background .18s,color .18s}.buying-mode label:last-child span{border:0}.buying-mode input:checked+span{background:#0d1512;color:#f4f8f5;box-shadow:inset 0 -4px #c8f169}.buying-mode input:focus-visible+span,.package-options input:focus-visible+span{outline:3px solid #79a123;outline-offset:2px}.buying-mode small,.package-options small{margin-top:7px;color:inherit;opacity:.7;line-height:1.45}
.package-alert{min-height:24px;margin:34px 0 18px;color:#3d4f45;font-size:14px}.package-alert.error{color:#9a352d}.package-layout{display:grid;grid-template-columns:minmax(0,8fr) minmax(310px,4fr);gap:70px;align-items:start}.package-form fieldset{margin:0;padding:34px 0 38px;border:0;border-top:1px solid #c7d3cb}.package-form legend{display:flex;gap:16px;align-items:center;margin-bottom:24px;font:700 22px 'Bricolage Grotesque',sans-serif}.package-form legend span{color:#64766c;font:700 12px Inter,sans-serif}.package-options{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.package-services{grid-template-columns:repeat(2,1fr)}.package-options label>span{display:flex;min-height:100px;flex-direction:column;justify-content:center;padding:18px 20px;border:1px solid #b8c7be;background:#fff;transition:border-color .18s,background .18s,transform .18s}.package-options input:checked+span{border-color:#0d1512;background:#e7efdf;box-shadow:inset 0 -4px #8bb335}.package-options label:hover span{border-color:#667a6e;transform:translateY(-2px)}.package-options b{font-size:16px}.compact-options{grid-template-columns:repeat(4,1fr)}.compact-options span{min-height:72px!important;text-align:center}.package-form details{margin-top:18px;color:#3d4f45}.package-form summary{cursor:pointer;font-weight:650}.package-form details p{max-width:700px;line-height:1.6}.package-form textarea,.package-form input[type=number]{width:100%;box-sizing:border-box;margin:7px 0 18px;padding:13px;border:1px solid #aebfb4;background:#fff;font:inherit}.package-terms{display:flex;align-items:center;flex-wrap:wrap;gap:18px;padding-top:24px;border-top:1px solid #c7d3cb}.package-terms details{flex:1 1 100%;margin:0}.package-terms a{color:#0d1512;font-size:14px;font-weight:650}
.package-summary{position:sticky;top:92px;padding:32px;background:#0d1512;color:#f4f8f5}.package-summary h2{margin:10px 0 6px;font:700 30px 'Bricolage Grotesque',sans-serif}.package-summary>p{color:#b7c4bc;line-height:1.55}.package-summary dl{margin:28px 0 18px}.package-summary dl div{display:flex;justify-content:space-between;gap:20px;padding:11px 0;border-bottom:1px solid #2c3a33}.package-summary dt{color:#b7c4bc}.package-summary dd{margin:0;font-variant-numeric:tabular-nums}.package-summary .summary-total{margin-top:10px;padding-top:20px;border-top:1px solid #65766d;border-bottom:0;font-size:21px;font-weight:800}.package-summary .summary-total dt{color:#fff}.package-summary .tax-note,.quote-meta{font-size:12px}.package-summary .btn{width:100%;margin-top:10px}.package-summary .text-button{display:block;margin:14px auto 0;color:#c8f169}.package-summary #package-message{font-size:13px}.package-summary.is-updating #package-total{opacity:.45}.package-summary.is-updating::after{content:'Updating price';display:block;margin-top:8px;color:#c8f169;font-size:12px}.pricing-foot{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:80px max(24px,calc((100% - 1200px)/2));background:#e3eadf}.pricing-foot h2{margin:8px 0;font:700 clamp(32px,4vw,52px) 'Bricolage Grotesque',sans-serif}.pricing-foot p{color:#3d4f45}
.mobile-package-bar,.package-sheet{display:none}.package-sheet[hidden]{display:none!important}
@media(max-width:900px){.package-workspace{padding:56px 18px 130px}.package-layout{grid-template-columns:1fr}.package-summary{position:static;display:none}.package-options,.package-services{grid-template-columns:1fr 1fr}.mobile-package-bar{position:fixed;z-index:60;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 18px;background:#0d1512;color:#f4f8f5;border-top:1px solid #34463d}.mobile-package-bar[hidden]{display:none}.mobile-package-bar span{font-weight:700}.mobile-package-bar button{min-height:44px;padding:0 16px;border:0;background:#c8f169;color:#0d1512;font-weight:800}.package-sheet{position:fixed;z-index:80;inset:0;display:block}.package-sheet-backdrop{position:absolute;inset:0;background:rgba(4,9,7,.7)}.package-sheet section{position:absolute;right:0;bottom:0;left:0;max-height:82vh;overflow:auto;padding:28px;background:#0d1512;color:#f4f8f5;animation:sheet-in .2s ease-out}.package-sheet h2{margin:0 0 18px;font:700 30px 'Bricolage Grotesque',sans-serif}.sheet-close{position:absolute;top:18px;right:18px;width:44px;height:44px;border:1px solid #516158;background:transparent;color:#fff;font-size:25px}.package-sheet dl div{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px solid #2c3a33}.package-sheet dd{margin:0}.package-sheet .btn{width:100%;margin-top:20px}.pricing-foot{align-items:flex-start;flex-direction:column}}
@media(max-width:560px){.buying-mode,.package-options,.package-services{grid-template-columns:1fr}.buying-mode span{border-right:0;border-bottom:1px solid #bccbc2}.buying-mode label:last-child span{border-bottom:0}.compact-options{grid-template-columns:1fr 1fr}.package-form fieldset{padding:28px 0}.pricing-foot{padding:60px 18px}}
@keyframes sheet-in{from{transform:translateY(24px);opacity:.7}to{transform:none;opacity:1}}
@media(prefers-reduced-motion:reduce){.buying-mode span,.package-options label>span,.package-sheet section{transition:none;animation:none}.package-options label:hover span{transform:none}}
