/* Supplied Rada Artes palette. Darkened action variants preserve AA contrast. */
:root {
	--ra-blue: #1698d6;
	--ra-yellow: #f4d21a;
	--ra-pink: #ec0aa8;
	--ra-green: #1c9a00;
	--ra-pink-action: #bd087f;
	--ra-whatsapp: #007c2b;
	--ra-ink: #171717;
	--ra-secondary: #494949;
	--ra-muted: #626262;
	--ra-line: #d9d9d9;
	--ra-surface: #fff;
	--ra-background: #fbfbfb;
	--ra-alt: #f5f5f5;
	--ra-pink-tint: #fce6f2;
	--ra-blue-tint: #e4f5fc;
	--ra-yellow-tint: #fff6db;
	--ra-green-tint: #e4f7e6;
	--ra-radius: 1.125rem;
	--ra-control-radius: 1rem;
	--ra-display: 'DM Serif Display', Georgia, serif;
	--ra-body: Poppins, 'Trebuchet MS', sans-serif;
}
* { box-sizing: border-box; }
html { scroll-padding-top: 1.5rem; }
body.ra-site { margin: 0; background: var(--ra-background); color: var(--ra-ink); font: 1rem/1.6 var(--ra-body); overflow-wrap: anywhere; }
.ra-site a { color: inherit; text-underline-offset: .22em; }
.ra-site a:hover { text-decoration-thickness: 2px; }
.ra-site :focus-visible { outline: 3px solid var(--ra-ink); outline-offset: 4px; }
.ra-site img { display: block; max-width: 100%; height: auto; }
.ra-site svg { width: 1.5rem; height: 1.5rem; flex-shrink: 0; }
.ra-site h1, .ra-site h2, .ra-site h3 { margin: 0 0 1rem; line-height: 1.15; text-wrap: balance; }
.ra-site h1, .ra-site h2 { font-family: var(--ra-display); font-weight: 400; letter-spacing: -.025em; }
.ra-site h1 { font-size: clamp(2.25rem, 1.75rem + 2vw, 3.75rem); }
.ra-site h2 { font-size: clamp(1.75rem, 1.4rem + 1.3vw, 2.75rem); }
.ra-site p { margin: 0 0 1rem; }
.ra-container { width: min(100% - 2rem, 75rem); margin-inline: auto; }
.ra-section { margin-block: 2.5rem; }
.ra-skip-link { position: fixed; inset: .75rem auto auto .75rem; padding: .75rem 1rem; background: var(--ra-surface); z-index: 30; transform: translateY(-200%); }
.ra-skip-link:focus { transform: translateY(0); }
.ra-header { background: var(--ra-surface); border-bottom: 1px solid var(--ra-line); }
.ra-header-inner { min-height: 5.5rem; display: flex; align-items: center; justify-content: space-between; gap: 1.5rem; padding-block: .75rem; position: relative; }
.ra-brand { min-width: 0; max-width: 70%; }
.ra-wordmark { display: block; font: 700 clamp(1.25rem, 3vw, 1.75rem)/1.2 var(--ra-body); text-decoration: none; padding-block: .5rem; }
.ra-brand .custom-logo { width: auto; max-height: 4rem; max-width: 11rem; object-fit: contain; }
.ra-desktop-nav { display: none; }
.ra-nav-links { list-style: none; padding: 0; margin: 0; display: flex; gap: 1rem; }
.ra-nav-links a { display: flex; align-items: center; min-height: 44px; padding: .4rem .5rem; text-decoration: none; }
.ra-nav-links [aria-current="page"] { font-weight: 700; text-decoration: underline; }
.ra-mobile-menu { margin-left: auto; }
.ra-mobile-menu summary { min-height: 44px; min-width: 44px; cursor: pointer; padding: .5rem; font-weight: 600; }
.ra-mobile-menu nav { position: absolute; inset: 100% 0 auto; padding: .5rem 1rem; background: var(--ra-surface); border: 1px solid var(--ra-line); border-radius: 0 0 var(--ra-radius) var(--ra-radius); z-index: 20; box-shadow: 0 6px 20px rgb(0 0 0 / 6%); }
.ra-mobile-menu .ra-nav-links { display: block; }
.ra-hero { position: relative; padding-block: 2rem; background: var(--ra-yellow-tint); isolation: isolate; overflow: hidden; }
.ra-hero::before, .ra-hero::after { content: ''; position: absolute; z-index: -1; pointer-events: none; }
.ra-hero::before { width: 13rem; height: 13rem; right: -6rem; top: -.5rem; border-radius: 40% 60% 60% 40%; background: var(--ra-pink-tint); transform: rotate(-18deg); }
.ra-hero::after { width: 5rem; height: 1.5rem; right: 1rem; bottom: .75rem; background: var(--ra-yellow); border-radius: 100%; transform: rotate(-30deg); }
.ra-hero-inner { display: grid; gap: 2rem; align-items: center; }
.ra-hero-copy { position: relative; z-index: 1; }
.ra-hero h1 { max-width: 14ch; }
.ra-hero h1 span { color: var(--ra-pink-action); font-style: italic; }
.ra-intro { max-width: 45ch; color: var(--ra-secondary); white-space: pre-line; }
.ra-actions { display: flex; flex-wrap: wrap; gap: .75rem; margin-top: 1.5rem; }
.ra-button { display: inline-flex; justify-content: center; align-items: center; gap: .75rem; min-height: 48px; padding: .875rem 1.25rem; border-radius: var(--ra-control-radius); text-decoration: none; font-weight: 700; line-height: 1.4; text-align: center; transition: transform 180ms ease-out, box-shadow 180ms ease-out; }
.ra-site .ra-button { color: var(--ra-surface); }
.ra-button--pink { background: var(--ra-pink-action); }
.ra-button--whatsapp { background: var(--ra-whatsapp); }
.ra-button--dark { background: var(--ra-ink); }
.ra-button:hover { transform: translateY(-2px); box-shadow: 0 4px 12px rgb(0 0 0 / 12%); }
.ra-button:focus-visible { outline-offset: 5px; }
.ra-hero-media { aspect-ratio: 4 / 3; overflow: hidden; border-radius: 2.5rem .75rem 2.5rem .75rem; background: var(--ra-surface); box-shadow: 0 6px 20px rgb(0 0 0 / 6%); }
.ra-hero-media > img, .ra-card-image > img, .ra-detail-photo > img { width: 100%; height: 100%; object-fit: cover; }
.ra-image-fallback { display: flex; width: 100%; height: 100%; min-height: 12rem; flex-direction: column; align-items: center; justify-content: center; gap: 1rem; color: var(--ra-secondary); background: var(--ra-alt); text-align: center; padding: 1rem; font-size: .875rem; }
.ra-image-fallback svg { width: 3rem; height: 3rem; }
.ra-section-heading { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: baseline; gap: .5rem 1rem; margin-bottom: 1.25rem; }
.ra-section-heading h2 { margin: 0; }
.ra-section-heading > a { min-height: 44px; padding-block: .5rem; font-size: .875rem; font-weight: 600; }
.ra-category-list { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1rem .5rem; list-style: none; margin: 0; padding: 0; }
.ra-category-list a { display: flex; align-items: center; flex-direction: column; gap: .5rem; text-align: center; text-decoration: none; font-size: .8rem; line-height: 1.35; min-height: 44px; }
.ra-category-list a:hover span:last-child { text-decoration: underline; }
.ra-category-symbol { display: grid; place-items: center; width: clamp(3.25rem, 14vw, 5rem); aspect-ratio: 1; border-radius: 50%; background: var(--ra-blue-tint); }
.ra-category-symbol svg { width: 1.75rem; height: 1.75rem; }
.ra-category-list li:nth-child(4n+2) .ra-category-symbol { background: var(--ra-pink-tint); }
.ra-category-list li:nth-child(4n+3) .ra-category-symbol { background: var(--ra-yellow-tint); }
.ra-category-list li:nth-child(4n+4) .ra-category-symbol { background: var(--ra-green-tint); }
.ra-product-strip { display: grid; grid-auto-flow: column; grid-auto-columns: 72%; gap: 1rem; overflow-x: auto; scroll-snap-type: x proximity; list-style: none; margin: 0; padding: .375rem .375rem 1.25rem; scroll-padding-inline: .375rem; }
.ra-product-strip > li { min-width: 0; scroll-snap-align: start; }
.ra-product-card { border: 1px solid var(--ra-line); border-radius: var(--ra-radius); background: var(--ra-surface); height: 100%; }
.ra-card-link { display: flex; flex-direction: column; height: 100%; border-radius: var(--ra-radius); text-decoration: none; }
.ra-card-image { aspect-ratio: 1; overflow: hidden; border-radius: var(--ra-radius) var(--ra-radius) 0 0; }
.ra-card-copy { padding: .875rem; display: flex; flex-direction: column; flex: 1; }
.ra-card-copy h2, .ra-card-copy h3 { font: 600 1rem/1.4 var(--ra-body); margin-bottom: .5rem; letter-spacing: normal; }
.ra-card-category { color: var(--ra-muted); font-size: .875rem; }
.ra-card-copy .ra-price { font-size: .875rem; font-weight: 600; margin-top: auto; }
.ra-card-action { display: flex; align-items: center; justify-content: space-between; min-height: 44px; font-size: .875rem; text-decoration: underline; }
.ra-empty { border: 1px solid var(--ra-line); border-radius: var(--ra-radius); padding: 1.5rem; background: var(--ra-surface); color: var(--ra-secondary); }
.ra-about { display: grid; gap: 1rem; }
.ra-contact-panel { background: var(--ra-green-tint); border-radius: var(--ra-radius); padding: 1.5rem; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 1.5rem; }
.ra-contact-panel h2 { margin-bottom: .5rem; }
.ra-contact-panel p { margin: 0; max-width: 45ch; }
.ra-footer { background: var(--ra-alt); border-top: 1px solid var(--ra-line); padding-block: 2rem; }
.ra-footer-inner { display: grid; gap: 1.5rem; font-size: .875rem; }
.ra-footer-brand { font-size: 1.25rem; font-weight: 700; }
.ra-site .ra-footer-heading { font: 700 1rem var(--ra-body); margin-bottom: .5rem; }
.ra-footer a { display: flex; align-items: center; min-height: 44px; width: fit-content; }
.ra-back-link { display: inline-flex; align-items: center; gap: .5rem; min-height: 44px; margin-bottom: 1.5rem; }
.ra-product-detail { display: grid; gap: 1.5rem; }
.ra-detail-photo { aspect-ratio: 1; border-radius: var(--ra-radius); overflow: hidden; background: var(--ra-alt); }
.ra-detail-photo > img { object-fit: contain; }
.ra-detail-copy { min-width: 0; }
.ra-detail-price { font-size: 1.5rem; font-weight: 700; color: var(--ra-pink-action); }
.ra-tags { list-style: none; display: flex; flex-wrap: wrap; gap: .5rem; padding: 0; margin: 0 0 1.5rem; }
.ra-tags li { border-radius: 999px; background: var(--ra-alt); padding: .375rem .75rem; font-size: .875rem; }
.ra-prose { max-width: 70ch; }
.ra-prose > :first-child { margin-top: 0; }
.ra-prose iframe, .ra-prose video { max-width: 100%; }
.ra-prose pre { overflow: auto; }
.ra-prose table { display: block; max-width: 100%; overflow-x: auto; }
.ra-product-note { background: var(--ra-pink-tint); border-radius: var(--ra-radius); padding: 1rem; margin-block: 1.5rem; font-size: .875rem; }
.ra-detail-copy > .ra-button { width: 100%; }
.ra-external-note { color: var(--ra-muted); font-size: .8rem; margin-top: .75rem !important; }
.ra-reading { max-width: 48rem; min-height: 40vh; }
.ra-fallback { min-height: 40vh; }
.ra-fallback-item { border-bottom: 1px solid var(--ra-line); padding-block: 1.5rem; }
.ra-fallback-item h2 { font-size: 1.5rem; }
.ra-fallback .nav-links { display: flex; flex-wrap: wrap; gap: .75rem; margin-top: 1.5rem; }
.ra-fallback .page-numbers { padding: .75rem 1rem; min-height: 44px; border: 1px solid var(--ra-line); border-radius: .5rem; }
.ra-catalog-heading { margin-bottom: 1.5rem; }
.ra-catalog-heading h1 { margin-bottom: .75rem; }
.ra-catalog-heading p { color: var(--ra-secondary); max-width: 65ch; }
.ra-catalog-form { display: grid; gap: 1rem; align-items: end; }
.ra-catalog-form label { display: block; font-size: .875rem; font-weight: 600; margin-bottom: .5rem; }
.ra-catalog-form input, .ra-catalog-form select { width: 100%; min-width: 0; min-height: 48px; border: 1px solid var(--ra-muted); border-radius: var(--ra-control-radius); background: var(--ra-surface); color: var(--ra-ink); font: inherit; padding: .75rem 1rem; caret-color: var(--ra-pink-action); }
.ra-catalog-form input::placeholder { color: var(--ra-muted); opacity: 1; }
.ra-catalog-form button { font-family: var(--ra-body); font-size: 1rem; cursor: pointer; border: 0; }
.ra-search-field, .ra-category-field, .ra-occasion-field { min-width: 0; }
.ra-occasion-label { font-weight: 600; margin-bottom: .5rem !important; }
.ra-occasion-links li { padding: 0; }
.ra-occasion-links a { display: inline-flex; align-items: center; min-height: 44px; padding: .5rem .75rem; }
.ra-search-control { position: relative; }
.ra-search-control > span { position: absolute; inset: 0 auto 0 .875rem; display: flex; align-items: center; pointer-events: none; }
.ra-catalog-form .ra-search-control input { padding-left: 3rem; }
.ra-filter-help { font-size: .875rem; color: var(--ra-secondary); margin-block: .75rem 1.25rem !important; max-width: 70ch; }
.ra-active-filters { display: flex; flex-wrap: wrap; align-items: center; gap: .5rem .75rem; margin-bottom: 1.5rem; }
.ra-filter-chip { background: var(--ra-pink-tint); border: 1px solid var(--ra-pink-action); border-radius: 999px; padding: .5rem 1rem; min-height: 44px; display: inline-flex; align-items: center; font-size: .875rem; max-width: 100%; font-weight: 600; }
.ra-reset-link { display: inline-flex; align-items: center; min-height: 44px; padding: .5rem; font-size: .875rem; }
.ra-filter-notice { background: var(--ra-yellow-tint); padding: 1rem; border: 1px solid var(--ra-muted); border-radius: var(--ra-control-radius); }
.ra-result-count { font-size: .875rem; font-variant-numeric: tabular-nums; color: var(--ra-secondary); padding-top: .5rem; }
.ra-product-grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: 1rem; list-style: none; padding: 0; margin: 0; }
.ra-product-grid > li { min-width: 0; }
.ra-product-grid .ra-image-fallback { min-height: 0; }
.ra-product-grid .ra-card-image .ra-image-fallback { aspect-ratio: 1; }
.ra-product-grid .ra-card-copy { padding: .75rem; }
.ra-product-grid .ra-card-copy h2, .ra-product-grid .ra-card-copy h3 { font-size: .9375rem; }
.ra-catalog-empty { padding: 2rem 1.25rem; background: var(--ra-alt); border-radius: var(--ra-radius); margin-top: 1.5rem; }
.ra-catalog-empty p { max-width: 65ch; }
.ra-pagination { margin-top: 2rem; }
.ra-pagination ul { display: flex; justify-content: center; flex-wrap: wrap; align-items: center; gap: .5rem; list-style: none; padding: 0; margin: 0; }
.ra-pagination a, .ra-pagination [aria-current] { display: flex; align-items: center; justify-content: center; min-width: 44px; min-height: 44px; padding: .5rem .75rem; border: 1px solid var(--ra-muted); border-radius: .75rem; text-decoration: none; font-variant-numeric: tabular-nums; }
.ra-pagination [aria-current] { background: var(--ra-ink); color: var(--ra-surface); font-weight: 700; border-color: var(--ra-ink); }
.ra-pagination a:hover { background: var(--ra-pink-tint); }
.ra-catalog ::selection { background: var(--ra-pink-tint); color: var(--ra-ink); }
@media (min-width: 22.5rem) {
	.ra-product-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .75rem; }
}
@media (min-width: 600px) {
	.ra-container { width: min(100% - 3rem, 75rem); }
	.ra-category-list { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1.5rem; }
	.ra-category-list a { font-size: .875rem; }
	.ra-product-strip { grid-auto-columns: 44%; }
	.ra-footer-inner { grid-template-columns: 2fr 1fr 1fr; }
	.ra-catalog-form { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.ra-search-field { grid-column: 1 / -1; }
	.ra-catalog-form > button { grid-column: 1 / -1; justify-self: start; }
}
@media (min-width: 768px) {
	.ra-container { width: min(100% - 4rem, 75rem); }
	.ra-section { margin-block: 4rem; }
	.ra-desktop-nav { display: block; }
	.ra-mobile-menu { display: none; }
	.ra-hero { padding-block: 3rem; }
	.ra-hero-inner { grid-template-columns: 1.1fr 1fr; gap: 3rem; }
	.ra-hero-media { aspect-ratio: 1; }
	.ra-product-detail { grid-template-columns: 1fr 1fr; gap: 3rem; }
	.ra-about { grid-template-columns: 1fr 2fr; gap: 3rem; }
	.ra-contact-panel { padding: 2rem; }
	.ra-product-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.5rem; }
}
@media (min-width: 900px) {
	.ra-category-list { grid-template-columns: repeat(8, minmax(0, 1fr)); }
	.ra-product-strip { grid-auto-columns: calc((100% - 3rem) / 3); gap: 1.5rem; }
}
@media (min-width: 1100px) {
	.ra-product-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
	.ra-catalog-form { grid-template-columns: minmax(0, 2fr) minmax(0, 1fr) minmax(0, 1fr) auto; }
	.ra-search-field, .ra-catalog-form > button { grid-column: auto; }
}
@media (prefers-reduced-motion: reduce) {
	.ra-button { transition: none; }
	.ra-button:hover { transform: none; }
	.ra-product-strip { scroll-snap-type: none; }
}

