/* Red Classics: a quiet editorial identity, built around the original signature. */
:root { --rc-wine:#783e46; --rc-brass:#ae9270; --rc-paper:#faf7f2; --rc-line:#e5dbd0; }
body { background:#fffdfa; }
.site-header { border-bottom:1px solid #e8e1d780; }
.site-header .site-nav .site-nav__link { font:500 12px/1.6 system-ui,sans-serif; letter-spacing:.06em; }
.replica-locale { z-index:10020; color:#40342f; }
.replica-locale>button { min-height:36px; border:1px solid var(--rc-line); border-radius:22px; background:#fffdf9; gap:6px; padding:6px 12px; font:11px/1.4 system-ui,sans-serif; letter-spacing:.035em; }
.replica-locale>button[aria-expanded=true] { border-color:var(--rc-brass); background:var(--rc-paper); }
.rc-globe { flex-shrink:0; color:var(--rc-wine); }
.rc-market-divider { color:#b5a28d; margin:0 1px; }
.locale-arrow { margin-left:1px; }
#replica-locale-panel { top:calc(100% + 12px); width:328px; max-height:calc(100dvh - 80px); overflow:auto; padding:26px; border:1px solid var(--rc-line); border-radius:16px; background:#fffdfa; box-shadow:0 18px 55px #3f2a201c; font-family:system-ui,sans-serif; }
.rc-market-heading { font-family:Arvo,Georgia,serif; font-size:18px; font-weight:400; margin:0 0 22px; line-height:1.4; }
#replica-locale-panel label { margin:0; font-size:11px; letter-spacing:.06em; color:#75665d; }
#replica-locale-panel select { min-height:46px; margin:7px 0 17px; border:1px solid var(--rc-line); border-radius:6px; padding-left:12px; font:14px system-ui,sans-serif; background-color:#fff; color:#342b25; }
.rc-market-note { font:12px/1.7 system-ui,sans-serif; color:#786b62; margin:0 0 18px; }
.replica-locale .replica-locale-apply { min-height:45px; background:var(--rc-wine); color:#fff; border-color:var(--rc-wine); border-radius:6px; font:12px/1.5 system-ui,sans-serif; text-transform:none; letter-spacing:.03em; }
.rc-rate-details { margin-top:16px; font:11px/1.8 system-ui,sans-serif; color:#827266; }
.rc-rate-details summary { cursor:pointer; padding:4px 0; }
.rc-rate-details p { margin:8px 0 0; }
.rc-rate-details a { text-decoration:underline; text-underline-offset:3px; }
.rc-signature-band { display:flex; align-items:center; justify-content:center; gap:32px; padding:27px 24px; color:var(--rc-wine); background:var(--rc-paper); border-bottom:1px solid var(--rc-line); }
.rc-signature-band::before,.rc-signature-band::after { content:''; height:1px; width:clamp(30px,10vw,150px); background:linear-gradient(90deg,transparent,#b69b7a); }
.rc-signature-band::after { transform:rotate(180deg); }
.rc-signature-band p { margin:0; font:14px/1.6 Arvo,Georgia,serif; letter-spacing:.025em; text-align:center; }
.rc-signature-band span { display:block; margin-top:5px; font:9px/1.6 system-ui,sans-serif; text-transform:uppercase; letter-spacing:.18em; color:#85725f; }
.section-header__title { color:#3c2c29; font-weight:400; letter-spacing:-.015em; text-transform:none; text-wrap:balance; }
.template-index .section-header__title { font-size:clamp(25px,2.4vw,36px); }
.section-header__description { max-width:640px; margin:16px auto 0; color:#74675d; line-height:1.8; }
.grid-product__content { padding-bottom:12px; }
.grid-product__meta { padding:18px 5px 6px; }
.grid-product__title { font-size:14px; line-height:1.6; letter-spacing:.025em; }
.grid-product__breed { font:11px/1.6 system-ui,sans-serif; color:#89766a; letter-spacing:.03em; }
.grid-product__price { color:var(--rc-wine); margin-top:8px; font:500 15px/1.5 system-ui,sans-serif; font-variant-numeric:tabular-nums; letter-spacing:.02em; }
.grid-product__image-mask { border-radius:8px 8px 2px 2px; background:#f4efe8; }
.grid-product__tag { font:10px/1.4 system-ui,sans-serif; letter-spacing:.045em; border-radius:3px; }
.rc-price-context { margin:15px auto 0; color:#8b7667; text-align:center; font:11px/1.6 system-ui,sans-serif; letter-spacing:.025em; }
.rc-price-context b { font-weight:500; color:var(--rc-wine); }
.brand-values__grid { counter-reset:rc-principles; gap:20px; }
.brand-values__grid > * { position:relative; padding:28px 24px; border:1px solid var(--rc-line); border-radius:6px; background:linear-gradient(135deg,#fffefa,#faf5ed); }
.brand-values__grid > * + * { border-left:1px solid var(--rc-line); }
.brand-values__grid > *::before { counter-increment:rc-principles; content:'0' counter(rc-principles); display:block; font:12px/1.5 system-ui,sans-serif; letter-spacing:.14em; color:#ac8d6a; margin-bottom:18px; }
.brand-values__grid h3 { font-size:18px; }
.brand-contact { background:var(--rc-paper); border-top:1px solid var(--rc-line); border-bottom:1px solid var(--rc-line); }
.product__price { color:var(--rc-wine); font-variant-numeric:tabular-nums; }
.collection-hero { height:330px; background:linear-gradient(90deg,#faf7f2 4%,#faf7f2e8 35%,#faf7f200 72%),url('/assets/red-classics-hero-poodle.png') 80% 55% / cover; }
.collection-hero .collection-hero__image { display:none; }
.collection-hero__content { background:none; }
.collection-hero .hero__text-shadow { text-shadow:none; }
.collection-hero .hero__text-shadow::before { display:none; }
.collection-hero .section-header { max-width:500px; text-align:left; margin:0; }
.collection-hero .section-header__title { color:var(--rc-wine); font-size:34px; line-height:1.3; text-transform:none; }
.collection-hero .rc-price-context { text-align:left; }
html:lang(ru) .site-nav__link { font-family:Georgia,serif; letter-spacing:0; font-size:13px; }
html:lang(zh-CN) .section-header__title { letter-spacing:.06em; }
html:lang(ru) .brand-hero__copy h1 { font-family:Georgia,serif; }
@media(hover:hover) { .grid-product__content:hover .grid-product__title { color:var(--rc-wine); } }
@media(max-width:1100px) and (min-width:769px) { .site-nav__link { font-size:11px; padding-left:9px; padding-right:9px; } }
@media(max-width:768px) {
  .replica-locale { top:4px; right:9px; }
  .replica-locale>button { min-height:28px; font-size:9px; padding:3px 8px; gap:4px; }
  .rc-globe { width:13px; height:13px; }
  #replica-locale-panel { top:calc(100% + 7px); width:300px; padding:23px; max-height:calc(100dvh - 53px); }
  .rc-signature-band { gap:14px; padding:23px 16px; }
  .rc-signature-band p { font-size:12px; }
  .rc-signature-band span { font-size:8px; letter-spacing:.12em; }
  .grid-product__title { font-size:12px; }
  .grid-product__price { font-size:14px; }
  .grid-product__meta { padding-top:13px; }
  .brand-values__grid { gap:14px; }
  .brand-values__grid > * { padding:25px 20px; }
  .brand-values__grid > * + * { border:1px solid var(--rc-line); }
  .collection-hero { height:280px; background-position:72% center; }
  .collection-hero .section-header { max-width:220px; }
  .collection-hero .section-header__title { font-size:27px; }
}

@media(max-width:768px){html:lang(ru) .brand-hero__copy h1{font-size:31px;line-height:1.2;max-width:100%}.replica-locale>button{font-size:10px;min-height:30px}}

.grid-product__content:has(.grid-product__tag--sold-out) .grid-product__price { display:none; }

.collection-hero__content > .page-width { width:100%; max-width:1200px; }

/* A stationery-inspired market card, using the Red Classics paper and ink palette. */
.rc-market-card { display:flex; gap:3px; top:8px; right:16px; }
@media(min-width:769px) { .site-header .header-item--icons .site-nav__icons { padding-right:64px; } }
.rc-market-card > .rc-market-trigger { display:flex; flex-direction:column; justify-content:center; gap:5px; min-width:48px; min-height:54px; padding:5px; border:0; border-radius:3px; background:transparent; color:#634b3f; font:600 10px/1.2 system-ui,sans-serif; letter-spacing:.07em; }
.rc-market-card > .rc-market-trigger + .rc-market-trigger::before { content:''; position:absolute; left:50%; top:12px; height:29px; border-left:1px solid #bba18b52; }
.rc-market-card > .rc-market-trigger[aria-expanded=true] { background:#f3ece3; color:#783e46; }
.rc-market-emblem { display:grid; place-items:center; width:28px; height:24px; flex:none; }
.rc-flag-art { display:block; width:26px; height:18px; border-radius:1px; background-position:center; background-size:100% 100%; box-shadow:0 0 0 1px #74574724; }
.rc-flag-art[data-flag=us]{background-image:url('/assets/market-flag-us.svg')}
.rc-flag-art[data-flag=cn]{background-image:url('/assets/market-flag-cn.svg')}
.rc-flag-art[data-flag=fr]{background-image:url('/assets/market-flag-fr.svg')}
.rc-flag-art[data-flag=it]{background-image:url('/assets/market-flag-it.svg')}
.rc-flag-art[data-flag=es]{background-image:url('/assets/market-flag-es.svg')}
.rc-flag-art[data-flag=ru]{background-image:url('/assets/market-flag-ru.svg')}
.rc-flag-art[data-flag=nl]{background-image:url('/assets/market-flag-nl.svg')}
.rc-coin-orb { color:#783e46; font:400 24px/1 Georgia,serif; }
.rc-market-card #replica-locale-panel { width:354px; padding:22px; border:1px solid #d8c8b8; border-radius:5px; color:#514239; background:#fffdf8; box-shadow:0 14px 35px #583e2421; max-height:calc(100dvh - 90px); }
.rc-market-card #replica-locale-panel::before { content:'RED CLASSICS'; display:block; margin-bottom:12px; color:#9b7560; font:10px/1.4 Georgia,serif; letter-spacing:.22em; }
.rc-market-panel-head { display:flex; align-items:center; justify-content:space-between; gap:8px; margin-bottom:20px; padding-bottom:15px; border-bottom:1px solid #d8c8b8; }
.rc-market-panel-head .rc-market-heading { margin:0; font:400 20px/1.35 Georgia,serif; color:#783e46; }
.rc-market-close { width:32px; height:32px; flex:none; border:0; border-radius:3px; color:#795e51; background:transparent; font:22px/1 system-ui,sans-serif; }
.rc-market-fieldset { min-width:0; margin:0 0 20px; padding:0; border:0; }
.rc-market-fieldset legend { float:none; width:auto; margin:0 0 10px; padding:0; color:#776153; font:500 12px/1.5 system-ui,sans-serif; letter-spacing:.05em; }
.rc-language-options { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
.rc-currency-options { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:6px; }
.rc-market-option { position:relative; cursor:pointer; min-width:0; }
.rc-market-option input { position:absolute; width:1px; height:1px; opacity:0; margin:0; }
.rc-market-option .rc-choice-face { position:relative; display:flex; align-items:center; justify-content:flex-start; gap:9px; min-height:46px; padding:9px; border:1px dashed #d7c9b9; border-radius:2px; color:#57463c; font:12px/1.3 system-ui,sans-serif; text-align:left; letter-spacing:0; }
.rc-currency-options .rc-choice-face { flex-direction:column; justify-content:center; gap:7px; min-height:70px; padding:8px 2px; font-size:11px; }
.rc-market-option input:checked + .rc-choice-face { border:1px solid #783e46; background:#f6eee7; color:#783e46; }
.rc-market-option input:checked + .rc-choice-face::after { content:''; position:absolute; top:3px; right:3px; width:4px; height:4px; background:#783e46; border-radius:50%; }
.rc-market-option input:focus-visible + .rc-choice-face { outline:2px solid #783e46; outline-offset:2px; }
.rc-market-card .rc-reference-note { color:#766154; font-size:11px; line-height:1.6; margin:12px 0 0; }
.rc-market-card .rc-rate-details { color:#766154; margin-top:10px; }
.rc-market-card .rc-rate-details a { color:#783e46; }
.rc-market-card .rc-market-note { color:#766154; font-size:11px; margin-bottom:14px; }
.rc-market-card .replica-locale-apply { min-height:44px; border:1px solid #783e46; border-radius:3px; background:#783e46; color:#fffdf8; box-shadow:none; font:13px/1.5 system-ui,sans-serif; }
@media(hover:hover){.rc-choice-face:hover { background:#f6efe6; border-color:#a88670; }.rc-market-trigger:hover,.rc-market-close:hover { background:#f3ece3; }.rc-market-card .replica-locale-apply:hover { background:#66343c; }}
@media(max-width:768px) {
  .rc-market-card { top:3px; right:8px; gap:2px; }
  .rc-market-card > .rc-market-trigger { min-width:42px; min-height:48px; font-size:9px; padding:3px; gap:3px; }
  .rc-market-trigger .rc-flag-art { width:23px; height:16px; }
  .rc-market-trigger .rc-coin-orb { font-size:22px; }
  .rc-market-card #replica-locale-panel { top:calc(100% + 6px); width:340px; max-width:calc(100vw - 24px); padding:18px; max-height:calc(100dvh - 68px); }
}
@media(max-width:360px) { .rc-market-card #replica-locale-panel { padding:14px; }.rc-market-option .rc-choice-face { gap:7px; padding:8px 6px; font-size:11px; } }

/* Quiet paw marks echo the supplied logo, beneath all controls and copy. */
.rc-market-card #replica-locale-panel::after { content:''; position:absolute; inset:12px; z-index:0; pointer-events:none; opacity:.065; background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 180' fill='%23783e46'%3E%3Cg transform='translate(55 12) rotate(22)'%3E%3Cellipse cx='0' cy='23' rx='15' ry='12'/%3E%3Cellipse cx='-19' cy='8' rx='6' ry='8'/%3E%3Cellipse cx='-8' cy='-3' rx='6' ry='9'/%3E%3Cellipse cx='7' cy='-3' rx='6' ry='9'/%3E%3Cellipse cx='19' cy='8' rx='6' ry='8'/%3E%3C/g%3E%3Cg transform='translate(30 92) rotate(22)'%3E%3Cellipse cx='0' cy='23' rx='15' ry='12'/%3E%3Cellipse cx='-19' cy='8' rx='6' ry='8'/%3E%3Cellipse cx='-8' cy='-3' rx='6' ry='9'/%3E%3Cellipse cx='7' cy='-3' rx='6' ry='9'/%3E%3Cellipse cx='19' cy='8' rx='6' ry='8'/%3E%3C/g%3E%3C/svg%3E"); background-size:70px 126px; background-position:right 8px top 2px; background-repeat:no-repeat; }
.rc-market-card #replica-locale-panel > * { position:relative; z-index:1; }
.rc-owner-page { max-width:920px; padding-top:64px; padding-bottom:72px; }
.rc-owner-page h1 { max-width:20ch; font-size:clamp(30px,3.6vw,46px); line-height:1.25; text-wrap:balance; color:#783e46; }
.rc-owner-page h2,.rc-product-enquiry h2 { font-size:24px; line-height:1.4; color:#783e46; }
.rc-owner-page p,.rc-product-enquiry p { font-size:16px; line-height:1.85; }
.rc-owner-page p.brand-eyebrow { font-size:11px; line-height:1.6; letter-spacing:.12em; }
.rc-owner-page section { margin-top:36px; }
.rc-owner-actions { display:flex; flex-wrap:wrap; align-items:center; gap:18px 24px; margin-top:30px; }
.rc-owner-actions .btn { background:#783e46; border-radius:3px; font-size:14px; }
.rc-owner-principles { border-top:1px solid #decec0; padding-top:32px; }
.rc-owner-principles > div { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:25px; }
.rc-owner-principle > span { color:#b19478; font:20px Georgia,serif; }
.rc-owner-principle h3 { font-size:18px; margin:12px 0; line-height:1.5; }
.rc-owner-principle p { font-size:14px; line-height:1.85; }
.rc-owner-home { max-width:1000px; margin:auto; padding:58px 28px; text-align:center; }
.rc-owner-home > p { max-width:680px; margin:20px auto; line-height:1.85; }
.rc-owner-home > h2 { color:#783e46; font-size:32px; line-height:1.4; }
.rc-owner-home .rc-owner-actions { justify-content:center; }
.rc-owner-service-grid { display:grid; grid-template-columns:1fr 1fr; gap:32px; margin-top:30px; text-align:left; }
.rc-owner-service-grid section { border-top:1px solid #decec0; padding-top:20px; }
.rc-owner-service-grid h2 { font-size:22px; }
.rc-contact-number { font:24px Georgia,serif; word-break:break-word; color:#783e46; }
.rc-reservation-card { background:#f7f0e8; border:1px solid #dfcdbb; padding:26px; margin:24px 0; }
.rc-reservation-card label { display:block; font-size:14px; margin-bottom:8px; }
.rc-reservation-card select { width:100%; min-height:46px; background-color:#fffdf8; font-size:16px; border:1px solid #bca28c; padding:10px 36px 10px 12px; }
.rc-reservation-card .rc-deposit-amount { color:#783e46; font:28px/1.4 Georgia,serif; margin:22px 0 12px; }
.rc-product-enquiry { padding:42px 28px; border-top:1px solid #decec0; margin-top:24px; }
[data-rc-reference-only] { display:none !important; }
@media(max-width:768px) {
  .rc-owner-page { padding:84px 24px 50px; }
  .rc-owner-page h1 { font-size:30px; max-width:none; }
  .rc-owner-page h2,.rc-product-enquiry h2 { font-size:22px; }
  .rc-owner-principles > div,.rc-owner-service-grid { grid-template-columns:1fr; gap:20px; }
  .rc-owner-home { padding:40px 24px; }
  .rc-owner-home > h2 { font-size:27px; }
  .rc-reservation-card { padding:20px; }
  .rc-reservation-card .rc-deposit-amount { font-size:25px; }
}
