:root{--red:#dc1f28;--ink:#101112;--paper:#f2f2f2;--line:#d9d9d9}
.custom-page{background:var(--paper)}
.custom-page .site-header{position:sticky;top:0}
.back-to-store{color:#fff;font-size:.72rem;font-weight:900;letter-spacing:.1em;text-decoration:none;text-transform:uppercase}
.builder{display:grid;grid-template-columns:minmax(0,.92fr) minmax(540px,1.08fr);max-width:1680px;margin:auto}
.builder__gallery{position:sticky;top:81px;align-self:start;height:calc(100vh - 81px);overflow:auto;padding:48px clamp(24px,4vw,64px);background:#161718;color:#fff}
.builder__gallery-head{display:flex;align-items:end;justify-content:space-between;gap:22px;margin-bottom:28px}
.builder__gallery-head h1{max-width:520px;font-size:clamp(3.2rem,5vw,6rem);font-weight:900;letter-spacing:-.06em;line-height:.82;text-align:right;text-transform:uppercase}
.builder__main-image{display:grid;min-height:440px;place-items:center;overflow:hidden;border:1px solid #3a3a3a;background:#fff}
.builder__main-image img{width:100%;height:100%;max-height:610px;object-fit:contain}
.builder__thumbnails{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:12px}
.builder__thumbnails button{position:relative;display:grid;min-width:0;padding:0 0 10px;border:1px solid #3b3b3b;background:#222;color:#aaa;cursor:pointer;font:inherit;font-size:.7rem;font-weight:900;letter-spacing:.08em;text-align:left;text-transform:uppercase}
.builder__thumbnails button:after{position:absolute;right:0;bottom:0;left:0;height:3px;background:var(--red);content:"";transform:scaleX(0);transform-origin:left;transition:transform .2s}
.builder__thumbnails button.is-active{border-color:#777;color:#fff}.builder__thumbnails button.is-active:after{transform:none}
.builder__thumbnails img{width:100%;aspect-ratio:1;object-fit:cover;border-bottom:1px solid #3b3b3b}
.builder__thumbnails span{padding:9px 9px 0}
.builder__config{padding:58px clamp(28px,5vw,82px) 100px;background:#f5f5f5}
.builder__title{padding-bottom:34px;border-bottom:1px solid #cfcfcf}
.builder__title h2{margin:8px 0 22px;font-size:clamp(2.8rem,4.6vw,5.4rem);font-weight:900;letter-spacing:-.055em;line-height:.86;text-transform:uppercase}
.builder__terms{display:flex;flex-wrap:wrap;gap:8px}.builder__terms span{padding:8px 10px;background:#e4e4e4;color:#444;font-size:.7rem;font-weight:900;letter-spacing:.07em;text-transform:uppercase}
.builder form{margin-top:8px}
.builder fieldset{margin:0;padding:32px 0;border:0;border-bottom:1px solid #cfcfcf}
.builder legend{display:flex;gap:12px;margin-bottom:19px;padding:0;color:#171717;font-size:.9rem;font-weight:900;letter-spacing:.09em;text-transform:uppercase}
.builder legend span{color:var(--red)}
.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.form-grid--three{grid-template-columns:repeat(3,minmax(0,1fr))}.form-grid .wide{grid-column:1/-1}
.builder label{margin:0;color:#4c4c4c;font-size:.7rem}.builder label small{color:#888;font-size:.65rem}
.builder input,.builder textarea{min-height:52px;margin-top:8px;border-color:#bebebe;background:#fff}.builder textarea{min-height:115px}
.option-grid{display:grid;gap:9px}.option-grid--three{grid-template-columns:repeat(3,minmax(0,1fr))}
.choice input,.swatch input,.carbon-choice input{position:absolute;opacity:0;pointer-events:none}
.choice span{display:grid;min-height:68px;place-items:center;padding:13px;border:1px solid #c4c4c4;background:#fff;color:#222;font-size:.72rem;font-weight:900;letter-spacing:.06em;text-align:center;text-transform:uppercase;cursor:pointer}
.choice input:checked+span{border-color:#111;background:#111;color:#fff;box-shadow:inset 0 -4px var(--red)}
.swatch-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:9px}
.swatch span{position:relative;display:flex;min-height:62px;align-items:flex-end;padding:8px;border:2px solid #fff;outline:1px solid #bbb;color:#fff;font-size:.68rem;font-weight:900;text-shadow:0 1px 2px #000;cursor:pointer}
.swatch input:checked+span{outline:3px solid var(--red)}
.swatch--a1 span{background:#111}.swatch--a2 span{background:#292929}.swatch--a3 span{background:#555}.swatch--a4 span{background:#ae101c}.swatch--a5 span{background:#c8c8c8;color:#111;text-shadow:none}.swatch--a6 span{background:#a76342}.swatch--a7 span{background:#3ba6d8}.swatch--a8 span{background:#d7c09d;color:#111;text-shadow:none}.swatch--a9 span{background:#202328}.swatch--a10 span{background:#c3373d}.swatch--a11 span{background:#f26a27}.swatch--a12 span{background:#999;color:#111;text-shadow:none}
.carbon-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
.carbon-choice span{display:flex;min-height:86px;align-items:flex-end;padding:10px;border:2px solid #fff;outline:1px solid #aaa;background-color:#151515;background-image:linear-gradient(135deg,transparent 42%,rgba(255,255,255,.12) 43% 49%,transparent 50%);background-size:13px 13px;color:#fff;font-size:.68rem;font-weight:900;letter-spacing:.05em;text-transform:uppercase;cursor:pointer}
.carbon-choice input:checked+span{outline:3px solid var(--red)}
.carbon-choice--b1 span{box-shadow:inset 0 0 42px rgba(231,195,56,.42)}.carbon-choice--b2 span{box-shadow:inset 0 0 42px rgba(235,43,54,.48)}.carbon-choice--b3 span{box-shadow:inset 0 0 42px rgba(244,44,188,.5)}.carbon-choice--b4 span{box-shadow:inset 0 0 42px rgba(0,0,0,.8)}.carbon-choice--b5 span{box-shadow:inset 0 0 42px rgba(149,58,235,.5)}.carbon-choice--b6 span{box-shadow:inset 0 0 42px rgba(50,96,239,.55)}
.builder__submit{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-top:32px}.builder__submit strong,.builder__submit span{display:block}.builder__submit strong{font-size:.84rem;text-transform:uppercase}.builder__submit span{margin-top:5px;color:#777;font-size:.76rem}.builder__submit button{min-width:220px;border:0;cursor:pointer}.builder__submit button:disabled{opacity:.6}
#customOrderStatus{min-height:24px;margin:18px 0 0;font-size:.84rem;font-weight:800}#customOrderStatus.is-success{color:#277641}#customOrderStatus.is-error{color:#b9141c}
.invoice-page{min-height:100vh;background:#ededed}.invoice-shell{max-width:920px;margin:0 auto;padding:70px 24px 110px}.invoice-card{overflow:hidden;border-top:7px solid var(--red);background:#fff;box-shadow:0 22px 65px rgba(0,0,0,.13)}.invoice-card__head{display:flex;align-items:start;justify-content:space-between;gap:25px;padding:42px;border-bottom:1px solid #ddd}.invoice-card__head img{width:280px;max-width:45%}.invoice-card__status{padding:8px 10px;background:#111;color:#fff;font-size:.68rem;font-weight:900;letter-spacing:.09em;text-transform:uppercase}.invoice-card__body{padding:42px}.invoice-card h1{font-size:clamp(2.7rem,6vw,5.4rem);font-weight:900;letter-spacing:-.055em;line-height:.86;text-transform:uppercase}.invoice-meta{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:32px 0}.invoice-meta div{padding:16px;background:#f0f0f0}.invoice-meta span,.invoice-meta b{display:block}.invoice-meta span{color:#777;font-size:.65rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.invoice-meta b{margin-top:7px;font-size:.9rem}.invoice-options{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;margin:28px 0;background:#ddd;border:1px solid #ddd}.invoice-options div{display:flex;justify-content:space-between;gap:18px;padding:14px;background:#fff;font-size:.82rem}.invoice-options span{color:#777}.invoice-total{display:flex;align-items:end;justify-content:space-between;gap:24px;padding:28px 0;border-block:1px solid #ddd}.invoice-total span,.invoice-total strong{display:block}.invoice-total span{color:#777;font-size:.74rem;font-weight:900;text-transform:uppercase}.invoice-total strong{margin-top:6px;font-size:2.6rem}.invoice-total button{min-width:220px;border:0;cursor:pointer}.invoice-note{margin:22px 0 0;color:#666;font-size:.82rem;line-height:1.55}
@media(max-width:1080px){.builder{grid-template-columns:1fr}.builder__gallery{position:static;height:auto}.builder__main-image{min-height:0}.builder__main-image img{max-height:none}.builder__gallery-head h1{text-align:left}.builder__config{padding-top:54px}}
@media(max-width:620px){.back-to-store{display:none}.builder__gallery{padding:34px 16px}.builder__gallery-head{align-items:start;flex-direction:column}.builder__gallery-head h1{font-size:3.5rem}.builder__thumbnails{gap:6px}.builder__thumbnails span{font-size:.58rem;padding:7px 5px 0}.builder__config{padding:46px 18px 75px}.builder__title h2{font-size:3rem}.form-grid,.form-grid--three{grid-template-columns:1fr}.option-grid--three{grid-template-columns:1fr}.swatch-grid{grid-template-columns:repeat(4,1fr)}.carbon-grid{grid-template-columns:repeat(2,1fr)}.builder__submit{align-items:stretch;flex-direction:column}.builder__submit button{width:100%}.invoice-shell{padding:30px 14px 70px}.invoice-card__head,.invoice-card__body{padding:25px 20px}.invoice-card__head img{max-width:60%}.invoice-meta,.invoice-options{grid-template-columns:1fr}.invoice-total{align-items:stretch;flex-direction:column}.invoice-total button{width:100%}}

/* Premium individual option gallery */
.builder{display:block;max-width:1540px;background:#f5f5f5}
.builder__gallery{position:relative;top:auto;display:grid;grid-template-columns:minmax(0,.8fr) minmax(420px,1.2fr);height:auto;min-height:600px;align-items:center;overflow:hidden;padding:70px clamp(28px,6vw,96px);background:radial-gradient(circle at 72% 50%,#303235 0,#191a1c 42%,#111 72%);color:#fff}
.builder__gallery:after{position:absolute;right:-8%;bottom:-42%;width:56%;aspect-ratio:1;border:1px solid rgba(220,31,40,.28);border-radius:50%;box-shadow:0 0 0 70px rgba(220,31,40,.03),0 0 0 150px rgba(220,31,40,.02);content:""}
.builder__gallery-head{position:relative;z-index:2;display:block;margin:0}
.builder__gallery-head h1{max-width:660px;margin-top:14px;font-size:clamp(4.5rem,7vw,8rem);text-align:left}
.builder__gallery-head>p{max-width:430px;margin:28px 0 0;color:#aaa;font-size:.95rem;line-height:1.6}
.builder__hero-wheel{position:relative;z-index:2;display:grid;min-height:470px;place-items:center}
.builder__hero-wheel img{width:min(620px,100%);filter:drop-shadow(0 32px 38px rgba(0,0,0,.5))}
.builder__config{max-width:1180px;margin:0 auto;padding:80px 28px 120px}
.visual-option-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.visual-choice{position:relative;display:grid;margin:0;padding:0;border:1px solid #d2d2d2;background:#fff;cursor:pointer;transition:border-color .2s,box-shadow .2s,transform .2s}
.visual-choice:hover{transform:translateY(-3px);border-color:#aaa;box-shadow:0 16px 30px rgba(0,0,0,.1)}
.visual-choice input{position:absolute;opacity:0;pointer-events:none}
.visual-choice__image{position:relative;display:grid;aspect-ratio:1.08;place-items:center;overflow:hidden;padding:18px;background:#fff}
.visual-choice__image>img{width:100%;height:100%;object-fit:contain}
.visual-choice strong{display:block;min-height:54px;padding:18px;border-top:1px solid #e1e1e1;color:#191919;font-size:.75rem;font-weight:900;letter-spacing:.07em;text-align:center;text-transform:uppercase}
.visual-choice input:checked~.visual-choice__image{box-shadow:inset 0 0 0 4px #111}
.visual-choice input:checked~strong{border-color:var(--red);background:#111;color:#fff;box-shadow:inset 0 -4px var(--red)}
.crop-icon img{position:absolute;width:220%;max-width:none;height:auto;object-fit:initial}
.crop-icon--round img{top:-20%;left:-118%}
.crop-icon--flat-bottom img{top:-102%;left:-60%}
.crop-icon--alcantara img{top:-30%;left:-2%}
.crop-icon--leather img{top:-29%;left:-88%}
.swatch-grid{grid-template-columns:repeat(6,minmax(70px,1fr));gap:14px}
.swatch{display:grid;gap:10px;margin:0;text-align:center}
.swatch span{display:grid;min-height:0;aspect-ratio:1;place-items:end center;padding:0 0 10px;border:6px solid #fff;border-radius:50%;outline:1px solid #c8c8c8;box-shadow:0 8px 20px rgba(0,0,0,.09);font-size:.68rem;transition:transform .2s,outline-color .2s}
.swatch:hover span{transform:translateY(-3px)}
.swatch input:checked+span{outline:4px solid var(--red);box-shadow:0 12px 26px rgba(0,0,0,.16)}
.carbon-grid{grid-template-columns:repeat(6,minmax(70px,1fr));gap:14px}
.carbon-choice{display:grid;gap:10px;margin:0}
.carbon-choice span{aspect-ratio:1;min-height:0;align-items:end;justify-content:center;padding:0 8px 10px;border:6px solid #fff;border-radius:50%;outline:1px solid #aaa;background-size:13px 13px;box-shadow:0 8px 20px rgba(0,0,0,.13);text-align:center;transition:transform .2s}
.carbon-choice:hover span{transform:translateY(-3px)}
.carbon-choice input:checked+span{outline:4px solid var(--red)}
@media(max-width:900px){.builder__gallery{grid-template-columns:1fr;min-height:0;padding:60px 28px 30px}.builder__gallery-head h1{font-size:clamp(4rem,12vw,6rem)}.builder__hero-wheel{min-height:380px}.builder__hero-wheel img{width:min(520px,95%)}.builder__config{padding-top:60px}.swatch-grid,.carbon-grid{grid-template-columns:repeat(4,1fr)}}
@media(max-width:620px){.builder__gallery{padding:44px 18px 20px}.builder__gallery-head h1{font-size:3.8rem}.builder__gallery-head>p{margin-top:18px}.builder__hero-wheel{min-height:300px}.builder__config{padding:48px 15px 80px}.visual-option-grid{grid-template-columns:1fr 1fr;gap:9px}.visual-choice:last-child{grid-column:1/-1;max-width:calc(50% - 5px);width:100%;justify-self:center}.visual-choice__image{padding:10px}.visual-choice strong{min-height:48px;padding:14px 8px;font-size:.66rem}.swatch-grid,.carbon-grid{grid-template-columns:repeat(3,1fr);gap:12px}}
/* Premium configurator rebuild */
.custom-page{background:#e9eaec}
.builder{max-width:none;background:#e9eaec}
.builder__gallery{min-height:560px;grid-template-columns:minmax(0,.72fr) minmax(460px,1.28fr);background:linear-gradient(112deg,#0b0c0d 0%,#151719 48%,#24272a 100%)}
.builder__gallery:after{right:-16%;bottom:-85%;width:70%;border-color:rgba(220,31,40,.2)}
.builder__gallery-head h1{font-size:clamp(4.5rem,6vw,7.4rem)}
.builder__hero-wheel{min-height:430px}
.builder__hero-wheel img{width:min(610px,100%);border:1px solid rgba(255,255,255,.08);box-shadow:0 36px 80px rgba(0,0,0,.42);filter:none}
.builder__config{max-width:1260px;padding:92px 28px 130px}
.builder__title{padding:0 0 42px;border-bottom:0}
.builder__title h2{max-width:900px;margin-top:12px}
.builder__terms{gap:10px}.builder__terms span{padding:10px 13px;border:1px solid #d2d3d5;background:#f3f3f4;color:#555}
.builder form{display:grid;gap:22px;margin:0}
.builder fieldset{margin:0;padding:32px;border:1px solid #d3d4d6;background:#f8f8f9;box-shadow:0 14px 38px rgba(17,18,20,.055)}
.builder legend{float:left;width:100%;margin:0 0 24px;padding:0;font-size:.8rem;letter-spacing:.13em}
.builder legend+*{clear:both}
.builder legend span{display:grid;width:28px;height:28px;place-items:center;border-radius:50%;background:#171819;color:#fff;font-size:.65rem;letter-spacing:0}
.form-grid,.form-grid--three{gap:18px}
.builder label{display:grid;gap:9px;color:#202124;font-size:.72rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.builder label small{font-weight:700;letter-spacing:.04em;text-transform:none}
.builder input,.builder textarea{box-sizing:border-box;width:100%;min-width:0;margin:0;padding:15px 16px;border:1px solid #c7c9cc;border-radius:0;outline:none;background:#fff;color:#161719;font-size:1rem;font-weight:500;letter-spacing:0;text-transform:none;transition:border-color .2s,box-shadow .2s,background .2s}
.builder input{height:56px}.builder textarea{min-height:150px;resize:vertical;line-height:1.55}
.builder input:focus,.builder textarea:focus{border-color:#202124;box-shadow:0 0 0 3px rgba(220,31,40,.13)}
.builder input::placeholder,.builder textarea::placeholder{color:#8a8d91}
.visual-option-grid{gap:16px}
.visual-choice{overflow:hidden;border-color:#c8c9cb;background:#151617;box-shadow:0 10px 26px rgba(0,0,0,.08)}
.visual-choice:hover{border-color:#777;box-shadow:0 18px 38px rgba(0,0,0,.15)}
.visual-choice__image{aspect-ratio:1;padding:0;background:#171819}
.visual-choice__image>img{width:100%;height:100%;object-fit:cover}
.visual-choice strong{min-height:58px;padding:19px 16px;border-color:#333;background:#171819;color:#fff}
.visual-choice input:checked~.visual-choice__image{box-shadow:inset 0 0 0 5px var(--red)}
.visual-choice input:checked~strong{background:#08090a;box-shadow:inset 0 -4px var(--red)}
.swatch-grid,.carbon-grid{gap:16px}
.swatch span,.carbon-choice span{border:5px solid #f8f8f9;outline:1px solid #bbb;box-shadow:0 10px 24px rgba(0,0,0,.12)}
.swatch span{background-image:radial-gradient(circle at 35% 28%,rgba(255,255,255,.18),transparent 32%),linear-gradient(135deg,rgba(255,255,255,.05),rgba(0,0,0,.12));background-blend-mode:screen,normal}
.swatch--a1 span{background-color:#111214}.swatch--a2 span{background-color:#292a2c}.swatch--a3 span{background-color:#56585a}.swatch--a4 span{background-color:#b10e1b}.swatch--a5 span{background-color:#c9cacb}.swatch--a6 span{background-color:#aa6745}.swatch--a7 span{background-color:#31a8df}.swatch--a8 span{background-color:#d8c19b}.swatch--a9 span{background-color:#181b1e}.swatch--a10 span{background-color:#c72d35}.swatch--a11 span{background-color:#ff6a27}.swatch--a12 span{background-color:#9d9fa1}
.carbon-choice span{position:relative;overflow:hidden;background-color:#111;background-size:auto;color:#fff;isolation:isolate}
.carbon-choice span:before,.carbon-choice span:after{position:absolute;inset:-10%;z-index:-1;content:""}
.carbon-choice span:before{background:repeating-linear-gradient(118deg,transparent 0 8px,rgba(255,255,255,.07) 9px 16px,transparent 17px 26px);transform:rotate(-8deg)}
.carbon-choice span:after{background:radial-gradient(ellipse at 16% 20%,var(--flake) 0 3%,transparent 4%),radial-gradient(ellipse at 68% 27%,var(--flake) 0 4%,transparent 5%),radial-gradient(ellipse at 39% 62%,var(--flake) 0 5%,transparent 6%),radial-gradient(ellipse at 82% 76%,var(--flake) 0 3%,transparent 4%),radial-gradient(ellipse at 14% 82%,var(--flake) 0 4%,transparent 5%);filter:saturate(1.15);transform:rotate(12deg)}
.carbon-choice--b1{--flake:#d3b22e}.carbon-choice--b2{--flake:#ee3346}.carbon-choice--b3{--flake:#f03dad}.carbon-choice--b4{--flake:#3b3d40}.carbon-choice--b5{--flake:#8b3ee5}.carbon-choice--b6{--flake:#3569e8}
.carbon-choice--b1 span,.carbon-choice--b2 span,.carbon-choice--b3 span,.carbon-choice--b4 span,.carbon-choice--b5 span,.carbon-choice--b6 span{box-shadow:0 10px 24px rgba(0,0,0,.12)}
.builder__submit{padding:32px;border:1px solid #2a2b2d;background:#171819;color:#fff;box-shadow:0 18px 45px rgba(0,0,0,.12)}
.builder__submit span{color:#aaa}.builder__submit button{min-height:54px}
@media(max-width:900px){.builder__gallery{grid-template-columns:1fr;padding-bottom:54px}.builder__hero-wheel{min-height:0;margin-top:34px}.builder__hero-wheel img{width:min(620px,100%)}.builder__config{padding:70px 22px 100px}.builder fieldset{padding:26px}.swatch-grid,.carbon-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:620px){.builder__gallery{padding:46px 18px 34px}.builder__gallery-head h1{font-size:clamp(3.4rem,16vw,4.5rem)}.builder__hero-wheel{margin-top:28px}.builder__config{padding:52px 12px 80px}.builder__title{padding-inline:8px}.builder__title h2{font-size:clamp(2.8rem,13vw,3.8rem)}.builder fieldset{padding:22px 15px}.form-grid,.form-grid--three{grid-template-columns:1fr;gap:16px}.visual-option-grid{grid-template-columns:1fr 1fr;gap:10px}.visual-choice:last-child{grid-column:auto;max-width:none}.visual-choice strong{min-height:52px;padding:14px 8px;font-size:.63rem}.swatch-grid,.carbon-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.builder__submit{align-items:stretch;flex-direction:column;padding:24px 18px}.builder__submit button{width:100%}}
.builder input[type=radio]{position:absolute;width:1px;height:1px;min-width:0;padding:0;margin:0;opacity:0;pointer-events:none}

.form-grid--contact{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:760px){.form-grid--contact{grid-template-columns:1fr}}