/* UI batch 1: compact brand shell and mobile-first homepage refinement. */
.screen-reader-text { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
.ra-header { position: relative; z-index: 10; box-shadow: 0 1px 0 rgb(23 21 27 / 6%); }
.ra-header-inner { min-height: 4.75rem; gap: .5rem; }
.ra-brand { max-width: min(56vw, 14rem); }
.ra-brand .custom-logo { max-width: 12.5rem; max-height: 3.5rem; }
.ra-header-chat, .ra-mobile-menu summary { display: grid; place-items: center; width: 2.75rem; height: 2.75rem; min-width: 2.75rem; min-height: 2.75rem; padding: 0; border-radius: 50%; }
.ra-header-chat { margin-left: auto; color: var(--ra-surface) !important; background: var(--ra-whatsapp); text-decoration: none; box-shadow: 0 3px 10px rgb(0 124 43 / 22%); }
.ra-header-chat svg, .ra-mobile-menu summary svg { width: 1.35rem; height: 1.35rem; }
.ra-mobile-menu { margin-left: .25rem; }
.ra-mobile-menu summary { list-style: none; color: var(--ra-ink); background: var(--ra-surface); border: 1px solid var(--ra-line); }
.ra-mobile-menu summary::-webkit-details-marker { display: none; }
.ra-mobile-menu[open] summary { color: var(--ra-surface); background: var(--ra-ink); border-color: var(--ra-ink); }
.ra-mobile-menu nav { top: calc(100% + .25rem); right: 0; left: auto; width: min(18rem, calc(100vw - 2rem)); padding: .75rem 1rem; border-radius: var(--ra-radius); }
.ra-mobile-menu .ra-nav-links a { border-bottom: 1px solid var(--ra-line); }
.ra-mobile-menu .ra-nav-links li:last-child a { border-bottom: 0; }
.ra-hero { padding-block: 1.5rem 2.25rem; background: linear-gradient(135deg, #fff8ec 0%, #fff8ec 54%, #fce6f2 54%, #fce6f2 100%); }
.ra-hero::before { width: 12rem; height: 12rem; right: -5.25rem; top: 3.75rem; background: var(--ra-blue-tint); opacity: .9; }
.ra-hero::after { width: 6.25rem; height: 2rem; right: -.75rem; bottom: 1rem; background: var(--ra-yellow); }
.ra-hero-inner { gap: 1.5rem; }
.ra-hero h1 { max-width: 12ch; font-size: clamp(2.35rem, 9vw, 3.25rem); letter-spacing: -.035em; }
.ra-hero h1 span { color: var(--ra-pink-action); }
.ra-intro { max-width: 28ch; font-size: 1rem; line-height: 1.45; }
.ra-actions { display: grid; gap: .75rem; max-width: 21rem; margin-top: 1.25rem; }
.ra-actions .ra-button { width: 100%; }
.ra-button { min-height: 3.25rem; border-radius: .875rem; }
.ra-button--pink { background: #d5076e; box-shadow: 0 7px 16px rgb(213 7 110 / 20%); }
.ra-button--whatsapp { background: #008f32; }
.ra-hero-media { aspect-ratio: 5 / 4; border-radius: 1.75rem .9rem 1.75rem .9rem; box-shadow: 0 14px 32px rgb(23 21 27 / 12%); }
.ra-section { margin-block: 3rem; }
.ra-section-heading { margin-bottom: 1rem; }
.ra-section-heading > a { color: #007cbb; font-weight: 700; text-decoration-thickness: 1px; }
.ra-category-list { gap: 1.125rem .5rem; }
.ra-category-symbol { width: clamp(3.75rem, 18vw, 5rem); box-shadow: inset 0 0 0 1px rgb(23 21 27 / 3%); }
.ra-category-symbol svg { width: 2rem; height: 2rem; }
.ra-category-list a { font-size: .75rem; font-weight: 600; }
.ra-product-strip { grid-auto-columns: 46%; gap: .75rem; padding: .25rem 0 1.25rem; }
.ra-product-card { overflow: hidden; border-color: rgb(23 21 27 / 10%); border-radius: .875rem; box-shadow: 0 4px 16px rgb(23 21 27 / 5%); }
.ra-card-link { border-radius: .875rem; }
.ra-card-image { border-radius: .875rem .875rem 0 0; }
.ra-card-copy { padding: .75rem; }
.ra-card-copy h2, .ra-card-copy h3 { font-size: .875rem; line-height: 1.3; }
.ra-card-category { font-size: .75rem; }
.ra-card-copy .ra-price { font-size: .8rem; }
.ra-contact-panel { color: var(--ra-surface); background: #008f32; border-radius: 1.25rem; box-shadow: 0 10px 24px rgb(0 143 50 / 17%); }
.ra-contact-panel h2 { font-size: clamp(1.5rem, 6vw, 2rem); }
.ra-contact-panel .ra-button--whatsapp { color: var(--ra-ink) !important; background: var(--ra-surface); }
.ra-footer { background: var(--ra-ink); border-top: 0; color: var(--ra-surface); }
.ra-footer a { color: var(--ra-surface); }
@media (min-width: 768px) {
	.ra-header-inner { min-height: 5.25rem; }
	.ra-brand { max-width: 16rem; }
	.ra-header-chat { margin-left: .5rem; }
	.ra-hero { padding-block: 4rem; }
	.ra-hero-inner { grid-template-columns: 1fr minmax(20rem, .9fr); gap: 4rem; }
	.ra-hero-media { aspect-ratio: 4 / 5; }
	.ra-actions { display: flex; max-width: none; }
	.ra-actions .ra-button { width: auto; }
	.ra-product-strip { grid-auto-columns: calc((100% - 2rem) / 3); gap: 1rem; }
}

/* UI batch 2: calm, search-led catalogue and product-first detail pages. */
.ra-catalog { padding-top: 2rem; }
.ra-catalog-heading { max-width: 39rem; margin-bottom: 1.75rem; }
.ra-catalog-heading h1 { margin-bottom: .5rem; }
.ra-catalog-heading p { font-size: 1.02rem; line-height: 1.5; }
.ra-catalog-form { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .75rem; padding: 0; }
.ra-catalog-form label { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
.ra-search-field { grid-column: 1 / -1; }
.ra-catalog-form input, .ra-catalog-form select { min-height: 3.25rem; border-color: rgb(23 21 27 / 18%); border-radius: .875rem; box-shadow: 0 1px 2px rgb(23 21 27 / 3%); }
.ra-catalog-form input:focus, .ra-catalog-form select:focus { border-color: var(--ra-ink); outline: 3px solid var(--ra-yellow-tint); outline-offset: 1px; }
.ra-catalog-form .ra-search-control input { padding-left: 3.25rem; font-size: 1rem; }
.ra-search-control > span { left: 1rem; color: var(--ra-secondary); }
.ra-catalog-form > button { grid-column: 1 / -1; width: 100%; }
.ra-filter-help { margin-block: .875rem 1rem !important; font-size: .8rem; }
.ra-active-filters { padding-top: .5rem; margin-bottom: 1rem; }
.ra-filter-chip { color: var(--ra-ink); background: var(--ra-pink-tint); border: 1px solid #d5076e; border-radius: 999px; font-size: .8rem; }
.ra-reset-link { color: #007cbb; font-weight: 700; }
.ra-result-count { padding-block: .75rem; margin: 0; color: var(--ra-secondary); font-weight: 600; }
.ra-product-grid { gap: .75rem; }
.ra-product-grid .ra-product-card { box-shadow: none; }
.ra-product-grid .ra-card-image { aspect-ratio: 1 / 1.08; background: var(--ra-alt); }
.ra-product-grid .ra-card-copy { min-height: 6.75rem; padding: .75rem; }
.ra-product-grid .ra-card-copy h2 { font-size: .875rem; margin-bottom: .25rem; }
.ra-product-grid .ra-card-category { margin-bottom: .25rem; }
.ra-product-grid .ra-price { color: var(--ra-ink); font-size: .85rem; }
.ra-product-grid .ra-card-link:focus-visible { outline-offset: -4px; }
.ra-catalog-empty { border: 1px solid rgb(23 21 27 / 10%); background: var(--ra-yellow-tint); border-radius: 1.125rem; }
.ra-pagination { margin-top: 2.5rem; }
.ra-pagination a, .ra-pagination [aria-current] { border-radius: .875rem; }
.ra-product-detail { gap: 1.75rem; }
.ra-detail-photo { border: 1px solid rgb(23 21 27 / 8%); border-radius: 1.25rem; background: var(--ra-surface); box-shadow: 0 8px 22px rgb(23 21 27 / 5%); }
.ra-detail-copy h1 { margin-bottom: .5rem; }
.ra-detail-price { margin-bottom: 1.25rem; font-size: clamp(1.55rem, 6vw, 2rem); color: #d5076e; line-height: 1.15; }
.ra-tags { gap: .5rem; margin-bottom: 1.25rem; }
.ra-tags li { background: var(--ra-alt); padding: .45rem .75rem; font-size: .8rem; font-weight: 600; }
.ra-occasion-label { margin-bottom: .5rem !important; font-size: .875rem; color: var(--ra-secondary); }
.ra-occasion-links a { color: var(--ra-ink); text-decoration: none; }
.ra-occasion-links a:hover { text-decoration: underline; }
.ra-detail-copy .ra-prose { margin-top: 1.5rem; color: var(--ra-secondary); line-height: 1.6; }
.ra-product-note { border-radius: 1rem; background: var(--ra-pink-tint); padding: 1rem 1.125rem; line-height: 1.5; }
.ra-detail-copy > .ra-button { min-height: 3.5rem; border-radius: .875rem; box-shadow: 0 8px 18px rgb(0 143 50 / 16%); }
.ra-external-note { text-align: center; }
@media (min-width: 600px) {
	.ra-catalog-form { grid-template-columns: minmax(0, 2fr) repeat(2, minmax(9rem, 1fr)) auto; align-items: end; }
	.ra-search-field, .ra-catalog-form > button { grid-column: auto; }
	.ra-catalog-form > button { width: auto; min-width: 9rem; }
	.ra-product-grid { gap: 1.25rem; }
}
@media (min-width: 768px) {
	.ra-catalog { padding-top: 3.25rem; }
	.ra-product-detail { gap: 3.5rem; align-items: start; }
	.ra-detail-copy { padding-top: .5rem; }
	.ra-product-grid .ra-card-copy { min-height: 7.25rem; padding: .875rem; }
}

/* UI batch 3: a compact, product-led homepage hero. */
.ra-hero {
	padding-block: .75rem 1.5rem;
	background: #fff8ec;
}
.ra-hero::before {
	width: 15rem;
	height: 12rem;
	right: -7rem;
	top: 1.5rem;
	background: var(--ra-pink-tint);
	border-radius: 58% 42% 48% 52%;
	transform: rotate(-16deg);
}
.ra-hero::after {
	width: 5.5rem;
	height: 5.5rem;
	right: -2.5rem;
	bottom: 1rem;
	background: var(--ra-yellow);
	border-radius: 58% 42% 48% 52%;
	transform: rotate(-22deg);
}
.ra-hero-inner {
	display: block;
}
.ra-hero-stage {
	position: relative;
	min-height: 31rem;
	padding: 2.25rem 0 1.5rem;
	overflow: hidden;
}
.ra-hero-copy {
	width: min(61%, 18rem);
}
.ra-hero h1 {
	max-width: 8.8ch;
	margin-bottom: .875rem;
	font-size: clamp(2.35rem, 10vw, 3.45rem);
	line-height: .98;
	letter-spacing: -.035em;
}
.ra-intro {
	max-width: 15ch;
	font-size: .9375rem;
	line-height: 1.45;
}
.ra-actions {
	max-width: 12.75rem;
	margin-top: 1.125rem;
}
.ra-actions .ra-button {
	padding-inline: 1rem;
}
.ra-hero-media {
	position: absolute;
	right: -1rem;
	bottom: .75rem;
	width: 47%;
	aspect-ratio: 3 / 4.3;
	border: .3rem solid rgb(255 255 255 / 78%);
	border-radius: 1.5rem .8rem 1.5rem .8rem;
	background: var(--ra-surface);
	box-shadow: 0 16px 30px rgb(23 21 27 / 15%);
}
.ra-hero-media > img {
	object-position: center;
}
@media (min-width: 480px) {
	.ra-hero-stage {
		min-height: 33rem;
	}
	.ra-hero-copy {
		width: min(58%, 21rem);
	}
	.ra-hero h1 {
		max-width: 9.8ch;
	}
	.ra-hero-media {
		right: 0;
		width: 43%;
	}
}
@media (min-width: 768px) {
	.ra-hero {
		padding-block: 4rem;
	}
	.ra-hero::before {
		width: 21rem;
		height: 16rem;
		right: -8rem;
		top: 2rem;
	}
	.ra-hero::after {
		width: 7rem;
		height: 7rem;
		right: 3rem;
		bottom: 2rem;
	}
	.ra-hero-stage {
		display: grid;
		grid-template-columns: minmax(0, 1fr) minmax(20rem, .9fr);
		align-items: center;
		gap: 4rem;
		min-height: 0;
		padding: 0;
		overflow: visible;
	}
	.ra-hero-copy {
		width: auto;
	}
	.ra-hero h1 {
		max-width: 10ch;
		font-size: clamp(3rem, 5vw, 4.8rem);
	}
	.ra-intro {
		max-width: 31ch;
		font-size: 1rem;
	}
	.ra-actions {
		max-width: none;
	}
	.ra-actions .ra-button {
		padding-inline: 1.25rem;
	}
	.ra-hero-media {
		position: relative;
		right: auto;
		bottom: auto;
		width: auto;
		aspect-ratio: 4 / 5;
		border-width: .45rem;
		border-radius: 2rem 1rem 2rem 1rem;
	}
}

/* UI batch 4: clear, touch-friendly browsing by real occasions. */
.ra-browse-section {
	margin-top: 2.5rem;
}
.ra-browse-section .ra-section-heading {
	align-items: center;
	margin-bottom: 1.25rem;
}
.ra-browse-section .ra-section-heading h2 {
	font-size: clamp(1.7rem, 7vw, 2.25rem);
}
.ra-browse-section .ra-section-heading > a {
	color: #007cbb;
	font-size: .8125rem;
	font-weight: 700;
}
.ra-browse-section .ra-category-list {
	gap: 1.25rem .375rem;
}
.ra-browse-section .ra-category-list a {
	gap: .55rem;
	min-height: 7.5rem;
	padding: 0 .125rem;
	font-size: .75rem;
	font-weight: 700;
	line-height: 1.25;
}
.ra-browse-section .ra-category-symbol {
	width: clamp(3.75rem, 18vw, 4.75rem);
	color: #007cbb;
	background: var(--ra-blue-tint);
	box-shadow: none;
	transition: transform 180ms ease-out, background-color 180ms ease-out;
}
.ra-browse-section .ra-category-symbol svg {
	width: 2rem;
	height: 2rem;
	stroke-width: 1.9;
}
.ra-browse-section .ra-category-list li:nth-child(4n+2) .ra-category-symbol {
	color: #d5076e;
	background: var(--ra-pink-tint);
}
.ra-browse-section .ra-category-list li:nth-child(4n+3) .ra-category-symbol {
	color: #b06d00;
	background: var(--ra-yellow-tint);
}
.ra-browse-section .ra-category-list li:nth-child(4n+4) .ra-category-symbol {
	color: #007c2b;
	background: var(--ra-green-tint);
}
.ra-browse-section .ra-category-list a:hover .ra-category-symbol {
	transform: translateY(-2px);
}
.ra-browse-section .ra-category-list a:focus-visible {
	border-radius: .75rem;
	outline-offset: 2px;
}
@media (min-width: 600px) {
	.ra-browse-section .ra-category-list {
		gap: 1.5rem 1rem;
	}
	.ra-browse-section .ra-category-list a {
		font-size: .8125rem;
	}
}
@media (prefers-reduced-motion: reduce) {
	.ra-browse-section .ra-category-symbol {
		transition: none;
	}
	.ra-browse-section .ra-category-list a:hover .ra-category-symbol {
		transform: none;
	}
}

/* UI batch 5: compact, browseable recent-product carousel. */
.ra-recent-section .ra-section-heading {
	align-items: center;
	margin-bottom: 1rem;
}
.ra-recent-section .ra-section-heading h2 {
	font-size: clamp(1.7rem, 7vw, 2.25rem);
}
.ra-recent-section .ra-section-heading > a {
	color: #007cbb;
	font-size: .8125rem;
	font-weight: 700;
}
.ra-recent-section .ra-product-strip {
	grid-auto-columns: minmax(8.75rem, 42%);
	gap: .75rem;
	padding: .25rem .125rem 1.375rem;
	overscroll-behavior-inline: contain;
	scrollbar-color: rgb(23 21 27 / 30%) transparent;
}
.ra-recent-section .ra-product-card {
	border: 0;
	border-radius: .875rem;
	box-shadow: 0 7px 18px rgb(23 21 27 / 8%);
}
.ra-recent-section .ra-card-link {
	border-radius: .875rem;
}
.ra-recent-section .ra-card-image {
	aspect-ratio: 1 / 1.08;
	border-radius: .875rem .875rem 0 0;
	background: var(--ra-alt);
}
.ra-recent-section .ra-card-copy {
	min-height: 6.8rem;
	padding: .7rem .75rem .75rem;
}
.ra-recent-section .ra-card-copy h3 {
	margin-bottom: .25rem;
	font-size: .8125rem;
	line-height: 1.25;
}
.ra-recent-section .ra-card-category {
	margin-bottom: .35rem;
	font-size: .7rem;
	line-height: 1.25;
}
.ra-recent-section .ra-card-copy .ra-price {
	color: var(--ra-ink);
	font-size: .75rem;
}
.ra-recent-section .ra-card-link:focus-visible {
	outline-offset: -4px;
}
@media (min-width: 600px) {
	.ra-recent-section .ra-product-strip {
		grid-auto-columns: minmax(10rem, 28%);
		gap: 1rem;
	}
}
@media (min-width: 900px) {
	.ra-recent-section .ra-product-strip {
		grid-auto-columns: calc((100% - 3rem) / 4);
	}
}

/* UI batch 6: clear final WhatsApp contact action. */
.ra-home-contact-section {
	margin-top: 3.5rem;
}
.ra-home-contact-section .ra-contact-panel {
	display: grid;
	gap: 1rem;
	padding: 1.25rem;
	border-radius: 1.125rem;
	background: #008f32;
	box-shadow: 0 12px 24px rgb(0 143 50 / 18%);
}
.ra-home-contact-section .ra-contact-panel h2 {
	margin-bottom: .25rem;
	font-size: clamp(1.35rem, 6vw, 1.85rem);
}
.ra-home-contact-section .ra-contact-panel p {
	font-size: .9rem;
	line-height: 1.45;
}
.ra-home-contact-section .ra-contact-panel .ra-button--whatsapp {
	width: 100%;
	min-height: 3.5rem;
	border-radius: .875rem;
	color: var(--ra-ink) !important;
	background: var(--ra-surface);
	box-shadow: none;
}
.ra-home-contact-section .ra-contact-panel .ra-button--whatsapp:hover {
	box-shadow: 0 5px 14px rgb(23 21 27 / 15%);
}
@media (min-width: 768px) {
	.ra-home-contact-section .ra-contact-panel {
		grid-template-columns: minmax(0, 1fr) auto;
		align-items: center;
		padding: 2rem;
	}
	.ra-home-contact-section .ra-contact-panel .ra-button--whatsapp {
		width: auto;
		min-width: 15rem;
	}
}

/* UI batch 7: catalogue filtering and sorting. */
.ra-material-field, .ra-sort-field { min-width: 0; }
.ra-catalog-form { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.ra-catalog-form .ra-search-field { grid-column: 1 / -1; }
.ra-catalog-form > button { grid-column: 1 / -1; width: 100%; }
.ra-catalog-heading { margin-bottom: 1.5rem; }
.ra-catalog-heading h1 { font-size: clamp(2.3rem, 9vw, 3.5rem); }
.ra-result-count { padding-block: 1rem; font-weight: 700; }
.ra-product-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .75rem; }
@media (min-width: 768px) {
	.ra-catalog-form { grid-template-columns: minmax(0, 2fr) repeat(3, minmax(9rem, 1fr)); }
	.ra-catalog-form .ra-search-field { grid-column: auto; }
	.ra-catalog-form > button { grid-column: 1 / -1; width: auto; justify-self: start; }
}
@media (min-width: 1100px) {
	/* Restore the intended desktop density after the mobile-first batch 7 override. */
	.ra-product-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}

/* UI batch 8: focused single-image product detail. */
.ra-product-page { padding-top: 1.25rem; }
.ra-product-page .ra-back-link { color: #007cbb; font-size: .875rem; font-weight: 700; text-decoration-thickness: 1px; }
.ra-product-page .ra-product-detail { gap: 1.5rem; }
.ra-product-page .ra-detail-photo { aspect-ratio: 1; border: 0; border-radius: 1.25rem; background: var(--ra-alt); box-shadow: 0 12px 28px rgb(23 21 27 / 8%); }
.ra-product-page .ra-detail-copy h1 { font-size: clamp(2.25rem, 9vw, 3.5rem); letter-spacing: -.035em; }
.ra-product-page .ra-detail-price { margin-bottom: 1rem; }
.ra-product-page .ra-tags { margin-bottom: 1rem; }
.ra-product-page .ra-prose { margin-top: 1.25rem; }
.ra-product-page .ra-product-note { margin-block: 1.25rem; background: var(--ra-pink-tint); }
.ra-product-page .ra-detail-copy > .ra-button { margin-top: .25rem; background: #008f32; }
@media (min-width: 768px) {
	.ra-product-page { padding-top: 2.5rem; }
	.ra-product-page .ra-product-detail { grid-template-columns: minmax(0, 1fr) minmax(20rem, .9fr); gap: 4rem; }
	.ra-product-page .ra-detail-photo { position: sticky; top: 1.5rem; }
}

/* Footer: original logo, business location, and readable social destinations. */
.ra-footer {
	padding-block: 2.5rem;
	border-top: 1px solid var(--ra-line);
	color: var(--ra-ink);
	background: #fff8ec;
}
.ra-footer .ra-footer-inner {
	grid-template-columns: minmax(0, 1fr);
	gap: 2rem;
}
.ra-footer .ra-footer-inner > * {
	min-width: 0;
}
.ra-footer a {
	min-width: 2.75rem;
	max-width: 100%;
	color: var(--ra-ink);
}
.ra-footer .ra-footer-brand {
	display: inline-flex;
	max-width: 14rem;
	margin-bottom: 1.25rem;
	padding: .75rem;
	border-radius: .75rem;
	background: var(--ra-surface);
	font-weight: 700;
	text-decoration: none;
}
.ra-footer .ra-footer-logo {
	width: 12.5rem;
	height: auto;
	object-fit: contain;
}
.ra-footer-location {
	display: flex;
	align-items: flex-start;
	gap: .625rem;
	max-width: 30ch;
	font-style: normal;
	line-height: 1.6;
}
.ra-footer-location > span:first-child {
	flex-shrink: 0;
	color: #007cbb;
}
.ra-footer .ra-footer-heading {
	margin-bottom: .75rem;
}
.ra-footer-social {
	display: flex;
	flex-wrap: wrap;
	gap: .75rem;
	margin: 0 0 .75rem;
	padding: 0;
	list-style: none;
}
.ra-footer .ra-footer-social a {
	display: inline-flex;
	gap: .5rem;
	min-height: 2.75rem;
	padding: .625rem .75rem;
	border-radius: .75rem;
	color: #00699f;
	background: var(--ra-blue-tint);
	font-weight: 700;
	text-decoration: none;
}
.ra-footer .ra-footer-social li:nth-child(2) a {
	color: #a3076e;
	background: var(--ra-pink-tint);
}
.ra-footer-social svg {
	width: 1.25rem;
	height: 1.25rem;
}
.ra-footer-social a > span:first-child,
.ra-footer-whatsapp > span {
	display: inline-flex;
	flex-shrink: 0;
}
.ra-footer .ra-footer-social a:hover {
	text-decoration: underline;
}
.ra-footer .ra-footer-whatsapp {
	gap: .5rem;
	color: #007c2b;
	font-weight: 700;
}
.ra-footer a:focus-visible {
	outline-color: var(--ra-ink);
}
@media (min-width: 48rem) {
	.ra-footer {
		padding-block: 3rem;
	}
	.ra-footer .ra-footer-inner {
		grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr) minmax(0, .7fr);
		gap: 2rem;
	}
}

/* How to order: one connected, readable sequence before the contact CTA. */
.ra-ordering {
	padding-block: 1rem;
}
.ra-ordering > h2 {
	max-width: 22ch;
	margin-bottom: 2rem;
	font-weight: 700;
}
.ra-order-steps {
	display: grid;
	gap: 0;
	margin: 0;
	padding: 0;
	list-style: none;
}
.ra-order-step {
	position: relative;
	display: grid;
	grid-template-columns: 3.5rem minmax(0, 1fr);
	gap: 1rem;
	min-width: 0;
	padding-bottom: 2rem;
}
.ra-order-step:not(:last-child)::after {
	position: absolute;
	top: 3.5rem;
	bottom: 0;
	left: 1.75rem;
	width: 1px;
	background: var(--ra-line);
	content: '';
}
.ra-order-step:last-child {
	padding-bottom: 0;
}
.ra-order-symbol {
	position: relative;
	display: grid;
	width: 3.5rem;
	height: 3.5rem;
	place-items: center;
	border-radius: 50%;
	color: #007cbb;
	background: var(--ra-blue-tint);
}
.ra-order-symbol > svg {
	width: 1.75rem;
	height: 1.75rem;
}
.ra-order-number {
	position: absolute;
	top: -.3rem;
	right: -.2rem;
	display: grid;
	min-width: 1.25rem;
	min-height: 1.25rem;
	padding: .1rem;
	place-items: center;
	border-radius: 50%;
	color: var(--ra-surface);
	background: #007cbb;
	font-size: .6875rem;
	font-weight: 700;
	line-height: 1;
}
.ra-order-copy {
	min-width: 0;
	padding-top: .125rem;
}
.ra-order-copy h3 {
	margin-bottom: .5rem;
	font: 700 1.0625rem/1.3 var(--ra-body);
}
.ra-order-copy p {
	margin: 0;
	color: var(--ra-secondary);
	font-size: .9375rem;
	line-height: 1.6;
	white-space: pre-line;
}
.ra-order-step--deposit .ra-order-symbol {
	color: #bd087f;
	background: var(--ra-pink-tint);
}
.ra-order-step--deposit .ra-order-number {
	background: #bd087f;
}
.ra-order-step--deposit h3 {
	color: #bd087f;
	font-size: 1.375rem;
}
.ra-order-step:nth-child(3) .ra-order-symbol {
	color: #916000;
	background: var(--ra-yellow-tint);
}
.ra-order-step:nth-child(4) .ra-order-symbol {
	color: #007c2b;
	background: var(--ra-green-tint);
}
@media (min-width: 64rem) {
	.ra-order-steps {
		grid-template-columns: repeat(4, minmax(0, 1fr));
		gap: 2rem;
	}
	.ra-order-step {
		grid-template-columns: minmax(0, 1fr);
		align-content: start;
		gap: 1.25rem;
		padding: 0;
	}
	.ra-order-step:not(:last-child)::after {
		top: 1.75rem;
		bottom: auto;
		left: 3.5rem;
		width: calc(100% + 2rem - 3.5rem);
		height: 1px;
	}
}

/* UI batch 11: clear copy and vivid artwork without product/text overlap. */
.ra-hero {
	padding-block: 0;
	background: #fff8ec;
}
.ra-hero::before,
.ra-hero::after {
	display: none;
}
.ra-hero .ra-hero-inner {
	width: min(100%, 75rem);
}
.ra-hero .ra-hero-stage {
	position: relative;
	display: block;
	isolation: isolate;
	min-height: 0;
	aspect-ratio: auto;
	padding: 0;
	overflow: visible;
	border-radius: 0;
	background: #fff8ec;
	box-shadow: none;
}
.ra-hero .ra-hero-stage::after {
	display: none;
}
.ra-hero .ra-hero-media {
	position: relative;
	inset: auto;
	width: 100%;
	height: auto;
	aspect-ratio: 941 / 1452;
	margin: 0;
	border: 0;
	border-radius: 0;
	overflow: hidden;
	background: #fff8ec;
	box-shadow: none;
}
.ra-hero .ra-hero-media > img {
	position: absolute;
	inset: 0;
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center bottom;
}
.ra-hero .ra-hero-copy {
	position: relative;
	z-index: 1;
	width: 100%;
	min-width: 0;
	padding: 2rem 1.25rem 1.75rem;
}
.ra-hero h1 {
	max-width: 16ch;
	margin-bottom: 1rem;
	font-size: clamp(2.3rem, 9vw, 3.25rem);
	font-weight: 700;
	line-height: 1.06;
	letter-spacing: -.03em;
}
.ra-hero h1 span {
	color: #d5076e;
	font-style: normal;
}
.ra-hero .ra-intro {
	max-width: 38ch;
	margin-bottom: 0;
	color: var(--ra-ink);
	font-size: 1rem;
	line-height: 1.5;
}
.ra-hero .ra-actions {
	display: flex;
	max-width: 22rem;
	margin-top: 1.25rem;
}
.ra-hero .ra-actions .ra-button {
	width: 100%;
	min-height: 3.25rem;
	border-radius: 999px;
	font-size: 1rem;
}
.ra-hero .ra-button--catalogue {
	color: #fff;
	background: #007cbb;
	box-shadow: none;
}
.ra-hero .ra-button--catalogue:hover {
	background: #00699f;
}
@media (min-width: 480px) and (max-width: 767px) {
	.ra-hero .ra-hero-copy {
		padding-inline: 2rem;
	}
}
@media (min-width: 768px) {
	.ra-hero {
		padding-block: 1.5rem;
	}
	.ra-hero .ra-hero-inner {
		width: min(100% - 4rem, 70rem);
	}
	.ra-hero .ra-hero-stage--with-image {
		display: grid;
		grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
		align-items: center;
		gap: clamp(1rem, 3vw, 3rem);
	}
	.ra-hero .ra-hero-media {
		width: 100%;
		max-width: 28rem;
		justify-self: center;
	}
	.ra-hero .ra-hero-copy {
		padding: 2rem 0;
	}
	.ra-hero .ra-hero-stage:not(.ra-hero-stage--with-image) .ra-hero-copy {
		max-width: 40rem;
	}
	.ra-hero h1 {
		max-width: 16ch;
		font-size: clamp(2.75rem, 4.5vw, 4.5rem);
	}
	.ra-hero .ra-intro {
		font-size: 1.0625rem;
	}
	.ra-hero .ra-actions .ra-button {
		width: auto;
		padding-inline: 2rem;
	}
}
@media (min-width: 768px) and (max-width: 1100px) {
	.ra-hero .ra-hero-stage--with-image {
		grid-template-columns: minmax(0, 1.08fr) minmax(0, .92fr);
	}
}
@media (prefers-reduced-motion: reduce) {
	.ra-hero .ra-button {
		transition: none;
	}
}
