:root{--pf-bg:#12110f;--pf-panel:#1d1a17;--pf-text:#f4eee3;--pf-muted:#b6aa98;--pf-gold:#d2af77;--pf-border:rgba(232,203,150,.2)}
.physical-checkout{padding:54px 0 82px}.physical-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(340px,.9fr);gap:52px;align-items:start}
.physical-preview-stage{background:#e9e3d8;border-radius:2px;min-height:570px;display:grid;place-items:center;padding:48px;position:sticky;top:112px}
.physical-frame{--frame:#171717;background:var(--frame);padding:14px;box-shadow:0 18px 44px #0005,0 1px 2px #0008;max-width:100%;transition:background .2s,transform .2s}
.physical-frame.white{--frame:#f6f3ec;box-shadow:0 18px 44px #0003,0 0 0 1px #bbb}
.physical-frame.natural{--frame:#b78d5c;background:linear-gradient(90deg,#a97f50,#c6a173 30%,#b18454 70%,#c39a69)}
.physical-frame.brown{--frame:#563727;background:linear-gradient(90deg,#4a2f22,#684632 45%,#503225)}
.physical-frame img{display:block;width:100%;height:auto;max-height:650px;object-fit:contain;background:#f5f0e7}
.physical-panel{background:var(--pf-panel);border:1px solid var(--pf-border);padding:30px}.physical-panel h1{font:400 clamp(38px,5vw,62px)/1.02 Georgia,serif;margin:8px 0 10px}
.physical-panel .lead{color:var(--pf-muted);margin:0 0 24px}.physical-field{border-top:1px solid var(--pf-border);padding:20px 0}.physical-field:first-of-type{border-top:0}
.physical-field h2{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--pf-gold);margin:0 0 12px}.option-row{display:flex;gap:10px;flex-wrap:wrap}
.option{appearance:none;border:1px solid #5a5044;background:#161411;color:var(--pf-text);padding:11px 14px;min-width:74px;cursor:pointer}.option[aria-pressed=true]{border-color:var(--pf-gold);box-shadow:0 0 0 1px var(--pf-gold);color:#fff}
.color-option{display:flex;align-items:center;gap:9px}.swatch{width:18px;height:18px;border-radius:50%;border:1px solid #8d8375}.swatch.black{background:#161616}.swatch.white{background:#f5f1e9}.swatch.natural{background:#b98d58}.swatch.brown{background:#573829}
.physical-summary{display:grid;gap:8px;padding:18px;background:#151310;border:1px solid #40382f;margin:5px 0 18px}.physical-summary div{display:flex;justify-content:space-between;gap:20px}.physical-summary span{color:var(--pf-muted)}.physical-summary strong{text-align:right;font-weight:600}
.physical-status{padding:14px 16px;border:1px solid #655137;background:#221d17;color:#ddc7a6;margin:16px 0}.physical-buy{width:100%;min-height:50px;border:1px solid #65594a;background:#2a2722;color:#8e8578;font-weight:800;cursor:not-allowed}.physical-note{font-size:12px;color:var(--pf-muted);margin-top:12px}
.physical-option-card{margin:20px 0;padding:18px;border:1px solid #6b5738;background:linear-gradient(135deg,#221d17,#181613)}.physical-option-card strong{display:block;font:400 22px Georgia,serif;margin-bottom:4px}.physical-option-card p{margin:4px 0 14px!important}.physical-option-card .btn{margin-right:8px}
@media(max-width:900px){.physical-grid{grid-template-columns:1fr}.physical-preview-stage{position:static;min-height:420px;padding:28px}.physical-panel{padding:22px}}
@media(max-width:520px){.physical-checkout{padding-top:28px}.physical-preview-stage{min-height:330px;padding:20px}.physical-frame{padding:10px}.option{flex:1 1 92px}.physical-panel{padding:18px}}

/* Gesso & Ouro unified commerce: two formats, one artwork page. */
.gesso-unified .detail-grid{gap:clamp(24px,4vw,60px)}
.gesso-unified .detail-img{background:transparent}
.gesso-preview-stage{display:grid;place-items:center;min-height:450px;padding:clamp(22px,4vw,48px);background:linear-gradient(135deg,#b8afa2,#d8d0c4 50%,#b0a699);border:1px solid #4f493f;box-shadow:inset 0 0 35px #0001}
.gesso-preview-stage.digital-mode{background:#25211d;border:0;padding:0;min-height:0}
.gesso-preview-stage .physical-frame{width:fit-content;max-width:100%;margin:auto}
.gesso-preview-stage .physical-frame img{display:block;max-width:100%;max-height:620px;width:auto;height:auto;object-fit:contain}
.gesso-preview-stage.digital-mode .physical-frame{padding:0;background:transparent;border:0;box-shadow:none;max-width:100%;width:100%}
.gesso-preview-stage.digital-mode img{width:100%;max-height:740px}
.gesso-unified .detail-info h1{margin-bottom:18px}
.gesso-format-tabs{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:20px 0 25px}
.gesso-format-tab{appearance:none;border:1px solid #5f523f;background:#201c17;color:#f4eee3;padding:14px 16px;text-align:left;cursor:pointer;min-height:78px;display:flex;flex-direction:column;justify-content:center;gap:3px}
.gesso-format-tab strong{font-size:15px;line-height:1.2}
.gesso-format-tab small{color:#b6aa98;font-size:12px;line-height:1.35}
.gesso-format-tab[aria-selected="true"]{border-color:#d2af77;box-shadow:inset 0 0 0 1px #d2af77;background:#2b251b}
.gesso-format-tab[aria-selected="true"] small{color:#e7cfa8}
.gesso-physical-details .gesso-physical-lead{font-size:14px;color:#c9bdad;margin:0 0 17px}
.gesso-physical-details .physical-field{padding:16px 0}
.gesso-physical-details .physical-summary{margin-top:15px}
.gesso-physical-details .gesso-availability{color:#d8c5a4;font-size:13px;line-height:1.55}
.gesso-physical-details .physical-buy{cursor:not-allowed}
.gesso-unified [hidden]{display:none!important}
.physical-frame.white{
  --frame:#f9f8f5;
  background:linear-gradient(130deg,#fff 0%,#f8f7f3 45%,#e6e3dd 80%,#fff 100%);
  border:1px solid #8d8881;
  box-shadow:inset 0 0 0 2px #fff,inset 0 0 0 4px #e2ded6,0 22px 40px #25201944,0 2px 4px #24201955
}
.physical-frame{border:1px solid #484139}
.physical-frame img{outline:1px solid #b9b0a4}
@media(max-width:720px){.gesso-preview-stage{min-height:290px;padding:20px}.gesso-unified .detail-info h1{margin-bottom:15px}}
@media(max-width:400px){.gesso-format-tabs{gap:7px}.gesso-format-tab{padding:11px 10px;min-height:75px}.gesso-format-tab strong{font-size:13px}.gesso-format-tab small{font-size:11px}}

/* Printile frame texture preview, 2cm traditional profile, reference URLs in JS. */
.gesso-unified .gesso-preview-stage:not(.digital-mode){
 background:linear-gradient(140deg,#dfdedb,#eeece9 48%,#ddd9d3);
 border:1px solid #b7b0a5;
}
.physical-frame.supplier-native-frame{
 box-sizing:border-box;
 border:0!important;border-radius:0;
 background-color:#ddd9d2;
 background-image:var(--supplier-texture)!important;
 background-size:100% 100%!important;
 background-position:center!important;
 background-repeat:no-repeat!important;
 padding:var(--supplier-rim,22px)!important;
 box-shadow:0 22px 42px -14px rgba(35,28,18,.48),0 3px 9px rgba(35,28,18,.18)!important;
 max-width:100%;
}
.gesso-preview-stage .supplier-native-frame{width:min(100%,730px);min-width:0}
.gesso-preview-stage .supplier-native-frame[data-orientation="vertical"]{width:min(100%,475px)}
.gesso-preview-stage .supplier-native-frame img{
 display:block;width:100%;max-height:none;height:auto;
 outline:none!important;object-fit:cover;
 background:#f4eee6;
}
.gesso-preview-stage.digital-mode .supplier-native-frame{
 padding:0!important;width:100%;
 background-image:none!important;background-color:transparent!important;
 box-shadow:none!important;
}
.gesso-preview-stage.digital-mode .supplier-native-frame img{max-height:740px;object-fit:contain}
@media(max-width:720px){
 .gesso-unified .gesso-preview-stage:not(.digital-mode){padding:16px}
 .gesso-preview-stage .supplier-native-frame{max-width:100%}
}

/* Printile additional physical finishes: supplier catalog options A4/A3/A2. */
.visually-hidden{position:absolute!important;clip:rect(0,0,0,0)!important;width:1px!important;height:1px!important;overflow:hidden!important;white-space:nowrap!important}
.gesso-unified .physical-finish-select{appearance:none;display:block;width:100%;border:1px solid #75664e;border-radius:2px;background:#201c17;color:#f4eee3;padding:13px 42px 13px 14px;font:inherit;line-height:1.4;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%23d2af77' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center}
.gesso-unified .physical-finish-select:focus-visible{outline:2px solid #d2af77;outline-offset:2px}
.gesso-unified .physical-finish-select option{background:#1d1a17;color:#f4eee3}
.gesso-unified .physical-finish-help{font-size:12px;color:#bcb09e;margin:9px 0 0;line-height:1.55}
.gesso-unified .physical-field[hidden]{display:none!important}
.gesso-unified .option:disabled{opacity:.35;cursor:not-allowed;box-shadow:none;border-color:#4c463f}
.gesso-preview-stage .physical-art-surface{position:relative;display:block;overflow:hidden;width:100%}
.gesso-preview-stage .physical-art-surface>img{display:block;width:100%;max-height:none!important;height:auto;object-fit:contain}
.gesso-preview-stage .supplier-native-frame.has-acrylic-glass .physical-art-surface::after{
content:"";position:absolute;inset:0;pointer-events:none;
background-image:url("https://printile.me/assets/acrilico-CSnDb034.png");
background-position:center;background-size:100% 100%;background-repeat:no-repeat;
opacity:.35;mix-blend-mode:screen
}
.gesso-preview-stage .printile-unframed{width:min(100%,730px);max-width:100%;padding:0!important;background-image:none!important;box-sizing:border-box}
.gesso-preview-stage .printile-unframed[data-orientation="vertical"]{width:min(100%,475px)}
.gesso-preview-stage .printile-poster{border:1px solid #cec7be!important;background:#faf7f0!important;box-shadow:0 13px 27px -8px #2b211d55,0 2px 5px #2b211d33!important}
.gesso-preview-stage .printile-panel{border:1px solid #ded6cd!important;background:#f8f4ed!important;box-shadow:3px 4px 0 #bbb3ab,0 17px 31px -9px #2b211d66!important}
.gesso-preview-stage.digital-mode .physical-art-surface::after{display:none!important}
.gesso-preview-stage.digital-mode .printile-unframed{padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important;width:100%!important}
