:root{ --cream:#D5D8DC; --ink:#2B2B2B; --accent:#E07A2F; --deep:#2E5A45; --paper:#C4A574; }
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:"Source Serif 4",Georgia,serif;background:var(--cream);color:var(--ink);line-height:1.6}
h1,h2,h3,.spoke-display{font-family:"Chivo",Georgia,serif;line-height:1.15;margin:0 0 .6em}
a{color:inherit}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--accent);outline-offset:2px}
.hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.skip-link{position:absolute;left:-999px;top:0;background:var(--ink);color:var(--cream);padding:.6em 1em;z-index:99}
.skip-link:focus{left:0}
.wrap{max-width:1180px;margin:0 auto;padding:0 1.1rem}
.brand-name{font-size:clamp(1.35rem,3vw,1.85rem);font-weight:700;letter-spacing:.01em}
.btn{display:inline-block;background:var(--ink);color:var(--cream);border:2px solid var(--ink);padding:.7em 1.3em;border-radius:6px;font-weight:700;cursor:pointer;text-decoration:none}
.btn:hover{background:transparent;color:var(--ink)}
.btn-wide{width:100%;text-align:center}
.field{width:100%;padding:.7em .8em;border:2px solid var(--ink);border-radius:6px;background:#fff;color:#111;font-size:1rem}
label{font-weight:600}
.checkbox-line{display:flex;gap:.6em;align-items:flex-start;font-weight:400;font-size:.92rem;margin:.5em 0}
.checkbox-line.full{grid-column:1/-1}
.checkbox-line a{text-decoration:underline}
.filters{display:flex;flex-wrap:wrap;gap:.5em;margin:1em 0}
.filters button{border:2px solid var(--ink);background:transparent;color:var(--ink);padding:.5em .9em;border-radius:99px;cursor:pointer;font-weight:600}
.filters button.is-active,.filters button[aria-pressed="true"]{background:var(--ink);color:var(--cream)}
.product-detail{display:grid;gap:1.4rem;grid-template-columns:1fr}
@media(min-width:860px){.product-detail{grid-template-columns:1fr 1fr}}
.cart-layout,.checkout-layout,.contact-layout{display:grid;gap:1.4rem;grid-template-columns:1fr}
@media(min-width:900px){.cart-layout{grid-template-columns:1.4fr 1fr}.checkout-layout{grid-template-columns:1.4fr 1fr}.contact-layout{grid-template-columns:1.2fr 1fr}}
.ticket-form{display:grid;gap:.8em;background:var(--paper);border:2px solid var(--ink);border-radius:10px;padding:1.1rem}
.pay-option{display:block;border:2px solid var(--ink);border-radius:8px;padding:.8em;margin:.5em 0;background:#fff}
.pay-option input{margin-right:.6em}
.legal-wrap{display:grid;gap:1.2rem;grid-template-columns:1fr}
@media(min-width:900px){.legal-wrap{grid-template-columns:240px 1fr}}
.legal-nav{border:2px solid var(--ink);border-radius:10px;background:var(--paper);padding:1rem;align-self:start;position:sticky;top:1rem}
.legal-nav a{display:block;padding:.4em 0;text-decoration:underline}
.legal-article{background:#fff;border:2px solid var(--ink);border-radius:10px;padding:1.4rem;font-family:"Source Serif 4",Verdana,sans-serif;line-height:1.7}
.legal-page{background:var(--cream)}
.toast{position:fixed;left:50%;bottom:1.2rem;transform:translateX(-50%);background:var(--ink);color:var(--cream);padding:.8em 1.2em;border-radius:8px;z-index:99;max-width:90vw}
.menu-toggle{display:inline-block;border:2px solid currentColor;background:transparent;padding:.5em .9em;border-radius:6px;cursor:pointer;font-weight:700}
.site-nav ul{list-style:none;margin:0;padding:0;display:flex;gap:1em;flex-wrap:wrap}
@media(max-width:760px){.site-nav{display:none}.site-nav.is-open{display:block}.site-nav ul{flex-direction:column}}
footer.site-footer a,footer.spoke-footer a{text-decoration:underline}
.summary-row{display:flex;justify-content:space-between;gap:1em;padding:.3em 0}
.quantity{display:flex;gap:.6em;align-items:center;margin:.5em 0}
.quantity button{width:2em;height:2em;border-radius:6px;border:2px solid var(--ink);background:#fff;cursor:pointer;font-weight:700}
.remove-btn{background:transparent;border:none;text-decoration:underline;cursor:pointer;color:inherit}
.form-feedback{background:var(--deep);color:#fff;padding:.8em;border-radius:8px}
.lead{font-size:1.08rem}
img{max-width:100%;height:auto;display:block}
.spoke-bench{background:#2B2B2B;color:#D5D8DC;padding:.5rem 0}
.spoke-masthead{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;padding:1rem 0;border-bottom:6px solid #C4A574}
.spoke-hero{display:grid;gap:1rem;grid-template-columns:1fr}
@media(min-width:900px){.spoke-hero{grid-template-columns:1fr 1fr}}
.spoke-wheel{position:relative;border:8px solid #2B2B2B;border-radius:50%;aspect-ratio:1;max-width:560px;margin:0 auto;background:radial-gradient(circle,#fff 0 12%,#D5D8DC 13% 100%);padding:8%;display:grid;grid-template-columns:1fr 1fr;gap:.7rem;overflow:hidden}
.spoke-hub{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);background:#2E5A45;color:#fff;border:4px solid #E07A2F;border-radius:50%;width:92px;height:92px;display:flex;align-items:center;justify-content:center;font-weight:700}
.spoke-sector{background:#F7F4EE;border:3px solid #2B2B2B;border-radius:12px;padding:.6rem;text-align:center}
.spoke-sector img{aspect-ratio:1;object-fit:cover;width:100%;border-radius:8px}
.spoke-grid{display:grid;gap:1rem;grid-template-columns:repeat(2,1fr)}
@media(min-width:800px){.spoke-grid{grid-template-columns:repeat(4,1fr)}}
.spoke-card{background:#F7F4EE;border:3px solid #2B2B2B;border-radius:12px;padding:.7rem}
.spoke-card img{aspect-ratio:3/4;object-fit:cover;width:100%;border-radius:8px}
.spoke-band{background:#2E5A45;color:#fff;padding:2rem 0}
.spoke-footer{background:#2B2B2B;color:#D5D8DC;padding:2rem 0 1rem}
.spoke-footer a{color:#fff}

::selection{background:var(--accent);color:#fff}
#conteudo{padding-bottom:2.5rem}
#conteudo>.wrap{padding-top:1rem}
.trust-row{display:flex;flex-wrap:wrap;gap:.5em;margin-top:1rem}
.trust-row span{border:2px solid var(--ink);border-radius:99px;padding:.25em .8em;font-size:.85rem;font-weight:600;background:var(--paper)}
.trust-row a{text-decoration:underline}
.cart-item{display:grid;grid-template-columns:110px 1fr;gap:1rem;background:var(--paper);border:2px solid var(--ink);border-radius:10px;padding:.8rem;margin-bottom:.9rem}
.cart-item img{border-radius:6px;aspect-ratio:3/4;object-fit:cover;width:100%}
.cart-item h2{font-size:1.05rem;margin:0 0 .3em}

body.skin-spoke{background:linear-gradient(180deg,#D5D8DC 0 200px,#cfc09a 200px 203px,#D5D8DC 203px)}
body.skin-spoke .wrap>h1{text-transform:uppercase;letter-spacing:.03em}
body.skin-spoke .wrap>h1{background:linear-gradient(transparent 60%,#E07A2F66 60%)}
.spoke-bench{background:#2B2B2B;color:#D5D8DC;border-bottom:5px solid #E07A2F}
.spoke-bench .wrap{padding:.5rem 1.1rem;font-size:.78rem;letter-spacing:.24em;display:flex;justify-content:space-between}
.spoke-masthead{display:flex;align-items:center;gap:1rem;padding:.9rem 0;flex-wrap:wrap;border-bottom:6px solid #C4A574}
.spoke-hubbrand{display:flex;align-items:center;gap:.7em;text-decoration:none;margin-right:auto}
.spoke-hubmini{width:52px;height:52px;border-radius:50%;background:#2E5A45;border:4px solid #E07A2F;color:#fff;display:flex;align-items:center;justify-content:center;font-size:1.4rem;flex:none}
.spoke-masthead .site-nav ul{gap:.45em}
.spoke-masthead .site-nav a{background:#C4A574;border:3px solid #2B2B2B;border-radius:20px;padding:.3em .9em;text-decoration:none;font-weight:700;color:#2B2B2B}
.spoke-masthead .site-nav a[aria-current="page"]{background:#2B2B2B;color:#ffd75e}
.spoke-masthead .cart-link{background:#E07A2F;color:#111;border:3px solid #2B2B2B;border-radius:20px;padding:.35em .9em;text-decoration:none;font-weight:800}
.skin-spoke .btn{border-radius:20px;border-width:3px;background:#2E5A45;border-color:#2B2B2B;box-shadow:0 4px 0 #2B2B2B;text-transform:uppercase;letter-spacing:.05em;font-size:.88rem}
.spoke-card{transition:transform .15s ease}
.spoke-card:hover{transform:translateY(-4px) rotate(.4deg);box-shadow:5px 6px 0 #2B2B2B}
.spoke-band{background:#2E5A45;color:#fff;padding:2.4rem 0;border-top:6px solid #E07A2F;border-bottom:6px solid #2B2B2B}
.spoke-footstrip{height:12px;background:repeating-linear-gradient(90deg,#2B2B2B 0 34px,#E07A2F 34px 40px)}
.spoke-footer{background:#2B2B2B;color:#D5D8DC;padding:0 0 1rem}
.spoke-footer .wrap{padding-top:1.4rem}
.spoke-cols{display:grid;gap:1rem;margin:1.2rem 0}
@media(min-width:800px){.spoke-cols{grid-template-columns:1.4fr 1fr 1fr}}
.spoke-steps{display:grid;gap:.7rem;margin:1.8rem 0}
@media(min-width:800px){.spoke-steps{grid-template-columns:repeat(3,1fr)}}
.spoke-steps>div{background:#F7F4EE;border:3px solid #2B2B2B;border-radius:14px;padding:.9rem;display:flex;gap:.7em;align-items:center}
.spoke-steps strong{width:2.2em;height:2.2em;flex:none;border-radius:50%;background:#E07A2F;border:3px solid #2B2B2B;display:flex;align-items:center;justify-content:center}
.product-detail>div:first-child{border:8px solid #2B2B2B;border-radius:50%;overflow:hidden;aspect-ratio:1}
.product-detail>div:first-child img{width:100%;height:100%;object-fit:cover}

.cart-link{display:inline-flex;align-items:center;gap:.45em;text-decoration:none;font-weight:600}
.cart-link strong{display:inline-flex;align-items:center;justify-content:center;min-width:1.7em;height:1.7em;border:2px solid currentColor;border-radius:99px;font-size:.9em;padding:0 .3em}
/* 129 dial: never overflow the viewport */
body.skin-dial{overflow-x:clip}
.dial-hero>*{min-width:0}
.dial-panel-big{grid-template-columns:repeat(3,minmax(0,1fr));max-width:100%}
.dial-gauge-big{min-width:0;width:100%;max-width:220px;justify-self:center;padding:.6rem;font-size:.9rem}
.dial-gauge-big img{max-width:120px}
/* 134 rail: hanging tickets clear the brand ticket */
.rail-masthead{gap:.9rem}
.rail-masthead .site-nav{margin-top:1.1rem}
.rail-masthead .site-nav a{padding-top:.9em}
.rail-masthead .site-nav a::before{width:8px;height:8px;margin:-13px auto 5px}
.rail-ticketbrand::before{margin:-14px auto 4px}
/* 135 spoke: catalog ring of 8 sectors around the hub */
.spoke-wheelcat{position:relative;display:grid;gap:.9rem;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-areas:"s1 s2 s3" "s8 hub s4" "s7 s6 s5";max-width:980px;margin:0 auto;padding:3rem;border:10px solid #2B2B2B;border-radius:50%;background-color:#D5D8DC;background-image:repeating-conic-gradient(from 0deg at 50% 50%,rgba(43,43,43,.35) 0 1.2deg,transparent 1.2deg 45deg),radial-gradient(circle,#fff 0 9%,transparent 9.5%)}
.spoke-wheelcat::before{content:"";position:absolute;inset:1.6rem;border:3px dashed rgba(43,43,43,.45);border-radius:50%;pointer-events:none}
.spoke-wheelcat::after{content:"CUBO";grid-area:hub;align-self:center;justify-self:center;width:92px;height:92px;border-radius:50%;background:#2E5A45;color:#fff;border:4px solid #E07A2F;display:flex;align-items:center;justify-content:center;font-weight:800;z-index:2;pointer-events:none}
.spoke-wheelcat>.spoke-card:nth-child(1){grid-area:s1}.spoke-wheelcat>.spoke-card:nth-child(2){grid-area:s2}.spoke-wheelcat>.spoke-card:nth-child(3){grid-area:s3}.spoke-wheelcat>.spoke-card:nth-child(4){grid-area:s4}.spoke-wheelcat>.spoke-card:nth-child(5){grid-area:s5}.spoke-wheelcat>.spoke-card:nth-child(6){grid-area:s6}.spoke-wheelcat>.spoke-card:nth-child(7){grid-area:s7}.spoke-wheelcat>.spoke-card:nth-child(8){grid-area:s8}
.spoke-wheelcat>.spoke-card{font-size:.92rem;padding:.55rem}
.spoke-wheelcat>.spoke-card h3{font-size:.95rem}
@media(max-width:760px){.spoke-wheelcat{grid-template-columns:1fr 1fr;grid-template-areas:none;border-radius:24px;padding:1rem}.spoke-wheelcat>.spoke-card:nth-child(n){grid-area:auto}.spoke-wheelcat::after,.spoke-wheelcat::before{content:none}}
/* 128 hive: unmistakable honeycomb */
.hive-cell{padding:1.1rem .7rem;position:relative}
.hive-cell img{clip-path:polygon(25% 0,75% 0,100% 50%,75% 100%,25% 100%,0 50%);max-width:230px;border:4px solid #6B3E26}
.hive-num{position:absolute;top:.5rem;left:50%;transform:translateX(-50%);background:#2A2118;color:#E6B325;font-weight:800;border-radius:99px;padding:.05em .7em;font-size:.8rem;z-index:2}
.hive-cell p:first-of-type{margin-top:1.2em}
@media(min-width:800px){.hive-frame{max-width:620px}.hive-cell:nth-child(even){transform:translateX(56px)}.hive-cell:nth-child(even):hover{transform:translateX(56px) scale(1.02)}}

