:root{color-scheme:dark;--bg:#080f25;--panel:#111e3b;--line:#2a3a59;--text:#f8faff;--muted:#b1c0da;--blue:#8fc5ff;--red:#cb353a;--navy:#0c174d;--gold:#e9c276;--radius:18px;--display:"Barlow Condensed","Avenir Next Condensed","Arial Narrow",Impact,sans-serif}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:radial-gradient(ellipse at 72% 0,#122247 0,transparent 42rem),var(--bg);color:var(--text);font:16px/1.5 "DM Sans",system-ui,sans-serif}
body:has(dialog[open]){overflow:hidden}
h1,h2,h3,p,figure,dl,dd{margin:0}
a{color:inherit}
button,input,textarea{font:inherit}
button{cursor:pointer;color:inherit}
button:disabled{cursor:default;opacity:.47}
button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid var(--blue);outline-offset:3px}
button:where(:not(.primary)),input,textarea{border:1px solid var(--line);background:#0b1630}
[hidden]{display:none!important}
.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.storefront{position:relative;isolation:isolate;background:#080f25}
.storefront::before,.storefront::after{
  content:"";position:fixed;z-index:-1;inset:0;pointer-events:none;
  background-repeat:no-repeat;background-size:cover;
}
.storefront::before{
  background-image:linear-gradient(125deg,#25457360,#080f2566),url("/assets/torcida-maracana.webp");
  background-position:24% center;opacity:.29;mask-image:linear-gradient(110deg,#000 12%,#000b 34%,transparent 69%);
}
.storefront::after{
  background-image:linear-gradient(125deg,#101c4450,#2b183c66),url("/assets/torcida-castelao.webp");
  background-position:71% center;opacity:.30;mask-image:linear-gradient(110deg,transparent 29%,#000a 61%,#000 91%);
}
.wrap{width:min(1230px,calc(100% - 72px));margin-inline:auto}
.site-header{border-bottom:1px solid #263656;background:#080f25d9}
.header-inner,.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:16px}
.header-inner{min-height:74px}
.brand{display:flex;gap:12px;align-items:center;text-decoration:none;line-height:1.15}
.brand img{border-radius:50%;object-fit:contain;flex:none}
.brand strong{display:block;font:800 25px/1.02 var(--display);letter-spacing:.025em}
.brand small{display:block;color:var(--muted);font-size:10px;font-weight:650;letter-spacing:.075em;margin-top:5px}
.storefront .brand small{color:#decba9}
nav{display:flex;gap:30px}
nav a,footer a{text-decoration:none}
nav a{font-size:13px;color:#d9e4f6;font-weight:650}
nav a:hover,footer a:hover{color:var(--blue)}
.test-banner{text-align:center;padding:7px 12px;background:#252237;border-bottom:1px solid #54433e;color:#ffe0a8;font-size:12px;font-weight:750;letter-spacing:.035em}
.product{display:grid;grid-template-columns:minmax(0,1.56fr) minmax(0,1fr);align-items:center;gap:clamp(30px,5vw,76px);padding:52px 0 56px}
.gallery{display:grid;grid-template-columns:77px minmax(0,1fr);grid-template-areas:"options cover";align-items:center;gap:14px;min-width:0}
.cover{grid-area:cover;isolation:isolate;position:relative;display:grid;place-items:center;width:100%;aspect-ratio:1.1;overflow:hidden;border-radius:18px;border:1px solid transparent;background:radial-gradient(ellipse at 54% 43%,#f4f1ea 5%,#dedbd7 55%,#b5b9c4 100%) padding-box,linear-gradient(135deg,#edce90,#7c603d 35%,#fff0c4 62%,#9d773d) border-box;padding:0;touch-action:pan-y pinch-zoom;box-shadow:0 18px 48px #02071255}
.cover::before{content:"";position:absolute;inset:7px;border:1px solid #9c774255;border-radius:inherit;pointer-events:none}
.cover::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(115deg,transparent 40%,#fff3cd52 49%,transparent 59%);transform:translateX(-110%)}
.cover img{width:100%;height:100%;object-fit:contain;position:absolute;inset:0;filter:drop-shadow(0 13px 13px #10244845);transition:transform .25s ease}
.cover[data-active=front] img,.cover[data-active=back] img{padding:22px 10px}
@media(hover:hover){.cover:hover img{transform:scale(1.027)}}
@media(hover:hover) and (prefers-reduced-motion:no-preference){.cover:hover::after{animation:gallery-glint .75s ease-out}}
@keyframes gallery-glint{to{transform:translateX(110%)}}
.cover-zoom{position:absolute;right:14px;bottom:14px;border:1px solid #d5b77c91;border-radius:999px;padding:7px 12px;background:#0c1934ed;color:#f6dfb5;display:flex;align-items:center;gap:7px;font-size:12px;font-weight:700}
.cover-zoom span{font-size:17px;line-height:1}
.gallery-options{grid-area:options;display:grid;gap:8px}
.gallery-options button{display:grid;justify-items:center;gap:2px;align-content:center;min-height:75px;border-radius:9px;padding:5px;color:#e2ebfb;background:#102043b8;font-size:10px;line-height:1.15;font-weight:720;text-align:center}
.gallery-options img{object-fit:contain;border-radius:4px;width:48px;height:44px;background:#bdcce2}
.gallery-options button[aria-pressed=true]{border-color:#d3ad6e;background:#27263a;color:#ffe5af}
.views,.zoom-tools{display:flex;gap:7px;flex-wrap:wrap}
.views button,.zoom-tools button{min-height:42px;border-radius:9px;padding:6px 13px;color:#d9e8ff;font-size:13px;font-weight:650}
.gallery-options button:hover,.views button:hover,.zoom-tools button:hover{border-color:var(--blue)}
.eyebrow{display:flex;align-items:center;gap:9px;color:#f0d7a6;font-weight:780;font-size:11px;letter-spacing:.155em}
.eyebrow span{width:24px;height:2px;background:linear-gradient(90deg,#a67536,#f8e1aa);display:block}
h1,h2{font-family:var(--display);font-weight:850;line-height:.98;letter-spacing:-.02em}
h1{font-size:clamp(54px,6.1vw,88px);text-transform:uppercase;margin:10px 0 16px}
#product-title{width:fit-content;max-width:100%;margin:18px 0 15px;padding:.04em .14em .12em 0;font:italic 500 clamp(48px,5.7vw,88px)/.98 "Baskervville",Baskerville,Georgia,serif;letter-spacing:-.063em;text-transform:none;color:var(--gold)}
@supports(background-clip:text){
  #product-title{background:linear-gradient(108deg,#e8ba71 6%,#fff1cd 28%,#dbac65 49%,#f8dfad 71%,#bd8747 100%);background-clip:text;color:transparent}
}
@media(forced-colors:active){#product-title{background:none;color:CanvasText}}
.product-description{max-width:39ch;color:#d0ddf2;line-height:1.55}
.material{display:flex;align-items:center;flex-wrap:wrap;gap:8px;font-size:13px;font-weight:710;margin:14px 0 20px}
.material span{width:4px;height:4px;border-radius:50%;background:var(--gold)}
.glass,.order-summary{background:linear-gradient(142deg,#21365d9c,#101b36b8);border:1px solid #435574;border-radius:var(--radius);backdrop-filter:blur(12px)}
.buy{padding:18px;scroll-margin-block:12px;border-color:#ab8a586b;box-shadow:inset 0 1px #f1cb8a19}
.price-row{display:flex;justify-content:space-between;align-items:center;gap:10px;border-bottom:1px solid var(--line);padding-bottom:11px;margin-bottom:12px}
.price-row small{display:block;color:#adc1df;font-size:10px;font-weight:750;letter-spacing:.12em}
.price-row strong{display:block;font-size:33px;line-height:1.22;letter-spacing:-.055em}
.price-row p{font-size:11px;font-weight:700;color:#ffe1a3;background:#d2a64d14;border:1px solid #bf9d554f;padding:5px 9px;border-radius:5px;text-align:center}
fieldset{border:0;margin:0;padding:0;min-width:0}
legend,.buy-footer label{font-size:13px;font-weight:730;margin-bottom:7px}
.size-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}
.size-grid button{min-height:44px;border-radius:8px;font-weight:750}
.size-grid button[aria-pressed=true],.views button[aria-pressed=true]{border-color:#91bdff;background:#264e83;color:#fff}
.size-grid button:disabled{text-decoration:line-through}
.availability,.purchase-note{font-size:12px;color:var(--muted)}
.availability{margin-top:6px;min-height:18px}
.buy-footer{display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px;align-items:end;margin-top:9px}
.buy-footer label{display:block}
.stepper{display:flex;align-items:center;gap:2px}
.stepper button{width:39px;height:45px;border-radius:8px;font-size:19px;line-height:1}
.stepper output{min-width:29px;text-align:center;font-weight:700}
.buy-action p{display:flex;justify-content:flex-end;align-items:baseline;gap:9px;margin-bottom:5px;color:var(--muted);font-size:12px}
.buy-action strong{color:var(--text);font-size:15px}
.primary{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;min-height:46px;border:1px solid #ff7a7d55;border-radius:9px;background:#ba2c38;color:#fff;font-weight:780;padding:8px 13px;text-align:left}
.primary:not(:disabled):hover{background:#a8202d}
.purchase-note{display:flex;align-items:center;gap:8px;margin-top:10px}
.pix-icon{color:#9ecfff;font-size:21px;line-height:1}
.section{border-top:1px solid #273955;padding:45px 0;scroll-margin-top:20px}
.section-heading{margin-bottom:22px}
.section-heading h2{font-size:clamp(37px,5vw,64px)}
.section-heading>p:last-child:not(.eyebrow){color:var(--muted);margin-top:12px}
.art-grid,.delivery-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.art-card,.delivery-grid article{border:1px solid var(--line);background:#0e1933;border-radius:16px;overflow:hidden}
.art-card{display:grid;grid-template-columns:43% minmax(0,1fr);align-items:center;min-height:248px}
.art-card figure{height:100%;min-height:248px;display:grid;place-items:center;overflow:hidden}
.art-front{background:#dce8fa}
.art-front img{width:74%;max-height:225px;height:auto;object-fit:contain}
.art-back{background:#0b1231;padding:11px}
.art-back img{width:100%;max-height:265px;height:auto;object-fit:contain}
.art-card>div,.delivery-grid article{padding:20px}
.art-card p,.delivery-grid p{color:var(--muted);font-size:14px;margin-top:6px}
.delivery-grid a{color:var(--blue);display:inline-block;margin-top:7px}
footer{border-top:1px solid var(--line);color:var(--muted);padding:19px 0 25px;font-size:12px}
.photo-credit{margin-top:12px;color:#a9bad4;font-size:11px}
.photo-credit summary{width:fit-content;cursor:pointer}
.photo-credit p{margin-top:5px}
.photo-credit a{text-decoration:underline;text-underline-offset:2px}
.mobile-buy{display:none}
dialog{color:var(--text)}
dialog::backdrop{background:#030711d6;backdrop-filter:blur(5px)}
.dialog{width:min(540px,calc(100% - 24px));max-height:calc(100% - 24px);padding:22px;border-radius:17px;border:1px solid #435574;background:#111e3b}
.dialog-head,.viewer-bar{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:12px}
.dialog-head h2{font-size:36px}
.icon-button{border-radius:8px;min-width:44px;height:44px;font-size:24px;line-height:1}
.order-summary{display:flex;justify-content:space-between;align-items:center;gap:9px;padding:11px;margin-bottom:13px;font-size:14px}
.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}
.field-grid label,#copy-area label,.login label{display:block;font-size:13px;font-weight:700}
input:not([type=radio]),textarea{display:block;width:100%;border-radius:8px;color:var(--text);padding:9px;margin-top:4px;font-size:16px}
textarea{resize:vertical}
.delivery-options{margin:14px 0}
.delivery-options label{display:flex;align-items:flex-start;gap:8px;padding:8px;border:1px solid var(--line);border-radius:8px;margin-bottom:5px}
.delivery-options input{margin-top:5px;accent-color:#8dbdff}
.delivery-options strong,.delivery-options small{display:block;font-size:13px}
.delivery-options small{color:var(--muted);font-size:11px}
.error,.notice{padding:8px 11px;background:#452538;border:1px solid #875663;border-radius:7px;color:#ffd9db;margin-bottom:10px;font-size:13px}
.notice{color:#ffe4b0;background:#332a2e;border-color:#6b5543}
.receipt{display:grid;gap:8px;margin-bottom:12px}
.receipt div{display:grid;grid-template-columns:120px 1fr;gap:5px;font-size:14px}
.receipt dt,#payment-status,#copy-status{color:var(--muted)}
.receipt dd{font-weight:720;overflow-wrap:anywhere}
#payment-status{margin-bottom:10px;font-size:13px}
#copy{margin-top:8px}
.viewer{inset:0;width:100%;height:100%;max-width:none;max-height:none;margin:0;border:0;padding:12px 16px max(12px,env(safe-area-inset-bottom));background:#09132d}
.viewer[open]{display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:8px}
.viewer-bar{margin:0}
.zoom-stage{position:relative;overflow:hidden;border-radius:10px;background:radial-gradient(ellipse,#415d8c,#152543);touch-action:none;user-select:none}
.zoom-stage img{position:absolute;width:100%;height:100%;object-fit:contain;pointer-events:none;transform-origin:center}
.viewer-tools{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:8px}
.zoom-tools{flex-wrap:nowrap}
.zoom-tools button{min-width:41px}
.admin-main{padding-block:42px;min-height:72vh}
.admin-main h1{font-size:clamp(42px,7vw,74px)}
.login{max-width:410px;padding:17px;margin-top:18px}
.login .primary{margin-top:10px}
.admin-toolbar{display:flex;justify-content:space-between;align-items:center;gap:9px;margin-bottom:14px;flex-wrap:wrap}
.admin-toolbar button,.order-card button,.pager button{border-radius:8px;padding:8px 11px;min-height:42px;font-weight:650}
.order-list{display:grid;gap:10px}
.order-card{padding:16px}
.order-card header,.order-actions,.pager{display:flex;gap:8px;justify-content:space-between;align-items:center;flex-wrap:wrap}
.order-card header code{overflow-wrap:anywhere}
.order-card dl{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:9px;margin:11px 0}
.order-card dt,.sync-label,.admin-toolbar p{font-size:12px;color:var(--muted)}
.order-card dd{font-size:14px;overflow-wrap:anywhere}
.status-tag{color:#a8d4ff;border:1px solid #406395;padding:3px 8px;border-radius:100px;font-size:12px}
.status-tag[data-status=paid]{color:#a7f3c8;border-color:#3a8567}
.status-tag[data-status=expired],.status-tag[data-status=cancelled]{color:#ffe0a8;border-color:#7e6440}
.pager{margin-top:12px}
@media(max-width:900px){.wrap{width:calc(100% - 40px)}.product{gap:24px}.buy{padding:13px}}
@media(max-width:720px){
  .wrap{width:calc(100% - 28px)}
  .header-inner{min-height:61px}
  .brand{gap:8px}
  .brand img{width:36px;height:36px}
  .brand strong{font-size:clamp(17px,4vw,22px)}
  .brand small{font-size:9px;letter-spacing:.025em}
  .storefront .header-inner{gap:10px}
  .storefront nav{flex:none}
  nav a:first-child{display:none}nav a{font-size:11px}
  .product{grid-template-columns:1fr;gap:12px;padding:18px 0 31px}
  .product-copy{display:contents}
  .product-copy>.eyebrow{grid-row:1}
  h1{grid-row:2;margin:-5px 0 0;font-size:clamp(45px,11.7vw,74px)}
  .storefront::before{
    inset-block-end:35%;background-position:40% center;
    mask-image:linear-gradient(#000 30%,#000b 62%,transparent);
  }
  .storefront::after{
    inset-block-start:30%;background-position:72% center;
    mask-image:linear-gradient(transparent,#000b 37%,#000 83%);
  }
  #product-title{margin:0 0 2px;font-size:clamp(42px,13vw,78px);line-height:.94}
  .gallery{grid-row:3;grid-template-columns:minmax(0,1fr);grid-template-areas:"cover" "options";gap:7px}
  .cover{aspect-ratio:1.26;border-radius:13px}
  .cover[data-active=front] img,.cover[data-active=back] img{padding:12px}
  .cover-zoom{right:8px;bottom:10px;font-size:11px}
  .gallery-options{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
  .gallery-options button{display:flex;justify-content:center;align-items:center;gap:4px;min-height:48px}
  .gallery-options img{width:30px;height:34px}
  .shop-footer{padding-bottom:calc(92px + env(safe-area-inset-bottom))}
  .mobile-buy{position:fixed;inset:auto 0 0;z-index:3;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:8px 14px max(8px,env(safe-area-inset-bottom));border-top:1px solid #526581;background:#0b162de8;backdrop-filter:blur(12px);box-shadow:0 -8px 28px #02081545}
  .mobile-buy small,.mobile-buy strong{display:block;line-height:1.3}
  .mobile-buy small{color:var(--muted);font-size:11px}
  .mobile-buy strong{font-size:16px;white-space:nowrap}
  .mobile-buy .primary{width:auto;min-width:min(47vw,190px);text-decoration:none;font-size:14px}
  .product-description{font-size:14px;max-width:none}
  .material{margin:-5px 0 1px}
  .purchase-note{margin:0}
  .section{padding:29px 0}
  .art-grid,.delivery-grid{grid-template-columns:1fr}
  .art-card,.art-card figure{min-height:190px}
  .art-back img{max-height:200px}
  .art-front img{max-height:160px}
  .art-card>div{padding:14px}
  .dialog{padding:15px}
}
@media(max-width:365px){.field-grid{grid-template-columns:1fr}.stepper button{width:33px}.buy-footer{gap:7px}.buy-action .primary{font-size:13px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
