.pergola-planner .page-heading h1{font-size:var(--customer-type-scale-42);line-height:1.2}.customer-site .pergola-planner{padding:0 0 var(--customer-space-16)}.pergola-planner .planner-introduction{margin-block-end:var(--customer-space-6)}.pergola-planner .page-heading{max-width:none;margin:0}.pergola-planner .art-text-opening{padding-block:var(--customer-space-10) var(--customer-space-12)}.pergola-planner .art-text-opening>.page-heading{gap:var(--customer-space-14);grid-template-columns:repeat(2,minmax(0,1fr))}.pergola-planner .page-heading h1{letter-spacing:-.035em;text-wrap:balance}.pergola-planner .page-heading p{max-width:var(--customer-width-intro);padding-block-start:var(--customer-space-2)}.pergola-planner .product-workbench{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;display:grid}.pergola-planner .product-editor{min-width:0;padding:var(--customer-space-6) 0 var(--customer-space-6) var(--customer-space-8);border-inline-end:1px solid var(--customer-border)}.pergola-planner .product-filter,.pergola-planner .product-measurements,.pergola-planner .product-appearance,.pergola-planner .product-sides>div{gap:var(--customer-space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.pergola-planner .product-filter{margin-block-end:var(--customer-space-5)}.pergola-planner [data-slot=field]{gap:var(--customer-space-2);min-width:0}.pergola-planner [data-slot=field-label]{justify-content:space-between;align-items:center;gap:var(--customer-space-2);font-size:var(--customer-type-small);font-weight:500;line-height:1.6;display:flex}.pergola-planner :is(input,select){background:var(--customer-surface);border:1px solid var(--customer-border);width:100%;min-width:0;min-height:48px;color:var(--customer-ink);font-family:var(--customer-font-body);font-size:var(--customer-type-ui);padding:var(--customer-space-2) var(--customer-space-3);caret-color:var(--customer-ink);border-radius:0}.pergola-planner select{text-overflow:ellipsis;padding-inline-end:var(--customer-space-7)}.pergola-planner input::placeholder{color:var(--customer-muted)}.pergola-planner :is(button,input,select,summary):focus-visible{outline:var(--customer-focus-width) solid var(--customer-ink);outline-offset:var(--customer-focus-offset);scroll-margin-block:var(--customer-space-8)}.pergola-planner input[aria-invalid=true]{border-style:dashed}.pergola-planner :is(button,select):disabled{opacity:.55;cursor:not-allowed}.pergola-planner [data-slot=field-description]{font-size:var(--customer-type-note);color:var(--customer-muted);line-height:1.7}.pergola-planner .product-section-heading{margin-block:var(--customer-space-6) var(--customer-space-4)}.pergola-planner h2{font-family:var(--customer-font-heading);font-weight:500;line-height:1.4}.pergola-planner .product-section-heading h2{font-size:var(--customer-type-scale-28);margin:0}.pergola-planner .product-measurements{margin-block:var(--customer-space-5)}.pergola-planner .product-hint{font-size:var(--customer-type-small);margin-block:var(--customer-space-3);color:var(--customer-muted);line-height:1.8}.pergola-planner .product-appearance{margin-block-end:var(--customer-space-5)}.pergola-planner .product-sides{border:0;border-block-start:1px solid var(--customer-border);padding:var(--customer-space-4) 0 0;margin:var(--customer-space-6) 0}.pergola-planner .product-sides legend{font-size:var(--customer-type-ui);padding-inline-end:var(--customer-space-4);font-weight:500}.pergola-planner .product-accessories{border:0;border-block-start:1px solid var(--customer-border);padding:var(--customer-space-4) 0 0;margin:var(--customer-space-6) 0}.pergola-planner .product-accessories legend{font-size:var(--customer-type-ui);padding-inline-end:var(--customer-space-4);font-weight:500}.pergola-planner .product-accessories>p,.pergola-planner .product-accessory-row p{font-size:var(--customer-type-small);color:var(--customer-muted);margin:0;line-height:1.8}.pergola-planner .product-accessory-row{gap:var(--customer-space-4);padding-block:var(--customer-space-4);border-block-end:1px solid var(--customer-border);grid-template-columns:minmax(0,1fr) minmax(125px,.6fr);align-items:center;display:grid}.pergola-planner .product-accessory-toggle{align-items:center;gap:var(--customer-space-3);cursor:pointer;min-height:44px;font-size:var(--customer-type-ui);font-weight:500;display:flex}.pergola-planner .product-accessory-toggle input[type=checkbox]{width:20px;height:20px;min-height:20px;accent-color:var(--customer-ink);cursor:pointer;flex-shrink:0;padding:0}.pergola-planner .product-accessory-row p{padding-inline-start:var(--customer-space-8)}.pergola-planner .composition-live-total{gap:var(--customer-space-1);padding:var(--customer-space-4) 0;margin-block:var(--customer-space-4);border-block:var(--customer-border-width) solid var(--customer-border);font-size:var(--customer-type-small);color:var(--customer-ink);background:0 0;grid-template-columns:minmax(0,1fr);align-items:baseline;display:grid}.pergola-planner .composition-live-total strong{font-size:var(--customer-type-price-amount);font-variant-numeric:tabular-nums;font-weight:400;line-height:1.4}.pergola-planner .composition-live-total small{font-size:var(--customer-type-note);grid-column:1/-1}.pergola-planner .product-current-lines li>span small{color:var(--customer-ink);font-size:var(--customer-type-note);display:block}.pergola-planner .product-opening{margin-block:var(--customer-space-5)}.pergola-planner input[type=range]{min-height:32px;accent-color:var(--customer-ink);cursor:pointer;direction:ltr;border:0;padding:0}.pergola-planner .product-current-estimate{background:var(--customer-surface-subtle);padding:var(--customer-space-6);margin-block:var(--customer-space-4);color:var(--customer-ink)}.pergola-planner .product-current-estimate>span,.pergola-planner .product-project-total>span{font-size:var(--customer-type-small);display:block}.pergola-planner .product-current-estimate>strong,.pergola-planner .product-project-total>strong{font-size:var(--customer-type-scale-28);font-variant-numeric:tabular-nums;margin-block:var(--customer-space-2);font-weight:500;line-height:1.5;display:block}.pergola-planner .product-current-estimate>strong.product-quote-needed{font-size:var(--customer-type-scale-23)}.pergola-planner .product-current-estimate p,.pergola-planner .product-project-total p{font-size:var(--customer-type-small);margin:0;line-height:1.8}.pergola-planner .product-errors,.pergola-planner .product-current-lines{font-size:var(--customer-type-small);margin-block:var(--customer-space-3) 0;padding-inline-start:var(--customer-space-5);line-height:1.8}.pergola-planner .product-current-lines{padding:var(--customer-space-3) 0 0;border-block-start:1px solid var(--customer-border);list-style:none}.pergola-planner .product-current-lines li{justify-content:space-between;gap:var(--customer-space-2);padding-block:var(--customer-space-1);flex-wrap:wrap;display:flex}.pergola-planner .product-current-lines b{font-variant-numeric:tabular-nums;font-weight:500}.pergola-planner .product-details{font-size:var(--customer-type-small);margin-block:var(--customer-space-4);line-height:1.8}.pergola-planner .product-details summary{cursor:pointer;align-content:center;min-height:44px}.pergola-planner .product-details ul{padding-inline-start:var(--customer-space-5)}.pergola-planner .product-add,.pergola-planner .product-project>.customer-action{width:100%;font-size:var(--customer-type-ui)}.pergola-planner .product-action-message{min-height:24px;font-size:var(--customer-type-small);margin-block:var(--customer-space-2)}.pergola-planner .product-empty{padding-block:var(--customer-space-5);font-size:var(--customer-type-ui)}.pergola-planner .product-project{border-block-start:1px solid var(--customer-border);margin-block-start:var(--customer-space-6);padding-block-start:var(--customer-space-5)}.pergola-planner .product-project-heading{justify-content:space-between;align-items:baseline;gap:var(--customer-space-4);display:flex}.pergola-planner .product-project-heading h2{font-size:var(--customer-type-scale-28);margin:0}.pergola-planner .product-project-heading>span,.pergola-planner .product-project>p{font-size:var(--customer-type-small);color:var(--customer-muted);line-height:1.8}.pergola-planner .product-project>ol{margin:var(--customer-space-3) 0;padding:0;list-style:none}.pergola-planner .product-project>ol>li{justify-content:space-between;gap:var(--customer-space-3);padding-block:var(--customer-space-4);border-block-end:1px solid var(--customer-border);font-size:var(--customer-type-small);display:flex}.pergola-planner .product-project li>div{gap:var(--customer-space-1);min-width:0;display:grid}.pergola-planner .product-project li strong,.pergola-planner .product-project li b{font-weight:500}.pergola-planner .product-project li :is(span,small){font-size:var(--customer-type-small);color:var(--customer-muted);line-height:1.8}.pergola-planner .product-project li b{font-variant-numeric:tabular-nums}.pergola-planner .product-project li button{border:1px solid var(--customer-border);width:44px;height:44px;color:var(--customer-ink);cursor:pointer;background:0 0;flex-shrink:0;place-items:center;display:grid}.pergola-planner .product-project li button:hover{background:var(--customer-highlight)}.pergola-planner .product-project li button svg{width:18px;height:18px}.pergola-planner .product-project-total{margin-block:var(--customer-space-5)}.pergola-planner .product-clear{min-height:44px;margin:var(--customer-space-3) auto 0;text-underline-offset:.2em;cursor:pointer;font-size:var(--customer-type-small);color:var(--customer-ink);background:0 0;border:0;text-decoration:underline;display:block}.pergola-planner .product-preview{top:var(--customer-space-6);min-width:0;padding:var(--customer-space-6) var(--customer-space-6) 0 0;align-self:start;position:sticky}.pergola-planner .product-preview-heading h2{font-size:var(--customer-type-scale-28);margin:0 0 var(--customer-space-1)}.pergola-planner .product-preview-heading>span{font-size:var(--customer-type-small);color:var(--customer-muted)}.pergola-planner .product-visual-root{min-width:0;--planner-visual-surface:var(--customer-surface-subtle);margin-block-start:var(--customer-space-3)}.pergola-planner .product-visual-viewport{touch-action:pan-y;background:var(--customer-surface-subtle);width:100%;height:clamp(300px,27vw,400px);min-height:300px;position:relative;overflow:hidden}.pergola-planner .product-visual-canvas{touch-action:pan-y;outline-offset:-4px;width:100%;height:100%;display:block}.pergola-planner .product-visual-toolbar{justify-content:space-between;gap:var(--customer-space-2);padding-block:var(--customer-space-2);border:0;flex-wrap:wrap;display:flex}.pergola-planner .product-visual-views,.pergola-planner .product-visual-actions{gap:var(--customer-space-1);display:flex}.pergola-planner .product-visual-actions{justify-content:center;margin-block-start:var(--customer-space-3)}.pergola-planner .product-visual-actions button{min-width:44px;min-height:44px;padding:var(--customer-space-2)}.pergola-planner .product-visual-toolbar button{justify-content:center;align-items:center;gap:var(--customer-space-1);min-width:44px;min-height:44px;padding:var(--customer-space-2);color:var(--customer-ink);font-family:var(--customer-font-body);font-size:var(--customer-type-small);cursor:pointer;background:0 0;border:0;display:inline-flex}.pergola-planner .product-visual-views button{border-block-end:2px solid #0000;border-radius:0}.pergola-planner .product-visual-views button[data-state=on]{border-block-end-color:var(--customer-ink)}.pergola-planner .product-visual-toolbar button:hover{background:var(--customer-tab-hover)}.pergola-planner .product-visual-toolbar svg{width:18px;height:18px}.pergola-planner .product-visual-caption,.pergola-planner .product-preview-note{font-size:var(--customer-type-note);margin-block:var(--customer-space-2);color:var(--customer-muted);line-height:1.8}.pergola-planner .product-visual-loading,.pergola-planner .product-visual-fallback{padding:var(--customer-space-6);text-align:center;background:var(--customer-surface);font-size:var(--customer-type-small);place-content:center;display:grid;position:absolute;inset:0}.pergola-planner .product-editor{padding-block-start:0}.pergola-planner .planner-sections{width:100%}.pergola-planner .planner-section{border-block-end:1px solid var(--customer-border)}.pergola-planner .planner-section-trigger{align-items:center;gap:var(--customer-space-4);width:100%;padding:var(--customer-space-5) 0;color:var(--customer-ink);font-family:var(--customer-font-body);text-align:start;box-shadow:none;cursor:pointer;background:0 0;border:0;border-radius:0;font-weight:500;text-decoration:none;display:flex}.pergola-planner .planner-section-trigger>span{gap:var(--customer-space-1);min-width:0;display:grid}.pergola-planner .planner-section-title{font-family:var(--customer-font-heading);font-size:var(--customer-type-scale-28);letter-spacing:-.03em;font-weight:500;line-height:1.5}.pergola-planner .planner-section-summary{font-size:var(--customer-type-note);color:var(--customer-muted);font-weight:400;line-height:1.7}.pergola-planner .planner-section-trigger>svg{width:18px;height:18px;color:var(--customer-ink);flex-shrink:0}.pergola-planner .planner-section-trigger:hover .planner-section-title{text-underline-offset:4px;text-decoration:underline}.pergola-planner .planner-section-trigger[data-state=open] .planner-section-title{font-weight:600}.pergola-planner .planner-section-content{padding-block-end:var(--customer-space-5)}.pergola-planner .planner-section-content .product-hint:first-child{margin-block-start:0}.pergola-planner .planner-section-content .product-accessories{border:0;margin:0;padding:0}.pergola-planner .planner-next{font-size:var(--customer-type-small);margin-block-start:var(--customer-space-4)}.pergola-planner .planner-section-intro,.pergola-planner .planner-layer-note{font-size:var(--customer-type-small);color:var(--customer-muted);line-height:1.8}.pergola-planner .planner-side-tabs{margin-block:var(--customer-space-4);border-block-end:var(--customer-border-width) solid var(--customer-border);grid-template-columns:repeat(4,minmax(0,1fr));gap:0;display:grid}.pergola-planner .planner-side-tabs button,.pergola-planner .planner-preview-modes button{height:auto;min-height:48px;color:var(--customer-muted);padding:var(--customer-space-3) var(--customer-space-2);font-family:var(--customer-font-body);font-size:var(--customer-type-small);cursor:pointer;white-space:normal;background:0 0;border:0;border-block-end:2px solid #0000;border-radius:0;font-weight:400;line-height:1.6}.pergola-planner .planner-side-tabs button[data-state=on],.pergola-planner .planner-preview-modes button[data-state=on]{color:var(--customer-ink);border-block-end-color:var(--customer-ink);background:0 0}.pergola-planner .planner-side-tabs button:hover:not(:disabled),.pergola-planner .planner-preview-modes button:hover{background:var(--customer-tab-hover);color:var(--customer-ink)}.pergola-planner .planner-side-tabs button small{font-size:var(--customer-type-note);font-weight:400;line-height:1.6;display:block}.pergola-planner .planner-side-layers{margin-block:var(--customer-space-4);gap:0;min-width:0}.pergola-planner .planner-side-layers legend{font-size:var(--customer-type-small);margin-block-end:var(--customer-space-2);font-weight:500}.pergola-planner .planner-side-layer{padding-block:var(--customer-space-3);border-block-end:1px solid var(--customer-border)}.pergola-planner .planner-side-layer .product-opening{margin:var(--customer-space-2) 0 0;padding-inline-start:var(--customer-space-8)}.pergola-planner .planner-side-layer [data-slot=field-label]{font-size:var(--customer-type-note)}.pergola-planner .product-opening output{font-variant-numeric:tabular-nums;text-align:end;min-width:4ch}.pergola-planner .planner-range-ends{font-size:var(--customer-type-note);color:var(--customer-muted);direction:ltr;justify-content:space-between;display:flex}.pergola-planner .planner-layer-note{margin-block:var(--customer-space-4) 0}.pergola-planner .planner-validation{padding:var(--customer-space-4) 0;border-block-end:1px solid var(--customer-border);font-size:var(--customer-type-small);line-height:1.8}.pergola-planner .planner-validation>p{margin:0;font-weight:500}.pergola-planner .planner-validation .customer-action{margin-block-start:var(--customer-space-2)}.pergola-planner .product-add{margin-block-start:var(--customer-space-5)}.pergola-planner .planner-preview-modes{margin-block:var(--customer-space-3);border-block-end:var(--customer-border-width) solid var(--customer-border);grid-template-columns:repeat(2,minmax(0,1fr));gap:0;display:grid}.pergola-planner .planner-live-visual[hidden]{display:none}.pergola-planner .planner-reference-photo{padding-block:var(--customer-space-2)}.pergola-planner .planner-reference-photo figure{margin:var(--customer-space-3) 0 0}.pergola-planner .planner-photo-frame{background:var(--customer-surface-subtle);height:clamp(240px,24vw,340px);padding:var(--customer-space-3);place-items:center;display:grid;position:relative}.pergola-planner .planner-photo-frame img{object-fit:contain;width:100%;height:100%;min-height:0}.pergola-planner .planner-photo-loading{background:var(--customer-surface);color:var(--customer-muted);font-size:var(--customer-type-small);place-items:center;display:grid;position:absolute;inset:0}.pergola-planner .planner-reference-photo figcaption,.pergola-planner .planner-photo-note{font-size:var(--customer-type-note);color:var(--customer-muted);margin-block:var(--customer-space-2);line-height:1.8}.pergola-planner .planner-photo-error{place-content:center;gap:var(--customer-space-3);min-height:240px;display:grid}@media (max-width:950px){.pergola-planner .product-editor{padding-inline-start:var(--customer-space-5);padding-inline-end:0}.pergola-planner .product-preview{padding-inline-start:0;padding-inline-end:var(--customer-space-5)}.pergola-planner .product-filter{grid-template-columns:1fr}.pergola-planner .product-visual-viewport{height:380px}}@media (max-width:700px){.customer-site .pergola-planner{padding-block:0 var(--customer-space-8)}.pergola-planner .art-text-opening{padding-block:var(--customer-space-7) var(--customer-space-8)}.pergola-planner .art-text-opening>.page-heading{gap:var(--customer-space-4);grid-template-columns:minmax(0,1fr)}.pergola-planner .page-heading h1{font-size:var(--customer-type-scale-42);line-height:1.2}.pergola-planner .page-heading p{font-size:var(--customer-type-body);padding:0}.pergola-planner .planner-introduction{margin-block-end:var(--customer-space-5)}.pergola-planner .product-workbench{border:0;flex-direction:column;display:flex}.pergola-planner .product-preview{z-index:3;width:100%;padding:var(--customer-space-2) 0 0;background:var(--customer-surface);border-block:1px solid var(--customer-border);order:-1;position:sticky;top:0}.pergola-planner .product-preview-heading h2{font-size:var(--customer-type-ui);font-family:var(--customer-font-body);white-space:nowrap;text-overflow:ellipsis;max-width:100%;margin:0;font-weight:500;overflow:hidden}.pergola-planner .product-preview[data-preview-mode=photo]{position:relative}.pergola-planner .product-preview-heading>span,.pergola-planner .product-preview-note,.pergola-planner .product-visual-caption{display:none}.pergola-planner .product-visual-root{margin:0}.pergola-planner .product-visual-viewport{height:min(17dvh,150px);min-height:120px}.pergola-planner .composition-live-total{gap:0 var(--customer-space-2);margin-block:var(--customer-space-1);padding:var(--customer-space-2) 0;font-size:var(--customer-type-note);grid-template-columns:minmax(0,1fr) auto}.pergola-planner .composition-live-total strong{font-size:var(--customer-type-ui)}.pergola-planner .composition-live-total small{font-size:var(--customer-type-note)}.pergola-planner .product-accessory-row{gap:var(--customer-space-3);grid-template-columns:minmax(0,1fr) 110px}.pergola-planner .product-visual-toolbar{padding-block:var(--customer-space-1);gap:var(--customer-space-1);border-block-end:0}.pergola-planner .product-visual-toolbar button{min-width:44px;min-height:44px;font-size:var(--customer-type-note);padding:var(--customer-space-1) var(--customer-space-2)}.pergola-planner .product-visual-actions{margin-block:0 var(--customer-space-1)}.pergola-planner .product-visual-actions button{min-width:44px;min-height:44px;padding:var(--customer-space-1)}.pergola-planner .product-editor{width:100%;padding:var(--customer-space-5) 0;border:0}.pergola-planner .product-filter{gap:var(--customer-space-3);grid-template-columns:repeat(2,minmax(0,1fr))}.pergola-planner .product-measurements,.pergola-planner .product-appearance,.pergola-planner .product-sides>div{gap:var(--customer-space-3)}.pergola-planner .product-section-heading{margin-block:var(--customer-space-5) var(--customer-space-3)}.pergola-planner .product-section-heading h2{font-size:var(--customer-type-scale-23)}.pergola-planner :is(button,input,select,summary):focus-visible{scroll-margin-block-start:calc(var(--planner-sticky-height,440px) + var(--customer-space-8))}.pergola-planner .product-workbench[data-preview-mode=photo] :is(button,input,select,summary):focus-visible{scroll-margin-block-start:var(--customer-space-8)}.pergola-planner .planner-section-trigger{padding-block:var(--customer-space-4)}.pergola-planner .planner-section-title{font-size:var(--customer-type-scale-23)}.pergola-planner .planner-side-tabs button{padding-inline:var(--customer-space-1)}.pergola-planner .planner-side-tabs button small{font-size:var(--customer-type-note)}.pergola-planner .planner-preview-modes{margin-block:var(--customer-space-1)}.pergola-planner .planner-preview-modes button{min-height:44px;font-size:var(--customer-type-note);padding:var(--customer-space-1)}.pergola-planner .planner-side-layer .product-opening{padding-inline-start:0}.pergola-planner .planner-photo-frame{height:min(23dvh,195px);min-height:150px}.pergola-planner .planner-reference-photo{padding:0}.pergola-planner .planner-reference-photo figure{margin:var(--customer-space-1) 0 0}.pergola-planner .planner-reference-photo [data-slot=field-label]{font-size:var(--customer-type-note)}.pergola-planner .planner-reference-photo select{min-height:36px;font-size:var(--customer-type-note);padding-block:var(--customer-space-1)}.pergola-planner .planner-photo-note{margin-block:var(--customer-space-1)}.pergola-planner .product-current-estimate{padding:var(--customer-space-4)}.pergola-planner .product-current-estimate>strong{font-size:var(--customer-type-scale-23)}}@media (max-height:600px) and (max-width:700px){.pergola-planner .product-preview{position:relative}.pergola-planner :is(button,input,select,summary):focus-visible{scroll-margin-block-start:var(--customer-space-8)}}@media (prefers-reduced-motion:reduce){.pergola-planner *{scroll-behavior:auto;transition-duration:0s!important}}.pergola-planner .product-visual-fallback{gap:var(--customer-space-2);padding:var(--customer-space-3)}.pergola-planner .product-visual-fallback p{margin:0;line-height:1.6}.pergola-planner .product-visual-root[data-scene-status=unavailable] .product-visual-viewport{height:auto;overflow:visible}.pergola-planner .product-visual-root[data-scene-status=unavailable] .product-visual-fallback{min-height:120px;position:relative}.pergola-planner .planner-error-limits p{margin-block:var(--customer-space-2);font-size:var(--customer-type-small)}
