/* Planter.md V8 — configurator visual system */
:root{--p8-green:#294d39;--p8-green-2:#173326;--p8-ivory:#f6f2e9;--p8-line:rgba(30,51,39,.12);--p8-shadow:0 34px 90px rgba(19,39,28,.13)}
.home-v5 .p4-configurator{border-top:1px solid var(--p8-line);border-bottom:1px solid var(--p8-line);background:#f8f5ee}
.home-v5 .p4-config-copy{background:#fbf9f4;padding:clamp(52px,5vw,92px) clamp(38px,4vw,78px)}
.home-v5 .p4-config-copy h2{max-width:9.2ch;font-size:clamp(48px,4vw,74px);line-height:.98;letter-spacing:-.035em}
.home-v5 .p4-config-copy p{max-width:34rem;font-size:15px;line-height:1.75;color:#5e6a62}
.home-v5 .p4-config-preview{background:linear-gradient(145deg,#e8e2d7,#f8f5ed 55%,#ded7c9);padding:clamp(24px,3vw,46px);display:flex;align-items:center;justify-content:center}
.home-v5 .p4-config-preview>[data-home-preview]{width:min(100%,760px);max-width:none}
.home-v5 .p4-config-controls{background:#fff;padding:clamp(30px,3vw,54px)}
.p3d-preview{position:relative;border:1px solid rgba(37,59,45,.10);border-radius:28px;background:#eee9df;overflow:hidden;box-shadow:var(--p8-shadow);isolation:isolate}
.p3d-toolbar-simple{height:62px;padding:0 18px 0 22px;background:rgba(252,250,246,.92);backdrop-filter:blur(16px);border-bottom:1px solid var(--p8-line)}
.p3d-toolbar-simple>div:first-child{gap:5px}.p3d-toolbar-simple b{font:800 10px/1 Manrope,sans-serif;letter-spacing:.16em;color:#1f4030}.p3d-toolbar-simple span{font:700 8px/1 Manrope,sans-serif;letter-spacing:.16em;color:#87918b}
.p3d-reset{display:grid;place-items:center;width:38px;height:38px;border:1px solid rgba(41,77,57,.18);border-radius:999px;background:#fff;color:#294d39;box-shadow:0 7px 20px rgba(30,52,39,.07)}
.p3d-reset svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.p3d-reset:hover{background:#294d39;color:#fff;border-color:#294d39;transform:none}
.p3d-canvas-wrap{position:relative;height:520px;background:radial-gradient(circle at 45% 22%,#fffdf8 0,#f1ece2 48%,#d8d0c2 100%)}
.p3d-preview.is-compact .p3d-canvas-wrap{height:500px}.p3d-canvas{width:100%;height:100%;display:block;cursor:grab;touch-action:none}.p3d-canvas.is-dragging{cursor:grabbing}
.p3d-loading{position:absolute;inset:0;display:grid;place-content:center;gap:12px;text-align:center;background:linear-gradient(145deg,rgba(255,253,248,.96),rgba(232,226,215,.96));z-index:3;transition:opacity .45s ease,visibility .45s ease}.p3d-loading span{width:38px;height:38px;margin:auto;border:2px solid rgba(41,77,57,.15);border-top-color:#294d39;border-radius:50%;animation:p8spin .8s linear infinite}.p3d-loading b{font:700 10px/1.2 Manrope,sans-serif;letter-spacing:.09em;text-transform:uppercase;color:#617067}.p3d-preview.is-ready .p3d-loading{opacity:0;visibility:hidden;pointer-events:none}.p3d-preview.is-error .p3d-loading{display:none}@keyframes p8spin{to{transform:rotate(1turn)}}
.p3d-hint{bottom:18px;padding:9px 14px;border-radius:999px;background:rgba(255,255,255,.88);backdrop-filter:blur(16px);border:1px solid rgba(37,59,45,.10);box-shadow:0 8px 24px rgba(25,45,33,.08);font:650 9px/1 Manrope,sans-serif;color:#667269}
.p3d-selection{grid-template-columns:repeat(4,1fr);background:rgba(255,255,255,.96);border-top:1px solid var(--p8-line)}.p3d-selection>div{padding:15px 17px 16px}.p3d-selection small{font:750 8px/1 Manrope,sans-serif;color:#8a938d}.p3d-selection strong{font:750 11px/1.3 Manrope,sans-serif;color:#20392b}
/* controls */
.home-v5 .p4-control-row{min-height:72px;border-bottom:1px solid rgba(36,58,44,.10);gap:14px}.home-v5 .p4-step{width:30px;height:30px;border-radius:50%;background:#294d39;color:#fff;font-size:11px}.home-v5 .p4-control-row>b{font-size:11px;letter-spacing:-.01em}.home-v5 .p4-size-buttons button,.home-v5 .p4-qty button{min-width:64px;height:38px;border-radius:10px;border:1px solid #d5ddd7;background:#fff;font:750 10px Manrope,sans-serif}.home-v5 .p4-size-buttons button.active{background:#edf3ef;border-color:#294d39;box-shadow:inset 0 0 0 1px #294d39}.home-v5 .p4-swatches button{width:34px;height:34px;border:3px solid #fff;box-shadow:0 0 0 1px #b9c3bc,0 4px 12px rgba(28,46,35,.08)}.home-v5 .p4-swatches button.active{box-shadow:0 0 0 2px #294d39,0 4px 14px rgba(28,46,35,.10)}
.home-v5 .p4-seat-choices button{min-width:76px;padding:9px 8px 7px;border-radius:12px;border:1px solid #d7dfda;background:#fff}.home-v5 .p4-seat-choices button.active{background:#edf3ef;border-color:#294d39;box-shadow:inset 0 0 0 1px #294d39}.home-v5 .p4-seat-choices svg{width:64px;height:46px;color:#9f714f}.home-v5 .p4-seat-choices small{font-size:8px;font-weight:750}
.home-v5 .p4-plant-choices button{min-width:88px;padding:9px 10px;border:1px solid #d7dfda;border-radius:12px;background:#fff}.home-v5 .p4-plant-choices button.active{background:#edf3ef;border-color:#294d39;box-shadow:inset 0 0 0 1px #294d39}.home-v5 .p4-plant-choices img{display:none}.home-v5 .p4-plant-choices button:before{content:'';display:block;width:64px;height:32px;margin:0 auto 5px;border-radius:18px 18px 12px 12px;background:radial-gradient(ellipse at 30% 55%,#6f8d62 0 24%,transparent 25%),radial-gradient(ellipse at 55% 42%,#315b40 0 27%,transparent 28%),radial-gradient(ellipse at 73% 60%,#4f744b 0 24%,transparent 25%),linear-gradient(#f3f6f1,#f3f6f1)}.home-v5 .p4-plant-choices button:nth-child(1):before{background:repeating-linear-gradient(76deg,transparent 0 5px,#58784d 6px 8px,transparent 9px 13px),linear-gradient(#f3f6f1,#f3f6f1)}.home-v5 .p4-plant-choices button:nth-child(2):before{background:radial-gradient(circle at 25% 42%,#c9aa5b 0 4px,transparent 5px),radial-gradient(circle at 62% 58%,#9c728d 0 4px,transparent 5px),radial-gradient(ellipse at 50% 65%,#547849 0 24%,transparent 25%),linear-gradient(#f3f6f1,#f3f6f1)}
.home-v5 .p4-price-row{padding-top:24px}.home-v5 .p4-price strong{font-size:clamp(32px,2.5vw,50px);letter-spacing:-.035em}.home-v5 .p4-price-row .p4-btn{min-height:48px;border-radius:12px;padding-inline:28px;box-shadow:0 12px 28px rgba(27,60,42,.16)}
/* full configurator */
.config-v5 .preview-stage{background:linear-gradient(145deg,#e6e0d5,#f8f5ee 55%,#d8d0c2);padding:clamp(18px,3vw,42px)}.config-v5 .preview-stage #planter-preview{width:min(960px,100%)}.config-v5 .p3d-canvas-wrap{height:min(62vh,680px)}.config-v5 .config-panel{background:#fff}.config-v5 .option-card,.config-v5 .swatch-card,.config-v5 .seat-card,.config-v5 .plant-card,.config-v5 .feature-toggle{border-radius:16px;border-color:#dce3de}.config-v5 .option-card.selected,.config-v5 .swatch-card.selected,.config-v5 .seat-card.selected,.config-v5 .plant-card.selected,.config-v5 .feature-toggle.selected{background:#edf3ef;border-color:#294d39;box-shadow:inset 0 0 0 1px #294d39}
@media(max-width:1020px){.p3d-canvas-wrap,.p3d-preview.is-compact .p3d-canvas-wrap{height:430px}.home-v5 .p4-config-copy{padding:44px 30px}.home-v5 .p4-config-copy h2{font-size:52px}.home-v5 .p4-config-controls{padding:28px}}
@media(max-width:620px){.p3d-preview{border-radius:20px}.p3d-toolbar-simple{height:52px}.p3d-canvas-wrap,.p3d-preview.is-compact .p3d-canvas-wrap{height:350px}.p3d-hint{bottom:11px;font-size:7px}.p3d-selection{grid-template-columns:1fr 1fr}.p3d-selection>div{padding:10px 12px}.p3d-selection strong{font-size:9px}.home-v5 .p4-config-copy{padding:36px 22px}.home-v5 .p4-config-copy h2{font-size:44px}.home-v5 .p4-config-preview{padding:14px}.home-v5 .p4-config-controls{padding:22px}.home-v5 .p4-control-row{min-height:auto;padding:16px 0;align-items:flex-start;flex-wrap:wrap}.home-v5 .p4-control-row>b{width:calc(100% - 48px);padding-top:8px}.home-v5 .p4-size-buttons,.home-v5 .p4-swatches,.home-v5 .p4-seat-choices,.home-v5 .p4-plant-choices{width:100%;margin-left:44px;overflow-x:auto;padding-bottom:4px}.home-v5 .p4-price-row{align-items:flex-end}.config-v5 .p3d-canvas-wrap{height:390px}}
@media(prefers-reduced-motion:reduce){.p3d-loading span{animation:none}}
.config-v5 .feature-symbol{width:42px;height:42px;display:grid;place-items:center;border:1px solid #d8e0da;border-radius:12px;color:#294d39;background:#f6f8f5}.config-v5 .feature-symbol svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
