*{box-sizing:border-box}
:root{--ink:#171717;--muted:#626262;--line:#dedede;--paper:#fafafa;--panel:#fff;--blue:#f0fbfe}
html{scroll-behavior:smooth}
body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Helvetica Neue",Arial,sans-serif;color:var(--ink);background:var(--paper)}
.inkbar{height:5px;display:grid;grid-template-columns:repeat(4,1fr);position:sticky;top:0;z-index:20}.inkbar i:nth-child(1){background:#00aeef}.inkbar i:nth-child(2){background:#ec008c}.inkbar i:nth-child(3){background:#ffde00}.inkbar i:nth-child(4){background:#1a1a1a}
.page-shell{max-width:1440px;margin:0 auto;display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:34px;padding:0 34px}
.main-column{min-width:0}
header{padding:66px 20px 44px;max-width:900px}.eyebrow{font-size:11px;letter-spacing:.19em;font-weight:800}h1{font-size:clamp(44px,5.7vw,76px);line-height:.96;letter-spacing:-.055em;margin:12px 0 20px;max-width:780px}header p,.section-head p{font-size:17px;line-height:1.5;color:var(--muted);max-width:760px;margin-bottom:0}
section{padding:42px 20px;border-top:1px solid var(--line)}.section-head{max-width:760px;margin-bottom:24px}.section-head.compact{margin-bottom:22px}h2{font-size:34px;letter-spacing:-.04em;margin:7px 0}h3{margin:0;font-size:15px}.button{background:var(--ink);color:#fff;text-decoration:none;border:0;padding:15px 22px;font-weight:750;border-radius:3px;white-space:nowrap;cursor:pointer}

/* left-column estimator */
.quote{background:var(--blue);border:1px solid #d8eef3;margin:0 0 0;padding:38px 30px 34px;border-radius:2px}.estimate-form{background:#fff;border:1px solid #d8d8d8;padding:24px}fieldset{border:0;padding:0;margin:0 0 20px}legend,.qty-label{font-size:12px;font-weight:800;margin-bottom:9px}.choice-buttons{display:flex;flex-wrap:wrap;gap:8px}.choice-button{appearance:none;border:1px solid #bcbcbc;background:#fff;color:var(--ink);padding:10px 13px;border-radius:4px;font:inherit;font-size:12px;font-weight:750;cursor:pointer;transition:background .16s ease,color .16s ease,border-color .16s ease,transform .16s ease}.choice-button:hover{border-color:#555;transform:translateY(-1px)}.choice-button.active{background:var(--ink);color:#fff;border-color:var(--ink)}.size-buttons .choice-button{min-width:86px}.qty-label{display:block;margin:0}.qty-label input{width:90px;margin-top:7px;padding:11px;border:1px solid #bbb;background:white;font:inherit}.estimate-bottom{display:grid;grid-template-columns:110px 1fr;align-items:end;gap:18px;border-top:1px solid #e7e7e7;padding-top:19px}.estimate-inline{display:grid;grid-template-columns:auto auto;align-items:end;justify-content:end;gap:0 15px;text-align:right}.estimate-inline>span{grid-column:1/2;font-size:10px;letter-spacing:.16em;font-weight:800;align-self:center}.estimate-inline>strong{grid-column:2/3;grid-row:1/3;font-size:50px;line-height:.9}.estimate-inline p{grid-column:1/3;margin:7px 0 2px;font-size:13px;font-weight:700}.estimate-inline small{grid-column:1/3;color:#777;font-size:11px}

/* dynamic size image */
.size-preview-wrap{margin-top:18px;background:#fff;border:1px solid #d8d8d8;padding:18px 20px 16px}.size-preview-head{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:8px}.size-preview-head>div{text-align:right}.size-preview-head strong{display:block;font-size:18px}.size-preview-head #previewSubtitle{display:block;color:#777;font-size:11px;margin-top:2px}.size-preview-stage{height:330px;display:flex;justify-content:center;align-items:center;overflow:hidden;position:relative}.size-preview-stage img{display:block;max-width:100%;max-height:100%;width:auto;height:auto;opacity:1;transition:opacity .22s ease;will-change:opacity}.size-preview-stage img.is-fading{opacity:0}

/* send form */
.send{padding:44px 20px 72px}.send #requestForm{background:#fff;border:1px solid #d8d8d8;padding:24px}.fields{display:grid;grid-template-columns:1fr 1fr;gap:14px}label{display:block;font-size:12px;font-weight:750;margin-bottom:14px}input,textarea{display:block;width:100%;margin-top:7px;padding:12px;border:1px solid #bbb;background:white;font:inherit}.upload{border:2px dashed #aaa;padding:20px;margin-top:8px}.upload input{border:0;padding:0}.upload span{display:block;color:#777;margin-top:8px;font-weight:400}.check{display:flex;gap:9px;align-items:center}.check input{width:auto;margin:0}.notice{background:#f5f5f5;border-left:4px solid #1a1a1a;padding:14px 16px;margin:18px 0;font-size:13px;line-height:1.5}.submit{font-size:15px}#formStatus{font-weight:650}footer{padding:28px 20px 52px;color:#777;border-top:1px solid var(--line);font-size:12px}

/* pinned right price list */
.price-sidebar{border-left:1px solid var(--line);min-width:0}.price-pin{position:sticky;top:30px;padding:48px 0 36px 24px;max-height:calc(100vh - 40px);overflow:auto;scrollbar-width:thin}.sidebar-head{margin-bottom:18px}.sidebar-head h2{font-size:26px;margin-top:5px}.sidebar-group{border-top:1px solid var(--line);padding:15px 0}.sidebar-group h3{display:flex;justify-content:space-between;gap:10px;margin-bottom:7px}.sidebar-group h3 small{font-weight:500;color:#777;font-size:10px}.media-note{display:block;color:#777;font-size:10px;margin:-1px 0 6px}.side-rows>div{display:flex;justify-content:space-between;gap:16px;padding:3px 0;font-size:12px}.side-rows strong{text-align:right}.compact-rows>div{padding:2px 0}.grommet-note{display:block;color:#777;font-size:10px;line-height:1.35;margin-top:7px}.plan-table{font-size:10.5px}.plan-table>div{display:grid;grid-template-columns:minmax(0,1fr) 45px 45px;gap:6px;padding:4px 0;border-top:1px solid #eee;align-items:baseline}.plan-table .plan-head{color:#888;font-size:9px;text-transform:uppercase;letter-spacing:.08em;border-top:0}.plan-table strong{text-align:right}

@media (orientation:landscape) and (min-width:820px){.page-shell{grid-template-columns:minmax(0,1fr) 310px}.price-pin{position:sticky}}
@media (min-width:1200px){.page-shell{grid-template-columns:minmax(0,1fr) 340px;gap:44px}.main-column{padding-left:10px}}

/* portrait tablets / phones: single column, quick prices after content */
@media(max-width:819px), (orientation:portrait) and (max-width:1024px){
  .page-shell{display:flex;flex-direction:column;padding:0;gap:0}.main-column{order:1}.price-sidebar{order:2;border-left:0;border-top:1px solid var(--line);padding:0 22px}.price-pin{position:static;max-height:none;overflow:visible;padding:34px 0 54px}header{padding:50px 22px 34px}section{padding-left:22px;padding-right:22px}.quote{margin:0;border-left:0;border-right:0;border-radius:0}.size-preview-stage{height:300px}.fields{grid-template-columns:1fr 1fr}
}
@media(max-width:620px){h1{font-size:46px}h2{font-size:31px}.quote{padding:32px 18px 28px}.estimate-form{padding:19px}.choice-button{flex:1 1 calc(50% - 8px);padding:10px 8px}.estimate-bottom{grid-template-columns:88px 1fr;gap:10px}.estimate-inline>strong{font-size:42px}.size-preview-wrap{padding:15px 12px 12px}.size-preview-stage{height:255px}.fields{grid-template-columns:1fr}.send{padding-bottom:56px}.price-sidebar{padding:0 20px}.plan-table{font-size:11px}}
@media(max-width:390px){.choice-button{flex-basis:100%}.size-preview-stage{height:230px}.estimate-bottom{display:block}.qty-label input{width:100px}.estimate-inline{margin-top:16px;justify-content:start;text-align:left}.estimate-inline>strong{font-size:44px}.estimate-inline>span,.estimate-inline>strong,.estimate-inline p,.estimate-inline small{grid-column:auto;grid-row:auto}.estimate-inline{display:block}.estimate-inline>strong{display:block;margin:4px 0}.size-preview-head{align-items:flex-start}.size-preview-head>div{text-align:right}}

/* v5: integrated size carousel + mobile price drawer */
.size-carousel{position:relative;margin:-2px 0 6px;display:grid;grid-template-columns:38px minmax(0,1fr) 38px;align-items:center;gap:4px}
.carousel-viewport{overflow:hidden;padding:16px 0 20px;min-width:0}
.carousel-track{display:flex;align-items:flex-end;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;padding:8px 21% 4px}
.carousel-track::-webkit-scrollbar{display:none}
.carousel-item{flex:0 0 58%;scroll-snap-align:center;border:0;background:transparent;padding:0;cursor:pointer;opacity:.38;transform:translateY(7px) scale(.88);transition:transform .22s ease,opacity .22s ease;position:relative}
.carousel-item img{display:block;width:100%;height:210px;object-fit:contain;pointer-events:none}
.carousel-item.active{opacity:1;transform:translateY(-7px) scale(1.03);z-index:2}
.carousel-item.near{opacity:.68;transform:translateY(2px) scale(.94)}
.carousel-arrow{border:0;background:transparent;color:var(--ink);font-size:36px;line-height:1;padding:8px 0;cursor:pointer;z-index:3;opacity:.75}
.carousel-arrow:hover{opacity:1}.carousel-arrow:disabled{opacity:.18;cursor:default}
.carousel-caption{display:flex;justify-content:center;align-items:baseline;gap:10px;margin:-4px 0 22px;text-align:center}
.carousel-caption strong{font-size:18px}.carousel-caption span{font-size:11px;color:#777}
.size-preview-wrap{display:none!important}

.price-close{display:none;border:0;background:transparent;font-size:28px;line-height:1;padding:0 2px;cursor:pointer;color:var(--ink)}
.mobile-price-tab,.price-backdrop{display:none}
.sidebar-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}

@media(max-width:819px), (orientation:portrait) and (max-width:1024px){
  .page-shell{display:block;padding:0}
  .price-sidebar{display:block;position:fixed;z-index:60;left:0;top:0;bottom:0;width:min(88vw,350px);background:var(--paper);border:0;border-right:1px solid var(--line);padding:0 22px;transform:translateX(-102%);transition:transform .24s ease;box-shadow:8px 0 28px rgba(0,0,0,.12)}
  .price-sidebar.open{transform:translateX(0)}
  .price-pin{position:static;max-height:100vh;overflow:auto;padding:34px 0 54px}
  .price-close{display:block}
  .mobile-price-tab{display:block;position:fixed;z-index:55;left:0;top:46%;transform:translateY(-50%);border:0;background:var(--ink);color:#fff;padding:14px 8px;border-radius:0 5px 5px 0;font-weight:750;font-size:11px;letter-spacing:.04em;writing-mode:vertical-rl;text-orientation:mixed;cursor:pointer;box-shadow:2px 3px 10px rgba(0,0,0,.13)}
  .price-backdrop{display:block;position:fixed;z-index:50;inset:0;background:rgba(0,0,0,.22);opacity:0;pointer-events:none;transition:opacity .24s ease}
  .price-backdrop.open{opacity:1;pointer-events:auto}
  body.price-open{overflow:hidden}
  .carousel-item img{height:190px}
}
@media(max-width:620px){
  .size-carousel{grid-template-columns:30px minmax(0,1fr) 30px}
  .carousel-track{gap:8px;padding-left:19%;padding-right:19%}
  .carousel-item{flex-basis:62%}
  .carousel-item img{height:165px}
  .carousel-caption{margin-bottom:18px}
}
/* v6 personal guided page */
.simple-shell{display:block;max-width:1080px;margin:0 auto;padding:0 24px}.simple-shell .main-column{max-width:none}.personal-hero{max-width:820px;padding-bottom:30px}.hero-lead{font-size:1.18rem;max-width:720px}.hero-note{font-weight:700}.guided-quote{max-width:100%}.guided-form{display:grid;gap:22px}.intent-buttons .choice-button{min-height:58px}.step-label{font-weight:800;margin-bottom:12px}.recommendation{display:grid;grid-template-columns:minmax(240px,.8fr) minmax(340px,1.2fr);gap:28px;align-items:center;border:2px solid #111;border-radius:18px;padding:22px;background:#fff}.recommend-copy h3{font-size:1.55rem;margin:5px 0 8px}.rec-price{display:flex;align-items:baseline;gap:8px;margin:16px 0 6px}.rec-price strong{font-size:2.35rem}.rec-price span{color:#666}.rec-alt{font-size:.92rem;color:#555}.example-gallery{display:grid;grid-template-columns:1.35fr .8fr;grid-template-rows:1fr 1fr;gap:8px;height:270px}.example-gallery img{width:100%;height:100%;object-fit:cover;border-radius:10px;display:block}.example-gallery img:first-child{grid-row:1/3}.simple-total{margin-top:0}.full-prices{margin:34px 0 10px;border-top:1px solid #bbb;border-bottom:1px solid #bbb;padding:18px 0}.full-prices summary{cursor:pointer;font-weight:700}.full-prices summary span{text-decoration:underline}.full-price-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;padding:20px 0 4px}.full-price-grid h3{margin:0 0 8px}.full-price-grid p{font-size:.9rem;line-height:1.5;margin:5px 0}.price-sidebar,.mobile-price-tab,.price-backdrop{display:none!important}
@media(max-width:760px){.simple-shell{padding:0 15px}.recommendation{grid-template-columns:1fr;padding:16px}.example-gallery{height:220px}.full-price-grid{grid-template-columns:1fr}.hero-lead{font-size:1.05rem}.intent-buttons{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* v7 refinements */
body{background:#fff}.quote{background:#fff}.guided-quote{background:#fff}
.hero-actions{margin-top:22px}.upload-now{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;min-height:46px}
.choice-button{min-height:48px;display:inline-flex;align-items:center;justify-content:center}
.intent-buttons .choice-button,.detail-buttons .choice-button,.size-buttons .choice-button{min-height:50px}
.carousel-track{gap:0;padding-left:0;padding-right:0;scroll-snap-type:x mandatory}
.carousel-item{flex:0 0 33.333%;min-width:33.333%;opacity:.5;transform:none;padding:0;margin:0}
.carousel-item img{height:205px;width:100%;object-fit:contain}
.carousel-item.active{opacity:1;transform:translateY(-6px);z-index:2}
.carousel-item.near{opacity:.72;transform:none}
.carousel-arrow:disabled{opacity:.75;cursor:pointer}
.example-gallery{overflow:hidden}.example-gallery img{min-width:0;min-height:0;max-width:100%;max-height:100%;overflow:hidden}
.qty-control{align-self:center}.qty-control>span{display:block;font-size:12px;font-weight:800;margin-bottom:7px}.qty-stepper{display:inline-grid;grid-template-columns:40px 54px 40px;align-items:center;border:1px solid #aaa;border-radius:999px;overflow:hidden;background:#fff}.qty-stepper button{height:38px;border:0;background:#fff;font-size:22px;cursor:pointer}.qty-stepper strong{text-align:center;font-size:16px}.qty-stepper button:hover{background:#f3f3f3}
.full-prices{margin-top:18px;padding-top:14px}.send{padding-bottom:22px}
@media(max-width:620px){.carousel-item{flex-basis:50%;min-width:50%}.carousel-item img{height:160px}.upload-now{width:100%;box-sizing:border-box}}

/* v9: direct Poster / Banner / Plans chooser */
.guided-quote{margin-top:0;background:transparent;border:0;padding:10px 0 30px}
.guided-form{background:transparent;border:0;padding:0}
.chooser-row{padding:18px 0;border-bottom:1px solid #e5e5e5}
.type-row{border-top:1px solid #e5e5e5}
.type-buttons{display:flex;flex-wrap:nowrap;gap:10px}
.type-buttons .choice-button{font-size:15px;min-height:50px;flex:1 1 0;white-space:nowrap}
.product-preview{height:min(640px,68vw);min-height:380px;position:relative;overflow:visible;background:transparent;margin:0 -10px 2px}
.product-preview img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:contain;opacity:1;transition:opacity .1s ease}
.product-preview .product-base{z-index:1}
.product-preview .product-overlay{z-index:2;pointer-events:none}
.product-preview.banner-preview .product-overlay{z-index:1}
.product-preview.banner-preview .product-base{z-index:2}
.product-preview img.is-fading{opacity:0}
.size-step{display:grid;gap:10px;padding-top:18px}
.size-buttons{justify-content:center;flex-wrap:nowrap}
.size-buttons .choice-button{flex:1 1 0;min-width:0;max-width:none;white-space:nowrap}
.finish-question{margin:0}
.finish-question .choice-buttons,#colorFieldset .choice-buttons{flex-wrap:nowrap}
.finish-question .choice-button,#colorFieldset .choice-button{flex:1 1 0}
.finish-question legend,#colorFieldset legend{font-size:15px;margin-bottom:12px}
#recommendation[hidden]{display:none}
.recommendation{display:grid;grid-template-columns:minmax(270px,.9fr) minmax(340px,1.1fr);gap:28px;align-items:center;border:2px solid #111;border-radius:18px;padding:24px;background:#fff;margin-top:8px}
.rec-ready{font-size:.85rem;line-height:1.4;padding-top:12px;border-top:1px solid #ddd}
.rec-order{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin:18px 0 12px;padding:16px 0;border-top:1px solid #ddd;border-bottom:1px solid #ddd}
.rec-order .qty-control>span,.rec-price>span{display:block;color:#666;font-size:10px;font-weight:850;letter-spacing:.12em;text-transform:uppercase;margin-bottom:7px}
.rec-price{display:block;margin:0;text-align:right}.rec-price strong{display:block;font-size:2.55rem;line-height:.95}.rec-price small{display:block;color:#666;font-size:.76rem;margin-top:5px}
.upload-specs{border:1px solid #d8d8d8;border-radius:16px;background:#fafafa;padding:20px;margin:0 0 24px}
.upload-specs legend{font-size:17px;font-weight:850;padding:0 8px;margin-left:-8px}
.spec-intro{color:#666;font-size:13px;margin:-2px 0 18px}
.spec-grid{display:grid;gap:18px}
.spec-choice{min-width:0}.spec-label{display:block;font-size:11px;font-weight:850;letter-spacing:.08em;text-transform:uppercase;margin-bottom:8px}
.spec-buttons{display:flex;flex-wrap:wrap;gap:8px}
.spec-button{appearance:none;border:1px solid #c8c8c8;border-radius:10px;background:#fff;color:#222;padding:11px 15px;font:inherit;font-size:13px;font-weight:750;cursor:pointer;box-shadow:0 1px 2px rgba(0,0,0,.04);transition:.15s ease}
.spec-button:hover{border-color:#777;transform:translateY(-1px)}.spec-button.active{border-color:#111;background:#111;color:#fff;box-shadow:0 3px 8px rgba(0,0,0,.16)}
.spec-native{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important}
.spec-toggles{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px;padding-top:18px;border-top:1px solid #ddd}
.toggle-option{display:inline-flex;align-items:center;gap:9px;margin:0;padding:11px 14px;border:1px solid #ccc;border-radius:10px;background:#fff;font-size:13px;font-weight:700}
.toggle-option input{display:inline-block;width:18px;height:18px;margin:0;flex:0 0 auto}
@media(max-width:760px){.guided-quote{margin-top:0;padding-top:4px}.product-preview{height:80vw;min-height:290px;margin:0 -6px}.type-buttons .choice-button{min-height:46px;font-size:12px;padding-left:7px;padding-right:7px}.recommendation{grid-template-columns:1fr;padding:18px}.chooser-row .choice-buttons{overflow-x:auto;padding-bottom:3px}.size-buttons .choice-button{min-width:92px}}
@media(max-width:420px){.product-preview{height:88vw;min-height:270px}.type-buttons{gap:5px}.type-buttons .choice-button{font-size:11px}.size-buttons .choice-button{min-width:84px}.rec-order{align-items:center}.rec-price strong{font-size:2.1rem}.upload-specs{padding:16px 13px}.spec-button{padding:10px 12px}}


/* v8 consistency + carousel refinements */
.qty-control #qty[type="hidden"]{display:none!important}
.carousel-item{overflow:visible;transition:transform .2s ease,opacity .2s ease}
.carousel-item img{height:205px;width:auto;max-width:none;margin:0 auto;object-fit:contain;transform-origin:center bottom}
.carousel-item.active{opacity:1;transform:translateY(-10px) scale(1.12);z-index:4}
.carousel-item.near{opacity:.66;transform:scale(.96)}
.carousel-track.banner-mode .carousel-item[data-size-key="2x10-ft"]{margin-left:24px}
.carousel-track.banner-mode .carousel-item.active{transform:translateY(-12px) scale(1.16)}
.full-price-grid strong{font-weight:850;color:#111}
@media(max-width:620px){
  .carousel-item img{height:170px;width:auto;max-width:none}
  .carousel-item.active{transform:translateY(-8px) scale(1.12)}
  .carousel-track.banner-mode .carousel-item[data-size-key="2x10-ft"]{margin-left:18px}
  .carousel-track.banner-mode .carousel-item.active{transform:translateY(-10px) scale(1.15)}
}

/* v10: live project builder */
[hidden]{display:none!important}
.guided-form{gap:12px}
.project-builder{border:1px solid #d7d7d7;border-radius:18px;background:#fff;overflow:hidden}
.builder-head{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:24px;padding:22px 24px;background:#f7f7f5;border-bottom:1px solid #ddd}
.builder-head h2{font-size:clamp(25px,3vw,36px);margin:4px 0 0}
.live-quote{min-width:255px;text-align:right}.live-quote>div>span{display:block;font-size:10px;font-weight:850;letter-spacing:.13em;text-transform:uppercase;color:#666}.live-quote strong{display:block;font-size:2.35rem;line-height:1;margin-top:4px}.live-quote small{display:block;color:#666;font-size:11px;margin-top:5px}.live-quote p{margin:8px 0 0;font-size:12px;font-weight:750}
.project-builder .chooser-row,.project-builder .option-row{margin:0;padding:16px 24px;border:0;border-bottom:1px solid #e5e5e5}
.project-builder .option-row{display:grid;grid-template-columns:165px minmax(0,1fr);align-items:center;gap:16px}
.project-builder .option-row legend,.project-builder .option-row>div:first-child strong{font-size:13px;font-weight:850;margin:0}
.project-builder .option-row .choice-buttons{justify-content:flex-start;overflow:visible}
.project-builder .choice-button{border:1px solid #111;background:#fff;color:#111;border-radius:8px;box-shadow:none;min-width:88px}
.project-builder .choice-button:hover{border-color:#111;background:#f5f5f5}
.project-builder[data-intent="poster"] .choice-button.active{background:#00a9cf;border-color:#00a9cf;color:#071b20}
.project-builder[data-intent="banner"] .choice-button.active{background:#d92386;border-color:#d92386;color:#fff}
.project-builder[data-intent="sign"] .choice-button.active{background:#f4d719;border-color:#d4b900;color:#111}
.project-builder[data-intent="plans"] .choice-button.active{background:#111;border-color:#111;color:#fff}
.project-builder .type-buttons .type-poster.active{background:#00a9cf;border-color:#00a9cf;color:#071b20}
.project-builder .type-buttons .type-banner.active{background:#d92386;border-color:#d92386;color:#fff}
.project-builder .type-buttons .type-sign.active{background:#f4d719;border-color:#d4b900;color:#111}
.project-builder .type-buttons .type-plans.active{background:#111;border-color:#111;color:#fff}
.project-builder .type-row{padding-top:18px;padding-bottom:18px}
.project-builder .type-buttons{gap:8px}
.project-builder .type-buttons .choice-button{min-height:46px;font-size:14px}
.project-builder .size-step{display:grid;gap:16px}
.project-builder .size-buttons{justify-content:flex-start}
.project-builder .qty-stepper{justify-self:start}
.option-note{grid-column:2;margin:2px 0 0;color:#666;font-size:11px}
.info-button{display:inline-grid;place-items:center;width:19px;height:19px;margin-left:5px;border:1px solid #111;border-radius:50%;background:#fff;color:#111;font:800 11px/1 inherit;cursor:pointer}
.paper-info{grid-column:2;margin-top:2px;padding:12px 14px;border-radius:10px;background:#f2f2f0}
.paper-info p{font-size:12px;line-height:1.4;margin:4px 0}.paper-info strong{display:inline-block;min-width:48px}
.ink-benefit{margin:0;padding:15px 24px;background:#111;color:#fff;font-size:13px;line-height:1.45}
.ink-benefit span{color:#cfcfcf;margin-left:5px}
.product-preview{margin-top:4px}
#recommendation{display:none!important}
.spec-grid{grid-template-columns:1fr}

@media(max-width:760px){
  .builder-head{grid-template-columns:1fr;padding:18px}.live-quote{text-align:left;min-width:0}.live-quote strong{font-size:2rem}
  .project-builder .chooser-row,.project-builder .option-row{padding:14px 16px}
  .project-builder .option-row{grid-template-columns:1fr;gap:9px}
  .project-builder .option-row .choice-buttons{overflow-x:auto;flex-wrap:nowrap;padding-bottom:3px}
  .project-builder .type-buttons{overflow-x:auto}.project-builder .type-buttons .choice-button{min-width:105px}
  .option-note,.paper-info{grid-column:1}
}
@media(max-width:420px){
  .project-builder .choice-button{min-width:78px}
  .ink-benefit{padding:14px 16px}
}

/* v11: pinned quote + scrolling controls */
.inkbar{display:none}
.guided-form{display:block}
.pinned-preview{position:sticky;top:0;z-index:20;background:#fff;box-shadow:0 9px 16px -14px rgba(0,0,0,.48);padding:0 22px 12px}
.pin-colorbar{display:grid;grid-template-columns:repeat(4,1fr);height:4px;margin:0 -22px 12px}
.pin-colorbar i:nth-child(1){background:#00a9cf}.pin-colorbar i:nth-child(2){background:#d92386}.pin-colorbar i:nth-child(3){background:#f4d719}.pin-colorbar i:nth-child(4){background:#222}
.pinned-quote{display:grid;grid-template-columns:210px minmax(0,1fr);align-items:center;gap:24px;padding:2px 8px 13px;border-bottom:1px solid #ddd}
.pinned-price strong{display:block;font-size:clamp(3rem,6vw,5rem);font-weight:900;letter-spacing:-.07em;line-height:.85}.pinned-price small{display:block;color:#aaa;font-size:12px;margin:8px 0 0 22px}
.pinned-description{text-align:right}.pinned-description strong{display:block;font-size:clamp(1.15rem,2.4vw,1.75rem);font-weight:900;text-transform:uppercase}.pinned-description span{display:block;font-size:13px;margin-top:3px}
.pinned-preview .ink-benefit{padding:9px 8px;background:#fff;color:#b6b6b6;border-bottom:1px solid #e2e2e2;text-align:center;font-size:11px}.pinned-preview .ink-benefit strong{font-weight:500}.pinned-preview .ink-benefit span{color:#b6b6b6}
.pinned-preview .product-preview{height:clamp(350px,43vw,500px);min-height:0;margin:2px 0 0;overflow:hidden}
.project-builder{position:relative;z-index:1;border:0;border-radius:0;background:#fff;overflow:visible;padding:30px 22px 0}
.builder-title{font-size:1.45rem;margin:0 0 18px;padding-bottom:13px;border-bottom:1px solid #ddd}
.project-builder .chooser-row,.project-builder .option-row{display:block;margin:0;padding:0 0 16px;border:0}
.project-builder .chooser-row legend,.project-builder .option-row legend,.project-builder .option-row>div:first-child strong{display:block;color:#aaa;font-size:11px;font-weight:500;margin:0 0 8px}
.project-builder .choice-buttons{display:flex;flex-wrap:nowrap;gap:8px;width:100%}
.project-builder .choice-button{flex:1 1 0;min-width:0;min-height:57px;border:1px solid #111;border-radius:8px;background:#fff;color:#111;font-size:18px;font-weight:850;transition:background-color .14s ease,color .14s ease,border-color .14s ease,transform .14s ease}
.project-builder .choice-button:hover{transform:none;background:#f5f5f5}
.project-builder .type-buttons .type-poster:hover:not(.active){background:rgba(0,169,207,.1)}
.project-builder .type-buttons .type-banner:hover:not(.active){background:rgba(217,35,134,.1)}
.project-builder .type-buttons .type-sign:hover:not(.active){background:rgba(244,215,25,.1)}
.project-builder[data-intent="poster"] .choice-button:hover:not(.active){background:rgba(0,169,207,.1)}
.project-builder[data-intent="banner"] .choice-button:hover:not(.active){background:rgba(217,35,134,.1)}
.project-builder[data-intent="sign"] .choice-button:hover:not(.active){background:rgba(244,215,25,.1)}
.project-builder[data-intent="poster"] .choice-button.active,.project-builder .type-buttons .type-poster.active{background:#00a9cf;border-color:#008eb0;color:#fff}
.project-builder[data-intent="banner"] .choice-button.active,.project-builder .type-buttons .type-banner.active{background:#d92386;border-color:#b9186e;color:#fff}
.project-builder[data-intent="sign"] .choice-button.active,.project-builder .type-buttons .type-sign.active{background:#f4d719;border-color:#cfb600;color:#111}
.option-pair{display:grid;grid-template-columns:minmax(210px,.72fr) minmax(360px,1.48fr);gap:10px}
.project-builder .qty-stepper{display:grid;grid-template-columns:42px 1fr 42px;width:100%;height:57px;border:1px solid #111;border-radius:8px}
.project-builder .qty-stepper button{height:55px;background:#fff}.project-builder .qty-stepper strong{font-size:18px}
.project-builder[data-intent="poster"] .qty-stepper{background:#00a9cf;color:#fff}.project-builder[data-intent="poster"] .qty-stepper button{background:#00a9cf;color:#fff}
.project-builder[data-intent="banner"] .qty-stepper{background:#d92386;color:#fff}.project-builder[data-intent="banner"] .qty-stepper button{background:#d92386;color:#fff}
.project-builder[data-intent="sign"] .qty-stepper{background:#f4d719;color:#111}.project-builder[data-intent="sign"] .qty-stepper button{background:#f4d719;color:#111}
.project-builder .size-step{display:block}
.project-builder .size-buttons .choice-button{min-width:0}
.project-builder #mountButtons .choice-button:first-child,.project-builder #mountButtons .choice-button:last-child{flex:1}
.option-note{margin:7px 0 0;color:#777;font-size:11px}
.paper-info{margin:8px 0 0;padding:12px 14px}
.info-button{vertical-align:middle;border-color:#aaa;color:#888}
.print-summary{margin:6px 2px 0;padding:20px 22px;border:1px solid #c8c8c8;border-radius:16px;background:#f8f8f8}
.print-summary h3{font-size:20px;margin:0 0 12px}.print-summary p{color:#666;font-size:12px;margin:0 0 12px}.print-summary>strong{display:block;font-size:18px;line-height:1.45}.print-summary>span{display:block;color:#999;font-size:16px;margin-top:10px}

@media(max-width:760px){
  .pinned-preview{padding:0 12px 8px}.pin-colorbar{margin:0 -12px 9px}
  .pinned-quote{grid-template-columns:110px 1fr;gap:10px;padding:0 2px 9px}
  .pinned-price strong{font-size:2.8rem}.pinned-description strong{font-size:1rem}.pinned-description span{font-size:10px}
  .pinned-preview .ink-benefit{font-size:9px;padding:6px 2px}
  .pinned-preview .product-preview{height:250px;margin:0}
  .project-builder{padding:24px 2px 0}.builder-title{padding-left:3px}
  .option-pair{grid-template-columns:1fr}
  .project-builder .choice-buttons{overflow-x:auto}
  .project-builder .choice-button{min-width:105px;min-height:50px;font-size:15px}
  .project-builder .type-buttons .choice-button{min-width:0}
  .project-builder .qty-stepper{height:50px}.project-builder .qty-stepper button{height:48px}
}
@media(max-width:420px){
  .pinned-preview .product-preview{height:205px}
  .pinned-preview .ink-benefit span{display:none}
  .project-builder .type-buttons{gap:5px}.project-builder .type-buttons .choice-button{min-width:0;font-size:13px}
  .print-summary{padding:17px 15px}.print-summary>strong{font-size:16px}
}

/* v12: stable controls + integrated request summary */
.option-pair{grid-template-columns:repeat(2,minmax(0,1fr))}
.project-builder .choice-button{transition:none}
.project-builder .choice-button:hover{transform:none}
.project-builder .choice-buttons{flex-wrap:nowrap}
.pinned-quote{height:94px;box-sizing:border-box}
.pinned-price small{min-height:15px}
.pinned-description{min-width:0}.pinned-description strong,.pinned-description span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pinned-description span{min-height:18px}
#mountFieldset{position:relative;padding-bottom:33px}
#mountFieldset .option-note{position:absolute;left:0;right:0;bottom:14px;margin:0}
.send{border-top:0;padding:8px 22px 72px}
.send #requestForm{border:0;padding:0;background:transparent}
.request-summary{margin:0 0 24px;padding:17px 22px 21px;border:1px solid #c8c8c8;border-radius:16px;background:#f8f8f8}
.request-summary legend{padding:0 10px;background:#fff;color:#111;font-size:20px;font-weight:850}
.request-summary p{color:#666;font-size:12px;margin:0 0 12px}
.request-summary>strong{display:block;font-size:18px;line-height:1.45}
.request-summary>span{display:block;color:#999;font-size:16px;margin-top:10px}

@media(max-width:760px){
  .option-pair{grid-template-columns:1fr}
  .project-builder .choice-buttons{flex-wrap:nowrap}
  .send{padding:8px 2px 56px}
}

/* v13: balanced quantity/color row + unified typography */
.option-pair{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:auto 57px;gap:8px 10px}
.option-pair #qtyRow,.option-pair #colorFieldset,.option-pair #colorFieldset .choice-buttons{display:contents}
.option-pair #qtyRow>div:first-child{grid-column:1;grid-row:1}.option-pair #qtyRow>.qty-stepper{grid-column:1;grid-row:2}
.option-pair #colorFieldset>legend{grid-column:2/4;grid-row:1}.option-pair #colorFieldset .choice-button{grid-row:2;min-width:0}
.project-builder #colorFieldset legend{font-size:11px;font-weight:500;line-height:1.2;margin:0 0 8px}
.project-builder .choice-buttons .choice-button,.project-builder .type-buttons .choice-button{font-size:14px;font-weight:600}
.project-builder .qty-stepper strong,.project-builder .qty-stepper button{font-size:14px;font-weight:600}
.project-builder .option-row>div:first-child strong{font-size:11px;font-weight:500;line-height:1.2}
@media(max-width:760px){
  .option-pair{display:block}
  .option-pair #qtyRow,.option-pair #colorFieldset{display:block}
  .option-pair #colorFieldset .choice-buttons{display:flex}
}

/* v14: spacing and section separators */
.guided-quote{padding-top:0}
.pinned-preview{top:0}
.pin-colorbar{margin-top:0}
.option-pair{margin-bottom:16px}
.project-builder .chooser-row,.project-builder .option-row{padding-bottom:16px}
#mountFieldset{padding-bottom:30px;margin-bottom:28px;border-bottom:1px solid #ddd}
#mountFieldset .option-note{bottom:11px}
.request-summary{position:relative;margin-bottom:38px}
.request-summary::after{content:"";position:absolute;left:0;right:0;bottom:-20px;border-top:1px solid #ddd}
.send{padding-bottom:18px}
#formStatus{margin:8px 0 0}
#formStatus:empty{display:none}
@media(max-width:760px){.send{padding-bottom:18px}}

/* v15: larger mobile preview + tighter summary handoff */
.guided-quote{padding-bottom:0}
#mountFieldset{margin-bottom:10px}
.send{padding-top:0}
@media(max-width:760px){
  .pinned-preview .product-preview{height:500px}
  #mountFieldset{margin-bottom:4px}
  .request-summary{margin-top:0}
}
@media(max-width:420px){
  .pinned-preview .product-preview{height:410px}
}

/* v16: mobile proportion and rhythm corrections */
.pin-colorbar{
  position:relative;
  left:50%;
  width:100vw;
  max-width:none;
  transform:translateX(-50%);
  margin:0 0 12px;
}
.option-pair{margin:0;padding-bottom:16px}
#mountFieldset{margin-bottom:20px}
.fields{gap:18px 14px}
.fields label{margin-bottom:0}
#requestForm>label{margin-bottom:18px}

@media(max-width:760px){
  .pin-colorbar{margin-bottom:9px}
  .pinned-preview .product-preview{height:300px;margin:0}
  .pinned-preview .product-preview img{transform:scale(1.38);transform-origin:center center}
  .option-pair{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:auto 50px;gap:8px 8px;padding-bottom:16px}
  .option-pair #qtyRow,.option-pair #colorFieldset,.option-pair #colorFieldset .choice-buttons{display:contents}
  .option-pair #qtyRow>div:first-child{grid-column:1;grid-row:1}
  .option-pair #qtyRow>.qty-stepper{grid-column:1;grid-row:2}
  .option-pair #colorFieldset>legend{grid-column:2/4;grid-row:1}
  .option-pair #colorFieldset .choice-button{grid-row:2;min-width:0}
  #mountFieldset{margin-bottom:18px}
  .fields{gap:18px}
}
@media(max-width:420px){
  .pinned-preview .product-preview{height:260px}
  .pinned-preview .product-preview img{transform:scale(1.42)}
}

/* v17: mobile artwork breathing room + notes-field separation */
#requestForm>.notes-field{margin-top:18px}
@media(max-width:760px){
  .pinned-preview .product-preview{height:318px}
  .pinned-preview .product-preview img{transform:translateY(1px) scale(1.38)}
}
@media(max-width:420px){
  .pinned-preview .product-preview{height:278px}
  .pinned-preview .product-preview img{transform:translateY(1px) scale(1.42)}
}

/* v18: explicit mobile image gutters */
@media(max-width:760px){
  .pinned-preview .product-preview{height:336px}
  .pinned-preview .product-preview img{
    inset:10px 0 auto;
    height:318px;
    transform:scale(1.38);
  }
}
@media(max-width:420px){
  .pinned-preview .product-preview{height:296px}
  .pinned-preview .product-preview img{
    inset:10px 0 auto;
    height:278px;
    transform:scale(1.42);
  }
}

/* v19: slightly wider artwork gutters + compact paired labels */
@media(max-width:760px){
  .pinned-preview .product-preview{height:350px}
  .pinned-preview .product-preview img{inset:18px 0 auto}
  .option-pair{row-gap:2px}
  .option-pair #qtyRow>div:first-child strong,
  .project-builder #colorFieldset legend{margin-bottom:0}
}
@media(max-width:420px){
  .pinned-preview .product-preview{height:310px}
  .pinned-preview .product-preview img{inset:18px 0 auto}
}

/* v20: final mobile preview and paired-row rhythm */
@media(max-width:760px){
  .pinned-preview .product-preview{height:360px}
  .pinned-preview .product-preview img{inset:24px 0 auto}
  .option-pair{row-gap:8px}
}
@media(max-width:420px){
  .pinned-preview .product-preview{height:320px}
  .pinned-preview .product-preview img{inset:24px 0 auto}
}

/* v21: uncropped responsive previews + polished summary */
.pinned-preview .product-preview img{transform:scale(1.2);transform-origin:center center}
.pinned-preview .product-preview.banner-preview img{transform:none}
.project-builder[data-intent="sign"] #mountFieldset{border-bottom:0}
.request-summary{padding:20px 22px 22px}
.request-summary legend{font-size:20px;font-weight:800}
.request-summary>strong{font-size:17px;font-weight:700;line-height:1.4}
.request-summary .summary-note{margin:11px 0 0;color:#777;font-size:13px;font-weight:400;line-height:1.5}

@media(max-width:760px){
  .pinned-preview .product-preview{
    width:calc(100% + 24px);
    height:360px;
    margin-left:-12px;
    margin-right:-12px;
  }
  .pinned-preview .product-preview img{
    inset:24px 0 18px;
    width:100%;
    height:calc(100% - 42px);
    transform:none;
    object-fit:contain;
  }
}
@media(max-width:420px){
  .pinned-preview .product-preview{height:320px}
}

/* v22: compact preview and balanced Sign handoffs */
.project-builder[data-intent="sign"] #mountFieldset{
  margin-bottom:0;
  padding-bottom:16px;
}
.project-builder[data-intent="sign"] #mountFieldset:has(.option-note:not([hidden])){padding-bottom:30px}
.project-builder[data-intent="sign"] #grommetFieldset{padding-bottom:30px}

@media(max-width:760px){
  .pinned-preview .product-preview{height:300px}
  .pinned-preview .product-preview img,
  .pinned-preview .product-preview.banner-preview img{
    inset:10px 0 8px;
    height:calc(100% - 18px);
    transform:scale(1.08);
  }
}
@media(max-width:420px){
  .pinned-preview .product-preview{height:285px}
}

/* v23: uniform chooser control heights */
.project-builder .choice-button,
.project-builder .qty-stepper{height:57px;min-height:57px}
.project-builder .qty-stepper button{height:100%}

@media(max-width:760px){
  .project-builder .choice-button,
  .project-builder .qty-stepper{height:50px;min-height:50px}
  .project-builder .qty-stepper button{height:100%}
  .pinned-preview .product-preview img,
  .pinned-preview .product-preview.banner-preview img{transform:scale(1.19)}
}
