:root{font-family:Arial,Helvetica,sans-serif;color:#183445;background:#f2f5f7;font-size:16px;line-height:1.5;--ink:#123c50;--lime:#c4eb42;--line:#d5dfe4}*{box-sizing:border-box}body{margin:0}header,footer{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:24px max(24px,calc((100vw - 1200px)/2));background:#fff}header{border-bottom:1px solid var(--line)}a{color:var(--ink);text-underline-offset:3px}.brand{font-size:27px;font-weight:800;text-decoration:none;letter-spacing:1px}.brand span{display:block;font-size:11px;letter-spacing:1.6px;font-weight:600}.badge{font-size:14px;border:1px solid var(--line);padding:7px 13px;border-radius:20px}main{max-width:1248px;margin:auto;padding:36px 24px 64px}.intro{margin-bottom:32px}.intro p{margin:8px 0;color:#526875}.eyebrow{font-size:12px;letter-spacing:1.5px;font-weight:700}h1{font-size:clamp(28px,4vw,42px);line-height:1.15;letter-spacing:-1px;margin:10px 0 16px}h2{font-size:21px;line-height:1.3;margin:0 0 24px}h3{font-size:16px;margin:25px 0 12px}.layout{display:grid;grid-template-columns:minmax(0,1fr) 355px;gap:28px;align-items:start}.card{background:#fff;border:1px solid var(--line);border-radius:12px;padding:28px;margin-bottom:22px}.step{font-size:14px;color:#627984;margin-right:12px}.fields{display:grid;grid-template-columns:1fr 1fr;gap:20px}.wide{grid-column:1/-1}label{display:block;font-size:14px;font-weight:600}input,select{display:block;width:100%;min-height:47px;margin-top:7px;padding:10px 12px;border:1px solid #a8bbc5;border-radius:6px;font:inherit;color:#183445;background:white}input:focus,select:focus,button:focus-visible,a:focus-visible{outline:3px solid #528aa6;outline-offset:3px}small,.small{font-size:13px}label small{font-weight:400;color:#536d7a}.muted{color:#526875}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:14px}th,td{padding:11px;text-align:left;border-bottom:1px solid var(--line);white-space:nowrap}th{font-weight:600;background:#f2f5f7}td input{min-width:90px;max-width:150px}table .selected{background:#eff8ce;font-weight:700}aside{position:sticky;top:24px}.summary{background:var(--ink);color:white;padding:28px;border-radius:12px}.summary .eyebrow{color:var(--lime)}.summary h2{font-size:25px;margin:14px 0}.summary p{color:#d6e5ec}.summary dl{margin:24px 0 0}.summary dl div{display:flex;justify-content:space-between;gap:16px;margin:14px 0}.summary dt{font-size:14px}.summary dd{margin:0;white-space:nowrap}.summary .total{font-size:23px;border-top:1px solid #52717f;padding-top:17px}.summary .total dt{font-size:17px}.summary .shipping{color:var(--lime);font-size:14px;margin:20px 0}button,.button{display:inline-block;border:0;border-radius:6px;background:var(--ink);color:#fff;padding:13px 19px;font-size:15px;font-weight:700;cursor:pointer;text-decoration:none}button:hover,.button:hover{filter:brightness(1.12)}button:disabled{opacity:.5;cursor:not-allowed}.summary button{background:var(--lime);color:#123c50;width:100%}.secondary{background:#e9f0f4;color:var(--ink)}.check{display:flex;align-items:flex-start;gap:10px;font-weight:400;margin:24px 0}.check input,input[type=checkbox]{width:19px;height:19px;min-height:19px;flex-shrink:0;margin:2px 0}.trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}#message:not(:empty){padding:16px 20px;background:#fff4d9;border:1px solid #e1be67;border-radius:8px}#message.error{background:#fff0ef;border-color:#cf8b86;color:#8a2118}.toolbar,.section-head{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:22px}.section-head h2{margin:0}nav{display:flex;gap:24px}.narrow{max-width:500px}#loginForm label{margin-bottom:20px}.model-list{display:flex;gap:10px;flex-wrap:wrap}.model-list button{font-weight:500}hr{border:0;border-top:1px solid var(--line);margin:28px 0}details{padding:18px 0;border-bottom:1px solid var(--line)}summary{cursor:pointer;font-weight:600}pre{white-space:pre-wrap;font:14px/1.7 Arial,sans-serif}footer{font-size:13px;color:#526875;justify-content:flex-start;flex-wrap:wrap}footer a:first-of-type{margin-left:auto}[hidden]{display:none!important}@media(max-width:950px){.layout{grid-template-columns:minmax(0,1fr) 310px;gap:18px}.card,.summary{padding:20px}}@media(max-width:760px){.layout{grid-template-columns:1fr}aside{position:static}.fields{grid-template-columns:1fr}.wide{grid-column:auto}header{padding:20px}.brand{font-size:23px}.brand span{font-size:10px}.badge{font-size:12px}main{padding:26px 16px 40px}nav{gap:15px;flex-wrap:wrap}header>a:not(.brand){font-size:13px}}
[class="shop"]{background:linear-gradient(180deg,#eaf1f5 0,#f5f7f9 480px)}
.shop .intro{max-width:800px;margin-bottom:34px}
.shop .card{border-color:#dce5e9;border-radius:16px;box-shadow:0 5px 22px #163c5006}
.shop h2{display:flex;align-items:center;gap:12px}
.shop .step{display:inline-flex;align-items:center;justify-content:center;flex:0 0 36px;height:36px;margin:0;background:#eaf2f6;color:#254f64;border-radius:50%;font-size:13px;font-weight:700}
.shop .fields{gap:22px 20px;align-items:start;grid-template-columns:repeat(2,minmax(0,1fr))}
.shop .fields>label{min-width:0;line-height:1.45}
.shop input,.shop select{font-size:16px;min-height:50px;border-radius:8px;border-color:#b5c7d0;background:#fcfdfe}
.shop input:hover,.shop select:hover{border-color:#597f93}
.shop input:focus,.shop select:focus{background:#fff}
.shop .badge{background:#eaf6c8;border-color:#d0e79a;color:#244819;font-weight:800;white-space:nowrap}
.shop .summary{border-radius:16px;border-top:5px solid var(--lime);box-shadow:0 12px 32px #123c501a}
.shop .summary h2{display:block;overflow-wrap:anywhere}
.shop .summary dl div{flex-wrap:wrap;row-gap:4px}
.shop .summary dd{margin-left:auto;font-variant-numeric:tabular-nums}
.shop .summary .shipping{padding:14px 16px;background:var(--lime);color:#173f23;border-radius:8px;font-size:17px;font-weight:800;text-align:center}
.shop .summary button{min-height:54px;background:#fff;color:var(--ink);font-size:16px}
.shop .summary button:hover:not(:disabled){background:#eaf2f6}
.shop .table-wrap{border:1px solid var(--line);border-radius:9px}
.shop #tiers th,.shop #tiers td{text-align:center;padding:12px 8px}
.shop #tiers td{font-variant-numeric:tabular-nums}
.shop #tiers th.selected{background:#dceea6;color:#244819}
.shop #orderForm>.card:last-child .small{margin-bottom:0;margin-top:22px}
.shop button,.shop a{-webkit-tap-highlight-color:transparent;touch-action:manipulation}
@media(max-width:1000px) and (min-width:761px){.shop .fields{grid-template-columns:minmax(0,1fr)}}
@media(max-width:760px){
 .shop header{flex-wrap:wrap;gap:14px;padding:20px}
 .shop .badge{font-size:14px}
 .shop main{padding:24px 16px 36px}
 .shop .intro{margin-bottom:24px}
 .shop h1{font-size:32px;letter-spacing:-.7px}
 .shop .card,.shop .summary{padding:22px 20px}
 .shop .fields{grid-template-columns:minmax(0,1fr);gap:19px}
 .shop .card{margin-bottom:18px}
 .shop .layout{gap:0}
 .shop h2{font-size:20px;line-height:1.4}
 .shop .summary h2{font-size:25px}
 .shop footer{padding:22px 20px;gap:18px}
 .shop footer a{display:inline-flex;min-height:44px;align-items:center}
}
@media(max-width:600px){
 .shop #tiers thead{display:none}
 .shop #tiers,.shop #tiers tbody{display:block;width:100%}
 .shop #tiers tr{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
 .shop #tiers td{display:block;text-align:left;border:1px solid #dce5e9;border-radius:8px;padding:10px 12px;background:#f6f8fa;font-size:17px}
 .shop #tiers td::before{content:attr(data-label);display:block;font-size:13px;color:#526875;margin-bottom:4px;font-weight:400}
 .shop #tiers td.selected{background:#eff8ce;border-color:#9abb4a;color:#244819}
 .shop #tiers td:last-child{grid-column:1/-1}
 .shop .table-wrap{border:0;border-radius:0}
}
@media(prefers-reduced-motion:no-preference){.shop input,.shop select,.shop button{transition:background-color .15s,border-color .15s}}
.shop textarea{display:block;width:100%;min-height:130px;margin-top:7px;padding:12px;border:1px solid #b5c7d0;border-radius:8px;font:400 16px/1.5 Arial,Helvetica,sans-serif;color:#183445;background:#fcfdfe;resize:vertical}
.shop textarea:focus{outline:3px solid #528aa6;outline-offset:3px;background:#fff}
.shop textarea::placeholder{color:#617583;opacity:1}
.optional{font-weight:400;color:#526875}
#success{width:min(540px,calc(100% - 32px));max-height:calc(100dvh - 32px);overflow:auto;padding:36px 28px 28px;border:0;border-radius:18px;color:#183445;box-shadow:0 20px 90px #09243455;text-align:center}
#success::backdrop{background:#092434b3}
#success h2{display:block;font-size:27px;line-height:1.25;margin:16px 0}
#success .success-check{display:grid;place-items:center;width:58px;height:58px;border-radius:50%;background:#eaf6c8;color:#244819;font-size:32px;font-weight:800;margin:0 auto}
#success .success-close{position:absolute;top:8px;right:8px;width:44px;height:44px;display:grid;place-items:center;text-decoration:none;font-size:28px;border-radius:50%}
#success .button{display:block;margin-top:24px;min-height:50px}
#receipt{font-weight:700;overflow-wrap:anywhere}
#confirmationMail{font-size:14px;color:#526875}
#orderList button{margin:8px 8px 0 0}
.shop header .badge{background:#c62828;border-color:#c62828;color:#fff;white-space:normal;max-width:100%;font-weight:800}
.artwork-box{padding:18px;border:1px dashed #91aebb;border-radius:10px;background:#f5f9fb}
.shop input[type=file]{min-height:52px;height:auto;white-space:normal;background:white;max-width:100%;padding:8px;font-size:14px}
.shop input[type=file]::file-selector-button{border:0;border-radius:6px;background:#123c50;color:white;padding:12px;margin-right:10px;font:700 14px Arial,sans-serif;cursor:pointer}
.artwork-list{padding:0;margin:0;list-style:none}
.artwork-list li{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px;padding-top:12px;border-top:1px solid #d5dfe4}
.artwork-list span{min-width:0;overflow-wrap:anywhere;font-size:14px}
.artwork-list button{min-height:44px;flex-shrink:0;font-size:13px;padding:10px}
