/* PF Configurator 0.4.9 – frozen buttons + explicit square swatch grid. Scoped to PF-enabled products. */
:root{
  --pfc-peach:var(--pf-peach,#eda077);
  --pfc-black:var(--pf-black,#000);
  --pfc-white:var(--pf-white,#fff);
  --pfc-line:var(--pf-line,#dedbd8);
  --pfc-soft:var(--pf-text-soft,#5b5856);
  --pfc-bg:var(--pf-peach-050,#fff7f2);
  --pfc-font:var(--pf-font,Helvetica,Arial,sans-serif);
}

.pfc-funnel,.pfc-funnel *{box-sizing:border-box}
.pfc-funnel{width:100%;max-width:100%;min-width:0;margin-top:clamp(.9rem,2vw,1.35rem);font-family:var(--pfc-font);color:var(--pfc-black);overflow:visible}
.pfc-kicker{display:block;color:#9a5b3d;font-size:.69rem;font-weight:800;letter-spacing:.18em;line-height:1.3;text-transform:uppercase}

/* Entry + applied state */
.pfc-entry{display:grid;gap:clamp(.75rem,2vw,1rem);width:100%;min-width:0;padding:clamp(1rem,2vw,1.35rem);border:.0625rem solid var(--pfc-line);border-left:.3rem solid var(--pfc-peach);background:var(--pfc-white)}
.pfc-entry__copy{display:grid;gap:.28rem;min-width:0}.pfc-entry__copy>strong{max-width:100%;font-size:clamp(1.05rem,.98rem + .3vw,1.28rem);line-height:1.22;overflow-wrap:anywhere}.pfc-entry__copy>small{max-width:40rem;color:var(--pfc-soft);font-size:.84rem;line-height:1.5}
.pfc-button{appearance:none;max-width:100%;min-height:2.9rem;padding:.72rem 1.05rem;border:.0625rem solid var(--pfc-black);border-radius:0;font:800 .9rem/1.2 var(--pfc-font);white-space:normal;overflow-wrap:anywhere;cursor:pointer;transition:background .18s ease,color .18s ease,border-color .18s ease,opacity .18s ease}
.pfc-button:disabled{cursor:not-allowed;opacity:.35}.pfc-button--primary{background:var(--pfc-black);color:var(--pfc-white)}.pfc-button--primary:hover:not(:disabled),.pfc-button--primary:focus-visible{background:var(--pfc-white);color:var(--pfc-black)}.pfc-button--secondary{background:var(--pfc-white);color:var(--pfc-black)}.pfc-button--secondary:hover:not(:disabled),.pfc-button--secondary:focus-visible{background:var(--pfc-black);color:var(--pfc-white)}.pfc-button--ghost{border-color:transparent;background:transparent;color:var(--pfc-black);box-shadow:inset 0 0 0 .0625rem var(--pfc-line)}.pfc-button--configure{width:100%}
.pfc-text-button{appearance:none;max-width:100%;min-width:0;padding:.25rem 0;border:0;background:transparent;color:var(--pfc-black);font:800 .82rem/1.3 var(--pfc-font);text-decoration:underline;text-decoration-thickness:.07em;text-underline-offset:.2em;white-space:normal;overflow-wrap:anywhere;cursor:pointer}.pfc-text-button--muted{color:var(--pfc-soft)}

.pfc-applied{width:100%;max-width:100%;min-width:0;margin-top:clamp(.85rem,2vw,1.15rem);padding:clamp(1rem,2vw,1.35rem);border:.0625rem solid var(--pfc-black);background:var(--pfc-white);overflow:hidden}.pfc-applied[hidden]{display:none!important}
.pfc-applied__head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;min-width:0;padding-bottom:.9rem;border-bottom:.0625rem solid var(--pfc-line)}.pfc-applied__head>div{display:grid;gap:.25rem;min-width:0}.pfc-applied__head strong{font-size:1.12rem}.pfc-applied__actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.35rem .8rem;min-width:0;max-width:100%}
.pfc-purchase-actions{display:grid;grid-template-columns:1fr;gap:.55rem;margin-top:1rem}.pfc-purchase-status{min-height:1.3em;margin:.65rem 0 0;color:var(--pfc-soft);font-size:.78rem;line-height:1.4}

.pfc-summary-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 1rem;min-width:0}.pfc-summary-list>div{display:grid;grid-template-columns:minmax(0,1fr);gap:.16rem;min-width:0;padding:.55rem 0;border-bottom:.0625rem solid var(--pfc-line)}.pfc-summary-list span{min-width:0;color:var(--pfc-soft);font-size:.77rem;overflow-wrap:anywhere}.pfc-summary-list strong{min-width:0;font-size:.82rem;line-height:1.4;text-align:left;overflow-wrap:anywhere}

/* Native Woo/YayExtra controls remain data/commerce owners but are not the visible PF interface. */
body.pfc-funnel-product form.cart>table.variations,body.pfc-funnel-product form.variations_form>table.variations,body.pfc-funnel-product form.cart .single_variation,body.pfc-funnel-product form.cart .woocommerce-variation-add-to-cart>.quantity,body.pfc-funnel-product form.cart .woocommerce-variation-add-to-cart>.single_add_to_cart_button,body.pfc-funnel-product form.cart>.quantity,body.pfc-funnel-product form.cart>.single_add_to_cart_button{position:absolute!important;width:1px!important;height:1px!important;margin:0!important;padding:0!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;clip-path:inset(50%)!important;white-space:nowrap!important;border:0!important}
.pfc-legacy-field-hidden,.pfc-legacy-variation-ui-hidden{display:none!important}
body.pfc-hide-legacy-ui form.cart .yayextra-text.hundegwicht,body.pfc-hide-legacy-ui form.cart .yayextra-text.hundegewicht,body.pfc-hide-legacy-ui form.cart .yayextra-text.grav1,body.pfc-hide-legacy-ui form.cart select.grav2,body.pfc-hide-legacy-ui form.cart input.farben-input,body.pfc-hide-legacy-ui form.cart textarea.farben-input{position:absolute!important;width:1px!important;height:1px!important;margin:0!important;padding:0!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;clip-path:inset(50%)!important;border:0!important}

/* One modal system for funnel, color picker and media viewer. No viewport-sized width calculations. */
.pfc-overlay[hidden],.pfc-picker[hidden],.pfc-media-viewer[hidden],.pfc-leave-confirm[hidden]{display:none!important}
.pfc-overlay,.pfc-picker,.pfc-media-viewer{position:fixed!important;inset:0!important;display:grid;place-items:center;box-sizing:border-box!important;width:auto!important;height:auto!important;min-width:0!important;min-height:0!important;max-width:none!important;max-height:none!important;margin:0!important;padding:clamp(.75rem,2vw,2rem)!important;overflow:hidden!important;transform:none!important;contain:layout paint}
.pfc-overlay{z-index:2147483000}.pfc-picker{z-index:2147483100}.pfc-media-viewer{z-index:2147483200}
.pfc-overlay__backdrop,.pfc-picker__backdrop,.pfc-media-viewer__backdrop{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;margin:0!important;padding:0!important;border:0!important;color:transparent!important;box-shadow:none!important;outline:0!important;cursor:pointer;touch-action:none;-webkit-appearance:none;appearance:none}
.pfc-overlay__backdrop{background:rgba(15,12,10,.46)!important;-webkit-backdrop-filter:blur(.75rem) saturate(.88);backdrop-filter:blur(.75rem) saturate(.88)}
.pfc-picker__backdrop{background:rgba(15,12,10,.48)!important;-webkit-backdrop-filter:blur(.75rem) saturate(.88);backdrop-filter:blur(.75rem) saturate(.88)}
.pfc-media-viewer__backdrop{background:rgba(12,10,9,.58)!important;-webkit-backdrop-filter:blur(.85rem) saturate(.82);backdrop-filter:blur(.85rem) saturate(.82)}
.pfc-overlay__backdrop:hover,.pfc-overlay__backdrop:focus,.pfc-overlay__backdrop:focus-visible,.pfc-picker__backdrop:hover,.pfc-picker__backdrop:focus,.pfc-picker__backdrop:focus-visible,.pfc-media-viewer__backdrop:hover,.pfc-media-viewer__backdrop:focus,.pfc-media-viewer__backdrop:focus-visible{color:transparent!important;box-shadow:none!important;outline:0!important;transform:none!important}
.pfc-overlay__backdrop:hover,.pfc-overlay__backdrop:focus,.pfc-overlay__backdrop:focus-visible{background:rgba(15,12,10,.46)!important}.pfc-picker__backdrop:hover,.pfc-picker__backdrop:focus,.pfc-picker__backdrop:focus-visible{background:rgba(15,12,10,.48)!important}.pfc-media-viewer__backdrop:hover,.pfc-media-viewer__backdrop:focus,.pfc-media-viewer__backdrop:focus-visible{background:rgba(12,10,9,.58)!important}

html.pfc-modal-open,body.pfc-modal-open{overflow:hidden!important;overscroll-behavior:none!important;max-width:100%!important}
body.pfc-modal-open{position:fixed!important;inset-inline:0!important;width:100%!important;margin:0!important;touch-action:none}

.pfc-dialog,.pfc-picker__sheet,.pfc-media-viewer__dialog{position:relative;z-index:1;box-sizing:border-box;min-width:0;min-height:0;max-width:100%;max-height:100%;border:.0625rem solid var(--pfc-black);background:var(--pfc-white);box-shadow:0 1.4rem 4.5rem rgba(0,0,0,.3);overflow:hidden}
.pfc-dialog{display:grid;grid-template-rows:auto minmax(0,1fr) auto;width:min(78rem,100%);height:min(53rem,100%)}
.pfc-dialog__header{display:grid;grid-template-columns:minmax(0,1fr) minmax(13rem,.42fr) auto;align-items:center;gap:1.2rem;min-width:0;padding:1rem clamp(1rem,2vw,1.5rem);border-bottom:.0625rem solid var(--pfc-line);background:var(--pfc-white)}
.pfc-dialog__brand{display:grid;gap:.22rem;min-width:0}.pfc-dialog__brand>strong{min-width:0;max-width:100%;overflow:hidden;font-size:.98rem;text-overflow:ellipsis;white-space:nowrap}.pfc-dialog__progress{display:grid;gap:.4rem;min-width:0}.pfc-dialog__progress>span{color:var(--pfc-soft);font-size:.72rem;font-weight:700;text-align:right;overflow-wrap:anywhere}.pfc-progress-track{height:.22rem;background:#ece9e7;overflow:hidden}.pfc-progress-track i{display:block;width:0;height:100%;background:var(--pfc-peach);transition:width .22s ease}
.pfc-dialog__close{appearance:none;display:grid;place-items:center;flex:0 0 auto;width:2.65rem;height:2.65rem;padding:0;border:.0625rem solid var(--pfc-black);border-radius:0;background:var(--pfc-white);color:var(--pfc-black);font:400 1.6rem/1 var(--pfc-font);cursor:pointer}.pfc-dialog__close:hover,.pfc-dialog__close:focus-visible{background:var(--pfc-black);color:var(--pfc-white)}
.pfc-dialog__main{min-width:0;min-height:0;max-width:100%;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;scrollbar-gutter:stable;padding:clamp(1.15rem,3vw,2.2rem);touch-action:pan-y}
.pfc-dialog__footer{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:1rem;min-width:0;padding:.85rem clamp(1rem,2vw,1.5rem);border-top:.0625rem solid var(--pfc-line);background:var(--pfc-white)}.pfc-dialog__draft{min-width:0;color:var(--pfc-soft);font-size:.7rem;text-align:center;overflow-wrap:anywhere}

.pfc-funnel-step{width:min(62rem,100%);max-width:100%;min-width:0;margin-inline:auto}.pfc-step-heading{display:grid;grid-template-columns:auto minmax(0,1fr);gap:clamp(.8rem,2vw,1.2rem);align-items:start;min-width:0;margin-bottom:clamp(1rem,2.5vw,1.8rem)}.pfc-step-heading__number{display:grid;place-items:center;min-width:2.5rem;height:2.5rem;padding:0 .55rem;background:var(--pfc-peach);color:var(--pfc-black);font-size:.8rem;font-weight:900}.pfc-step-heading>div{display:grid;gap:.32rem;min-width:0}.pfc-step-heading h2{max-width:100%;margin:0!important;color:var(--pfc-black)!important;font-family:var(--pfc-font)!important;font-size:clamp(1.6rem,1.35rem + 1vw,2.45rem)!important;font-weight:800!important;letter-spacing:-.035em!important;line-height:1.05!important;overflow-wrap:anywhere}.pfc-step-heading p{max-width:44rem;margin:0!important;color:var(--pfc-soft);font-size:.9rem;line-height:1.55;overflow-wrap:anywhere}

/* Variation groups */
/* Variation groups */
.pfc-variation-groups{display:grid;gap:1.1rem;min-width:0}
.pfc-option-group{min-width:0;padding:clamp(.72rem,.55rem + .55vw,1rem);border:.0625rem solid var(--pfc-line);background:var(--pfc-white)}
.pfc-option-group.is-error{border-color:#a40000;box-shadow:inset .22rem 0 0 #a40000}
.pfc-option-group__head{display:flex;align-items:baseline;gap:.65rem;min-width:0;margin-bottom:.7rem}
.pfc-option-group__head span{flex:0 0 auto;color:#9a5b3d;font-size:.65rem;font-weight:900;letter-spacing:.13em}
.pfc-option-group__head strong{min-width:0;max-width:100%;font-size:.9rem;overflow-wrap:anywhere}
.pfc-option-choices{display:flex;flex-wrap:wrap;gap:clamp(.32rem,.24rem + .24vw,.45rem);min-width:0}
.pfc-option-pill{all:unset!important;box-sizing:border-box!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;min-width:0!important;max-width:100%!important;min-height:clamp(2.35rem,2.15rem + .5vw,2.7rem)!important;padding:clamp(.48rem,.4rem + .2vw,.6rem) clamp(.55rem,.44rem + .34vw,.78rem)!important;border:.0625rem solid var(--pfc-line)!important;border-radius:0!important;background:var(--pfc-white)!important;color:var(--pfc-black)!important;font-family:var(--pfc-font)!important;font-size:clamp(.72rem,.67rem + .12vw,.8rem)!important;font-weight:800!important;line-height:1.2!important;text-align:center!important;white-space:normal!important;overflow-wrap:anywhere!important;cursor:pointer!important}
.pfc-option-pill::before,.pfc-option-pill::after{content:none!important;display:none!important}
.pfc-option-pill__label{display:block!important;min-width:0!important;max-width:100%!important;padding:0!important;margin:0!important;border:0!important;background:transparent!important;color:inherit!important;font:inherit!important;line-height:inherit!important;text-align:inherit!important;overflow-wrap:anywhere!important}
.pfc-option-pill:hover:not(:disabled),.pfc-option-pill:focus-visible{border-color:var(--pfc-black)!important;background:var(--pfc-black)!important;color:var(--pfc-white)!important;box-shadow:none!important;outline:0!important}
.pfc-option-pill.is-selected{border-color:var(--pfc-black)!important;background:var(--pfc-black)!important;color:var(--pfc-white)!important;box-shadow:none!important}
.pfc-option-pill.is-selected:hover:not(:disabled),.pfc-option-pill.is-selected:focus-visible{background:var(--pfc-black)!important;color:var(--pfc-white)!important;box-shadow:none!important}
.pfc-option-pill:disabled{opacity:.38!important;cursor:not-allowed!important}

/* Color step */
.pfc-color-guide{display:grid;grid-template-columns:minmax(10rem,.45fr) minmax(0,1fr);gap:1rem;align-items:center;min-width:0;margin:0 0 1.15rem;padding:.85rem;border:.0625rem solid var(--pfc-line);background:var(--pfc-bg)}.pfc-color-guide img{display:block;width:100%;height:auto!important;max-height:15rem;object-fit:contain;background:transparent}.pfc-color-guide figcaption{display:grid;gap:.3rem;min-width:0}.pfc-color-guide figcaption strong{font-size:.92rem}.pfc-color-guide figcaption span{color:var(--pfc-soft);font-size:.8rem;line-height:1.5}
.pfc-color-slots{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem;min-width:0}.pfc-color-slot{appearance:none;display:grid;grid-template-columns:auto 3.4rem minmax(0,1fr) auto;align-items:center;gap:.75rem;min-width:0;min-height:5.2rem;padding:.7rem;border:.0625rem solid var(--pfc-line);border-radius:0;background:var(--pfc-white);color:var(--pfc-black);text-align:left;cursor:pointer}.pfc-color-slot:hover,.pfc-color-slot:focus-visible,.pfc-color-slot.is-selected{border-color:var(--pfc-black)}.pfc-color-slot.is-error{border-color:#a40000;box-shadow:inset .22rem 0 0 #a40000}.pfc-slot-index{display:grid;place-items:center;width:2rem;height:2rem;background:var(--pfc-bg);font-size:.73rem;font-weight:900}.pfc-slot-preview{width:3.4rem;aspect-ratio:1;background:var(--pfc-bg) center/cover no-repeat;border:.0625rem solid var(--pfc-line)}.pfc-slot-copy{display:grid;gap:.2rem;min-width:0}.pfc-slot-copy b{font-size:.84rem}.pfc-slot-copy small{overflow:hidden;color:var(--pfc-soft);font-size:.72rem;text-overflow:ellipsis;white-space:nowrap}.pfc-slot-arrow{font-size:1.1rem}

/* Measurements */
.pfc-field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;min-width:0}.pfc-field-card{display:grid;gap:.52rem;min-width:0;padding:1rem;border:.0625rem solid var(--pfc-line);background:var(--pfc-white)}.pfc-field-card.is-error{border-color:#a40000;box-shadow:inset .22rem 0 0 #a40000}.pfc-field-card__label{font-size:.82rem;font-weight:800}.pfc-field-card__label em{color:#b10000;font-style:normal}.pfc-field-card>small{color:var(--pfc-soft);font-size:.7rem;line-height:1.45}.pfc-input-wrap{position:relative;display:block;min-width:0}.pfc-input-wrap input,.pfc-input-wrap select{width:100%;max-width:100%;min-height:3rem;padding:.65rem .75rem;border:.0625rem solid #cfcac7;border-radius:0;background:var(--pfc-white);color:var(--pfc-black);font:500 max(1rem,.84rem)/1.25 var(--pfc-font);outline:0}.pfc-input-wrap input:focus,.pfc-input-wrap select:focus{border-color:var(--pfc-black);box-shadow:0 0 0 .12rem rgba(237,160,119,.35)}.pfc-input-unit input{padding-right:3.3rem}.pfc-input-unit__suffix{position:absolute;top:50%;right:.8rem;transform:translateY(-50%);color:var(--pfc-soft);font-size:.8rem;font-weight:800;pointer-events:none}.pfc-input-unit input::-webkit-outer-spin-button,.pfc-input-unit input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.pfc-input-unit input[type=number]{-moz-appearance:textfield}.pfc-field-card--wide{grid-column:1/-1}.pfc-measurement-triplet{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.55rem;min-width:0}.pfc-measurement-mini{display:grid;gap:.35rem;min-width:0}.pfc-measurement-mini>span:first-child{min-height:2.2em;color:var(--pfc-soft);font-size:.7rem;font-weight:700;line-height:1.25}.pfc-measurement-mini.is-error .pfc-input-wrap input{border-color:#a40000}.pfc-field-card[hidden]{display:none!important}
.pfc-measurement-guides{margin-bottom:1rem}.pfc-measurement-guide{min-width:0;border:.0625rem solid var(--pfc-line);background:var(--pfc-bg)}.pfc-measurement-guide__head{display:grid;gap:.18rem;padding:.75rem 1rem;border-bottom:.0625rem solid var(--pfc-line)}.pfc-measurement-guide__head span{color:#9a5b3d;font-size:.62rem;font-weight:900;letter-spacing:.15em}.pfc-measurement-guide__head strong{font-size:.92rem}.pfc-measurement-guide__content{min-width:0;padding:.9rem 1rem;color:var(--pfc-soft);font-size:.83rem;line-height:1.58}.pfc-measurement-guide__content>:first-child{margin-top:0}.pfc-measurement-guide__content>:last-child{margin-bottom:0}.pfc-measurement-guide__media{min-width:0}.pfc-measurement-guide__media img,.pfc-measurement-guide__content>img{display:block;max-width:min(23rem,100%);height:auto;margin:.8rem auto 0;padding:.65rem;background:var(--pfc-white);box-sizing:border-box}

/* Engraving */
.pfc-engraving-choice{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem;margin-bottom:.75rem}.pfc-choice-card{appearance:none;display:grid;gap:.28rem;min-width:0;min-height:5rem;padding:.85rem;border:.0625rem solid var(--pfc-line);border-radius:0;background:var(--pfc-white);color:var(--pfc-black);text-align:left;cursor:pointer}.pfc-choice-card strong{font-size:.88rem}.pfc-choice-card small{color:var(--pfc-soft);font-size:.72rem}.pfc-choice-card.is-selected{border-color:var(--pfc-black);background:var(--pfc-black);color:var(--pfc-white)}.pfc-choice-card.is-selected small{color:var(--pfc-white)}
.pfc-engraving-details[hidden]{display:none!important}.pfc-engraving-details{display:grid;gap:.85rem;margin-top:.85rem}.pfc-engraving-gallery{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.55rem;min-width:0;margin:0}.pfc-engraving-image{appearance:none;position:relative;display:block;min-width:0;width:100%;padding:0;border:.0625rem solid var(--pfc-line);background:var(--pfc-white);line-height:0}.pfc-engraving-image:hover,.pfc-engraving-image:focus-visible{border-color:var(--pfc-black)}.pfc-engraving-image img{display:block;width:100%;aspect-ratio:4/3;object-fit:contain}.pfc-engraving-image__zoom{position:absolute;right:.45rem;bottom:.45rem;display:grid;place-items:center;width:1.8rem;height:1.8rem;border:.0625rem solid var(--pfc-black);background:rgba(255,255,255,.94);color:var(--pfc-black);font-size:1.05rem;font-weight:400;line-height:1}.pfc-engraving-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem;min-width:0}

/* Review */
.pfc-review-card{min-width:0;border:.0625rem solid var(--pfc-black);background:var(--pfc-white);overflow:hidden}.pfc-review-card__top{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-width:0;padding:.8rem 1rem;background:var(--pfc-black);color:var(--pfc-white)}.pfc-review-card__top>span{font-size:.65rem;font-weight:900;letter-spacing:.14em}.pfc-review-card__top>strong{min-width:0;font-size:1rem;text-align:right;overflow-wrap:anywhere}.pfc-review-card__top .amount{color:inherit!important}.pfc-review-card .pfc-summary-list{padding:.25rem 1rem}.pfc-button--apply{width:100%;margin-top:.75rem}

/* Color picker */
.pfc-picker__sheet{display:grid;grid-template-rows:auto minmax(0,1fr);width:min(72rem,100%);height:min(50rem,100%)}
.pfc-picker__top{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:1rem;min-width:0;padding:1rem 1.2rem;border-bottom:.0625rem solid var(--pfc-line);background:var(--pfc-white)}
.pfc-picker__top>div{display:grid;gap:.2rem;min-width:0}.pfc-picker__top strong{min-width:0;font-size:1.05rem;overflow-wrap:anywhere}.pfc-picker__top small{color:var(--pfc-soft);font-size:.7rem}
.pfc-swatch-grid{--pfc-swatch-cols:8;--pfc-swatch-size:7rem;display:grid!important;grid-template-columns:repeat(var(--pfc-swatch-cols),var(--pfc-swatch-size))!important;grid-auto-flow:row!important;grid-auto-rows:max-content!important;gap:clamp(.5rem,.75vw,.75rem)!important;justify-content:start!important;align-content:start!important;align-items:start!important;width:100%!important;max-width:100%!important;min-width:0!important;min-height:0!important;margin:0!important;padding:1rem!important;overflow-y:auto!important;overflow-x:hidden!important;scrollbar-gutter:stable!important;overscroll-behavior:contain!important;touch-action:pan-y!important;box-sizing:border-box!important}
.pfc-swatch-card{appearance:none!important;-webkit-appearance:none!important;box-sizing:border-box!important;display:grid!important;grid-template-rows:var(--pfc-swatch-size) auto!important;align-self:start!important;inline-size:var(--pfc-swatch-size)!important;block-size:auto!important;min-inline-size:0!important;max-inline-size:var(--pfc-swatch-size)!important;min-block-size:0!important;margin:0!important;padding:0!important;border:.0625rem solid var(--pfc-line)!important;border-radius:0!important;background:var(--pfc-white)!important;color:var(--pfc-black)!important;font-family:var(--pfc-font)!important;text-align:left!important;cursor:pointer!important;overflow:hidden!important;box-shadow:none!important;transform:none!important}
.pfc-swatch-card::before,.pfc-swatch-card::after{content:none!important;display:none!important}
.pfc-swatch-card__media{box-sizing:border-box!important;display:block!important;inline-size:var(--pfc-swatch-size)!important;block-size:var(--pfc-swatch-size)!important;min-inline-size:var(--pfc-swatch-size)!important;max-inline-size:var(--pfc-swatch-size)!important;min-block-size:var(--pfc-swatch-size)!important;max-block-size:var(--pfc-swatch-size)!important;margin:0!important;padding:0!important;border:0!important;border-bottom:.0625rem solid var(--pfc-line)!important;background-color:var(--pfc-bg)!important;background-position:center!important;background-repeat:no-repeat!important;background-size:cover!important;overflow:hidden!important}
.pfc-swatch-card__name{box-sizing:border-box!important;display:block!important;inline-size:100%!important;min-inline-size:0!important;margin:0!important;padding:.46rem .5rem .52rem!important;border:0!important;background:var(--pfc-white)!important;color:var(--pfc-black)!important;font-family:var(--pfc-font)!important;font-size:clamp(.62rem,.58rem + .1vw,.72rem)!important;font-weight:700!important;line-height:1.18!important;text-align:left!important;white-space:normal!important;overflow-wrap:anywhere!important}
.pfc-swatch-card:hover,.pfc-swatch-card:focus-visible,.pfc-swatch-card.is-selected{border-color:var(--pfc-black)!important;box-shadow:none!important;outline:0!important}
.pfc-swatch-card:hover .pfc-swatch-card__name,.pfc-swatch-card:focus-visible .pfc-swatch-card__name,.pfc-swatch-card.is-selected .pfc-swatch-card__name{background:var(--pfc-black)!important;color:var(--pfc-white)!important}
.pfc-swatch-card.is-selected:hover .pfc-swatch-card__name,.pfc-swatch-card.is-selected:focus-visible .pfc-swatch-card__name{background:var(--pfc-black)!important;color:var(--pfc-white)!important}
.pfc-swatch-card.is-image-missing .pfc-swatch-card__media{position:relative!important;background-image:none!important}
.pfc-swatch-card.is-image-missing .pfc-swatch-card__media::after{content:"Bild derzeit nicht verfügbar";position:absolute;inset:0;display:grid;place-items:center;padding:.6rem;background:var(--pfc-bg);color:var(--pfc-soft);font-size:.65rem;text-align:center}

/* Media viewer */
.pfc-media-viewer__dialog{display:grid;place-items:center;width:min(72rem,100%);height:min(50rem,100%);padding:3.5rem clamp(.75rem,2vw,1.25rem) clamp(.75rem,2vw,1.25rem)}.pfc-media-viewer__dialog img{display:block;width:auto!important;height:auto!important;max-width:100%!important;max-height:100%!important;object-fit:contain!important}.pfc-media-viewer__close{position:absolute;top:.65rem;right:.65rem;z-index:2}

.pfc-leave-confirm{position:fixed!important;inset:0!important;z-index:2147482004!important;display:grid;place-items:center;padding:clamp(1rem,4vw,2rem);box-sizing:border-box}
.pfc-leave-confirm__backdrop{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;margin:0!important;padding:0!important;border:0!important;border-radius:0!important;background:rgba(15,12,10,.56)!important;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);cursor:default}
.pfc-leave-confirm__backdrop:hover,.pfc-leave-confirm__backdrop:focus,.pfc-leave-confirm__backdrop:focus-visible{background:rgba(15,12,10,.56)!important}
.pfc-leave-confirm__dialog{position:relative;z-index:1;display:grid;gap:clamp(1rem,3vw,1.4rem);width:min(30rem,100%);padding:clamp(1.15rem,4vw,1.75rem);border:.0625rem solid var(--pfc-black);background:var(--pfc-white);box-shadow:0 1.4rem 4.5rem rgba(0,0,0,.32)}
.pfc-leave-confirm__dialog h2{margin:0!important;color:var(--pfc-black)!important;font-family:var(--pfc-font)!important;font-size:clamp(1.35rem,1.15rem + .8vw,1.8rem)!important;font-weight:800!important;letter-spacing:-.03em!important;line-height:1.08!important;text-align:center!important}
.pfc-leave-confirm__actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem}.pfc-leave-confirm__actions .pfc-button{width:100%;min-width:0}

@media(min-width:48rem){
  .pfc-entry{grid-template-columns:minmax(0,1fr) auto;align-items:center}.pfc-button--configure{width:auto;min-width:12.5rem}.pfc-purchase-actions{grid-template-columns:repeat(2,minmax(0,1fr))}
  .pfc-measurement-guide__content{display:grid;grid-template-columns:minmax(0,1fr) minmax(13rem,30%);column-gap:2rem;align-items:start}.pfc-measurement-guide__content>*:not(.pfc-measurement-guide__media){grid-column:1}.pfc-measurement-guide__media{grid-column:2;grid-row:1/span 60;display:grid;place-items:start end;align-self:start}.pfc-measurement-guide__media img{display:block;max-width:min(18rem,100%)!important;width:auto!important;height:auto!important;margin:0!important;padding:.5rem;background:var(--pfc-white)}
}

@media(max-width:47.99rem){
  .pfc-overlay,.pfc-picker,.pfc-media-viewer{padding:0!important}
  .pfc-dialog,.pfc-picker__sheet,.pfc-media-viewer__dialog{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;max-width:100%!important;max-height:100%!important;border:0!important;margin:0!important}
  .pfc-dialog__header{grid-template-columns:minmax(0,1fr) auto;gap:clamp(.45rem,1.6vw,.7rem);padding:max(clamp(.58rem,2.4vw,.75rem),env(safe-area-inset-top)) max(clamp(.62rem,2.8vw,.82rem),env(safe-area-inset-right)) clamp(.58rem,2.4vw,.75rem) max(clamp(.62rem,2.8vw,.82rem),env(safe-area-inset-left))}.pfc-dialog__brand .pfc-kicker{font-size:clamp(.52rem,2.25vw,.64rem);letter-spacing:.14em}.pfc-dialog__brand>strong{font-size:clamp(.72rem,3.15vw,.84rem);line-height:1.2;white-space:normal}.pfc-dialog__progress{grid-column:1/-1;grid-row:2}.pfc-dialog__progress>span{font-size:clamp(.62rem,2.7vw,.72rem);text-align:left}.pfc-dialog__close{grid-column:2;grid-row:1;width:clamp(2.25rem,10vw,2.55rem);height:clamp(2.25rem,10vw,2.55rem);font-size:clamp(1.3rem,5.5vw,1.55rem)}
  .pfc-dialog__main{padding:clamp(.68rem,3vw,1rem) max(clamp(.58rem,2.8vw,.8rem),env(safe-area-inset-right)) clamp(.9rem,4vw,1.25rem) max(clamp(.58rem,2.8vw,.8rem),env(safe-area-inset-left));scrollbar-gutter:auto}.pfc-funnel-step{width:100%;margin-inline:0}.pfc-step-heading{gap:clamp(.5rem,2.4vw,.7rem);margin-bottom:clamp(.72rem,3vw,1rem)}.pfc-step-heading__number{min-width:clamp(2rem,8.7vw,2.3rem);height:clamp(2rem,8.7vw,2.3rem);padding-inline:clamp(.3rem,1.3vw,.5rem);font-size:clamp(.7rem,2.8vw,.8rem)}.pfc-step-heading h2{font-size:clamp(1.28rem,5.6vw,1.72rem)!important;line-height:1.04!important}.pfc-step-heading p{font-size:clamp(.76rem,3.15vw,.88rem);line-height:1.45}
  .pfc-variation-groups{gap:clamp(.5rem,2.3vw,.72rem)}.pfc-option-group{padding:clamp(.58rem,2.7vw,.78rem)}.pfc-option-group__head{gap:.45rem;margin-bottom:clamp(.42rem,1.8vw,.58rem)}.pfc-option-group__head span{font-size:clamp(.54rem,2.25vw,.62rem)}.pfc-option-group__head strong{font-size:clamp(.78rem,3.25vw,.9rem)}.pfc-option-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(.28rem,1.45vw,.4rem);width:100%}.pfc-option-pill{width:100%!important;min-width:0!important;min-height:clamp(2.25rem,10vw,2.65rem)!important;padding:clamp(.42rem,2vw,.55rem) clamp(.42rem,2vw,.62rem)!important;font-size:clamp(.67rem,2.95vw,.82rem)!important;line-height:1.16!important}
  .pfc-dialog__footer{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(.42rem,2vw,.62rem);padding:clamp(.52rem,2.3vw,.68rem) max(clamp(.58rem,2.8vw,.8rem),env(safe-area-inset-right)) max(clamp(.52rem,2.3vw,.68rem),env(safe-area-inset-bottom)) max(clamp(.58rem,2.8vw,.8rem),env(safe-area-inset-left))}.pfc-dialog__draft{display:none}.pfc-dialog__footer .pfc-button{min-width:0;min-height:clamp(2.55rem,11vw,2.95rem);padding:clamp(.5rem,2.2vw,.68rem);font-size:clamp(.76rem,3.2vw,.9rem)}
  .pfc-color-guide{grid-template-columns:1fr}.pfc-color-guide img{max-height:12rem}.pfc-color-slots,.pfc-field-grid,.pfc-engraving-choice,.pfc-engraving-fields{grid-template-columns:1fr}.pfc-measurement-triplet{gap:.4rem}.pfc-measurement-mini>span:first-child{font-size:clamp(.58rem,2.55vw,.68rem)}.pfc-measurement-mini .pfc-input-wrap input{padding-left:.48rem;padding-right:2.35rem}.pfc-measurement-mini .pfc-input-unit__suffix{right:.48rem;font-size:.72rem}.pfc-color-slot{grid-template-columns:auto 3rem minmax(0,1fr) auto;gap:.55rem;min-height:4.55rem;padding:.55rem}.pfc-slot-preview{width:3rem}.pfc-engraving-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}
  .pfc-measurement-guide__media{display:grid;place-items:center}.pfc-measurement-guide__media img,.pfc-measurement-guide__content>img{max-width:min(10.5rem,60%)!important;margin:.7rem auto 0!important;padding:.45rem}
  .pfc-picker__top{padding:max(clamp(.62rem,2.8vw,.82rem),env(safe-area-inset-top)) max(clamp(.58rem,2.7vw,.78rem),env(safe-area-inset-right)) clamp(.58rem,2.5vw,.76rem) max(clamp(.58rem,2.7vw,.78rem),env(safe-area-inset-left))}.pfc-picker__top .pfc-kicker{font-size:clamp(.52rem,2.2vw,.62rem)}.pfc-picker__top strong{font-size:clamp(.82rem,3.45vw,1rem)}.pfc-picker__top small{font-size:clamp(.6rem,2.5vw,.7rem)}
  .pfc-swatch-grid{gap:clamp(.34rem,1.5vw,.46rem)!important;padding:clamp(.55rem,2.6vw,.78rem) max(clamp(.5rem,2.4vw,.72rem),env(safe-area-inset-right)) max(clamp(.65rem,3vw,.9rem),env(safe-area-inset-bottom)) max(clamp(.5rem,2.4vw,.72rem),env(safe-area-inset-left))!important}.pfc-swatch-card__name{padding:clamp(.34rem,1.45vw,.44rem)!important;font-size:clamp(.56rem,2.35vw,.66rem)!important;line-height:1.12!important}.pfc-overlay input:not([type="checkbox"]):not([type="radio"]),.pfc-overlay select,.pfc-overlay textarea,.pfc-picker input,.pfc-picker select,.pfc-picker textarea{font-size:16px!important;line-height:1.25!important;-webkit-text-size-adjust:100%!important}
  .pfc-leave-confirm{padding:max(.75rem,env(safe-area-inset-top)) max(.75rem,env(safe-area-inset-right)) max(.75rem,env(safe-area-inset-bottom)) max(.75rem,env(safe-area-inset-left))}.pfc-leave-confirm__dialog{width:min(25rem,100%);padding:clamp(1rem,4.5vw,1.35rem)}.pfc-leave-confirm__actions{grid-template-columns:1fr;gap:.5rem}
  .pfc-applied__head{flex-direction:column}.pfc-applied__actions{display:grid;width:100%;grid-template-columns:repeat(2,minmax(0,1fr));justify-content:stretch;gap:.5rem}.pfc-applied__actions .pfc-text-button{text-align:left}.pfc-summary-list{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:.75rem}
  .pfc-review-card__top{align-items:flex-start;flex-direction:column}.pfc-review-card__top>strong{text-align:left}
  .pfc-media-viewer__dialog{padding:max(3.5rem,env(safe-area-inset-top)) max(.7rem,env(safe-area-inset-right)) max(.7rem,env(safe-area-inset-bottom)) max(.7rem,env(safe-area-inset-left))}.pfc-media-viewer__dialog img{max-width:100%!important;max-height:100%!important}
}

@media(max-width:22rem){.pfc-option-choices{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(prefers-reduced-motion:reduce){.pfc-button,.pfc-progress-track i{transition:none!important}}
