/* CUAN128 | Ruby-gold editorial marketplace theme | responsive, no remote assets */
:root{
 --wine:#320914;--wine2:#661022;--red:#9d1831;--reddeep:#5c0c19;
 --orange:#dd7e1d;--gold:#f5c85a;--pale:#fff6ee;--cream:#fffefa;
 --ink:#321921;--mute:#78575e;--stroke:#edddda;
 --shadow:0 14px 42px rgba(66,13,24,.08);--footer-h:76px
}
body{background:linear-gradient(180deg,#fff2eb 0,#fffcf8 440px,#fffdf9 1200px);color:var(--ink)}
a:hover{color:#b92039}
.notice-top{background:#270711;color:#ffeddc;border-bottom:1px solid #6a2931}
.notice-top a{color:#ffe39d}
.site-header{background:#fffdfa;box-shadow:0 6px 22px #640b1a0e;border-bottom:1px solid #f0dfd8}
.header-primary{min-height:94px}
.brand{width:190px}
.brand img{object-fit:contain;width:185px;max-height:86px}
.site-search{background:#fff7f2;border:1px solid #e8d1c7;border-radius:15px}
.site-search span{color:#9f2935}
.site-search button{background:linear-gradient(120deg,#791325,#ab2940)}
.site-search button:hover{background:#bd3946}
.button-red{background:linear-gradient(120deg,#6b1023,#b22439);color:#fff;box-shadow:0 6px 18px #98182b26}
.button-red:hover{background:linear-gradient(130deg,#8d1628,#c33447);color:#fff}
.button-gold{background:linear-gradient(135deg,#ffeaa9,#f6c455,#e4a335);border-color:#dca044;color:#3f2018}
.button-gold:hover{background:#ffe39b;color:#3f2018}
.button-outline{border-color:#deb7aa;color:#7e2635;background:#fffaf6}
.button-outline:hover{background:#fff0e5;color:#7e2635}
.button-soft{background:#fff2e6;color:#8c2933;border-color:#edc9b6}
.main-nav{border-color:#f0ded9;background:#fffdfa}
.nav-inner a{color:#753c43}
.nav-inner a:hover,.nav-inner a[aria-current=page]{color:#af1c34}
.nav-inner a[aria-current=page]::after{background:#e2ab3a;height:3px}
.ticker{background:linear-gradient(110deg,#400915,#861829,#3a0714);color:#ffefe6;border-top:1px solid #7d1b29}
.ticker strong{color:#ffdb79}
.category-rail{background:linear-gradient(95deg,#270710,#4e111f,#22070f);box-shadow:0 8px 22px #410b1930;overflow:hidden}
.category-rail-inner{display:flex;align-items:center;gap:9px;min-height:55px;overflow-x:auto;scrollbar-width:thin}
.rail-title{letter-spacing:.12em;color:#efbf8e;font-size:.69rem;font-weight:950;margin-right:8px;white-space:nowrap}
.category-rail a{font-size:.82rem;font-weight:800;white-space:nowrap;border:1px solid #ffc97a29;background:#ffffff0a;border-radius:999px;padding:8px 14px;color:#fff1e4;transition:background .2s}
.category-rail a:hover{color:#fff;background:#ffffff23}
.crumb,.crumb a{color:#9b696b}
.eyebrow{color:#ae283b}
.section-head>a{color:#a62639}
.card{border:1px solid #f1dcd0;box-shadow:var(--shadow);border-radius:19px}
.hero-shop{grid-template-columns:minmax(0,.91fr) minmax(0,1.09fr);gap:24px;align-items:stretch}
.hero-shop>.gallery{order:1}
.hero-shop>.shop-details{order:2}
.gallery{background:linear-gradient(155deg,#fffdfa,#ffede6);padding:17px}
.gallery-main{background:radial-gradient(circle at 40% 34%,#fff4e8,#f6d7c4);border:1px solid #efd1c0}
.gallery-main img,.page-visual img,.cover img{object-fit:contain}
.gallery-thumbs{grid-template-columns:repeat(3,1fr);gap:12px}
.thumb{background:#fff;border-color:#e2c5ae;border-radius:12px}
.thumb[aria-pressed=true],.thumb:hover{border-color:#c99228;box-shadow:0 0 0 2px #f2cc68}
.shop-details{background:radial-gradient(ellipse at 100% 0%,#fff8f1,#fffefa 69%);padding:32px;position:relative;overflow:hidden}
.shop-details:before{content:"";position:absolute;right:-70px;top:-90px;width:240px;height:240px;border-radius:50%;background:#ffe4c74d;pointer-events:none}
.shop-details h1{color:#651322;font-size:clamp(1.95rem,2.8vw,2.95rem);position:relative}
.shop-details .lead{color:#684950;position:relative}
.shop-meta{border-color:#f0d9cb}
.shop-meta strong{color:#682839}
.shop-note{background:#fff5ea;color:#825b48;border-color:#e9ccac}
.tag{background:#fff0d1;color:#8e531b;border-color:#f1d29b}
.highlights{margin-top:22px}
.highlight{background:#fffdfb;border:1px solid #f2e0d3}
.hi-icon{background:linear-gradient(135deg,#fff0e6,#ffe1ab)}
.feature-card .cover{background:#fff1e8;border-color:#efdbc9}
.feature-card .inside p,.blog-card p{color:#71575b}
.mini-btn{border-color:#e5c7bb;color:#862637}
.mini-btn:hover{background:#fff0e7}
.mini-btn.fill{background:#8b1b2d;border-color:#8b1b2d;color:#fff}
.mini-btn.fill:hover{background:#ae2d41}
.content-banner,.hero-page .page-visual{background:#fff2e6;border-color:#efd1b9}
.hero-page{background:linear-gradient(110deg,#fffcf9 43%,#fff0e4);border-left:5px solid #dca23c}
.hero-page h1{color:#681b2a}
.hero-page p,.article-main p{color:#655058}
.article-main h2{border-color:#f0e1d8;color:#6a1c2b}
.article-main ul{color:#68525c}
.side-panel a{color:#913245}
.callout,.empty{background:#fff5e8;border-color:#e1b56f;color:#805c44}
.section-band{background:radial-gradient(ellipse at right,#9d2334,#3c0714 80%);border:1px solid #ae514f;box-shadow:0 20px 36px #5c091a24}
.section-band h2{color:#fff}
.section-band p{color:#ffdfd5}
.section-band .button-outline{border-color:#f7cda7;color:#fff;background:#ffffff0b}
.section-band .button-outline:hover{background:#ffffff27}
.site-footer{background:#290711;color:#fff1e7;border-top:4px solid #e3ab4d}
.footer-grid p{color:#dfb8b5}
.footer-links a{color:#f2d7cb}
.footer-links a:hover{color:#ffd26c}
.bottom-dock{background:linear-gradient(110deg,#320813,#771328,#330915);border-top:2px solid #f1ba59;box-shadow:0 -8px 26px #3d0d1c55}
.dock-inner{grid-template-columns:repeat(3,minmax(0,1fr));max-width:690px;gap:8px}
.dock-link{color:#fff1e1;font-size:.87rem}
.dock-link:hover{color:#ffe4a8;background:#ffffff15}
.dock-link.cta{color:#4a1b13;background:linear-gradient(140deg,#ffe6a2,#eead45)}
.dock-link.cta:hover{color:#4a1b13;background:#ffe6b1}
.compare-tray{border-color:#f0cfac;box-shadow:0 10px 36px #59112348}
.compare-list .item{border-color:#ecd2c4}
.compare-list .item strong{color:#873443}
.list-toolbar input{border-color:#e3c7bc}
.list-toolbar input:focus{border-color:#ab3346}
.status{color:#95645b}
/* Distinct editorial arrangements per subset of pages. */
.hero-page.variant-a{background:linear-gradient(145deg,#fff9f5,#ffe3d5);border-left-color:#b22b43}
.hero-page.variant-b{background:linear-gradient(25deg,#fffefa,#ffefdc);border-left-color:#edbd65}
.hero-page.variant-c{background:linear-gradient(115deg,#fff9f9,#ffeff0);border-left-color:#a93443}
.hero-page.variant-a .page-visual{border-radius:50px 15px 50px 15px}
.hero-page.variant-b .page-visual{border-radius:16px 52px 16px 52px}
.hero-page.variant-c .page-visual{border-radius:18px}
.hero-page.variant-b .eyebrow{color:#ad6021}
@media(min-width:1100px){
 .hero-shop{grid-template-columns:minmax(0,.91fr) minmax(0,1.09fr)}
 .gallery-main{aspect-ratio:1/1}
 .shop-details{display:flex;flex-direction:column;justify-content:center}
 .shop-details .shop-actions{grid-template-columns:1fr 1fr}
 .category-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
 .feature-card:nth-child(4n + 2) .cover{background:#fff5d9}
 .feature-card:nth-child(5n) .cover{background:#ffe4e1}
}
@media(max-width:1030px){.hero-shop{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.shop-details{padding:21px}.brand{width:150px}.brand img{width:145px}}
@media(max-width:760px){
 :root{--footer-h:70px}
 .hero-shop{grid-template-columns:1fr}
 .hero-shop>.gallery{order:1}
 .hero-shop>.shop-details{order:2}
 .category-rail-inner{min-height:50px}
 .category-rail a{font-size:.76rem;padding:7px 10px}
 .rail-title{font-size:.65rem}
 .hero-shop .shop-details{padding:23px}
 .dock-inner{padding:4px 8px;gap:4px}
 .dock-link{font-size:.75rem;gap:2px;border-radius:8px}
 .dock-link .dock-icon{font-size:1.2rem}
 .article-main{padding:22px}
 .brand{width:110px}.brand img{width:110px}
}
@media(max-width:390px){
 .dock-link{font-size:.7rem;letter-spacing:.02em}
 .dock-link .dock-icon{font-size:1.12rem}
 .header-actions .button{font-size:.75rem;padding:9px 5px}
 .site-search span{display:none}.site-search button{padding:0 9px}
 .main{padding-top:15px}
 .shell{padding-left:12px;padding-right:12px}
 .shop-details h1{font-size:1.75rem}
}
.content-split > *{min-width:0}
.article-main{min-width:0;overflow-wrap:anywhere}
@media(max-width:760px){
 .content-split{grid-template-columns:minmax(0,1fr)}
 .content-split > *{min-width:0;max-width:100%}
 .article-main .ticker{width:100%;max-width:100%}
}
