@font-face{font-family:Manrope;src:url('fonts/manrope.ttf') format('truetype');font-weight:200 800;font-style:normal;font-display:swap}
@font-face{font-family:'DM Sans';src:url('fonts/dm-sans.ttf') format('truetype');font-weight:100 900;font-style:normal;font-display:swap}

:root{--rs-bg:#FFFFFF;--rs-surface:#fff;--rs-ink:#202923;--rs-accent:#294D3C;--rs-muted:#626B61;--rs-line:#DADFD4;--rs-soft:#EDEEE7;--rs-highlight:#D4DFCA;--rs-heading:Manrope,system-ui,sans-serif;--rs-body:'DM Sans',system-ui,sans-serif;--rs-radius:6px;--rs-shadow:0 12px 36px rgba(32,41,35,.08);--rs-max:1280px}
*,*::before,*::after{box-sizing:border-box}
html{scroll-padding-top:105px;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--rs-bg);color:var(--rs-ink);font-family:var(--rs-body);font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased}
body.rs-menu-open{overflow:hidden}
img{max-width:100%;height:auto;vertical-align:middle}
svg{display:block;flex:none}
a{color:inherit;text-decoration-thickness:1px;text-underline-offset:4px}
a:hover{color:var(--rs-accent)}
button,input,select,textarea{font:inherit}
button{cursor:pointer}
button:disabled,input:disabled{cursor:not-allowed;opacity:.65}
button,a,input,select,textarea,summary{touch-action:manipulation}
:focus-visible{outline:3px solid var(--rs-accent);outline-offset:4px}
input:focus,select:focus,textarea:focus{outline:2px solid var(--rs-accent);outline-offset:2px}
::selection{background:var(--rs-highlight);color:var(--rs-ink)}
h1,h2,h3,h4,h5,h6{font-family:var(--rs-heading);font-weight:600;line-height:1.18;letter-spacing:-.035em;margin:0 0 20px;color:var(--rs-ink)}
h1{font-size:clamp(36px,4.5vw,54px)}
h2{font-size:clamp(28px,3.1vw,40px)}
h3{font-size:23px;letter-spacing:-.025em}
h4{font-size:20px}
p{margin:0 0 22px}
ul,ol{padding-left:24px}
figure{margin:0}
hr{border:0;border-top:1px solid var(--rs-line);margin:36px 0}
small{font-size:13px}
.container{width:100%;max-width:var(--rs-max);margin-inline:auto;padding-inline:32px}
.site-main{min-height:55vh}
.site-main>*{min-width:0}
.screen-reader-text,.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.screen-reader-text:focus{clip:auto!important;clip-path:none;display:block;top:12px;left:12px;width:auto;height:auto;padding:12px 20px;background:var(--rs-surface);color:var(--rs-ink);z-index:999999}
.skip-link{position:fixed;top:10px;left:16px;z-index:999999;transform:translateY(-150%);padding:12px 18px;background:var(--rs-surface);border:2px solid var(--rs-accent);border-radius:var(--rs-radius)}
.skip-link:focus{transform:none}
[hidden]{display:none!important}
.eyebrow,.rs-eyebrow{display:block;font-size:12px;font-weight:600;letter-spacing:.13em;text-transform:uppercase;color:var(--rs-accent);margin:0 0 18px;line-height:1.5}
.button,button.button,input.button,.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.woocommerce #respond input#submit,.wc-block-components-button:not(.is-link),.wp-element-button{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:13px 24px;background:var(--rs-accent);border:1px solid var(--rs-accent);border-radius:var(--rs-radius);color:#fff;font-family:var(--rs-body);font-size:15px;font-weight:600;line-height:1.4;text-decoration:none;box-shadow:none;transition:background-color .16s ease,color .16s ease,border-color .16s ease}
.button:hover,button.button:hover,input.button:hover,.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce input.button:hover,.woocommerce #respond input#submit:hover,.wc-block-components-button:not(.is-link):hover,.wp-element-button:hover{background:#294D3C;border-color:#294D3C;color:#fff;text-decoration:none}
.button:active,.woocommerce a.button:active,.woocommerce button.button:active{background:#202923}
.button.secondary,.button-outline,.button.is-secondary{background:transparent;color:var(--rs-accent);border-color:var(--rs-accent)}
.button.secondary:hover,.button-outline:hover,.button.is-secondary:hover{background:var(--rs-soft);color:var(--rs-accent)}
.button.small{min-height:44px;padding:10px 18px;font-size:14px}
.text-link{display:inline-flex;align-items:center;gap:8px;min-height:44px;font-size:14px;font-weight:600;color:var(--rs-accent);text-decoration:underline;text-underline-offset:6px}
.text-link::after{content:'\2192';font-size:18px;font-weight:400;text-decoration:none}
.text-link:hover{text-decoration-thickness:2px}
.icon-button{display:inline-flex;align-items:center;justify-content:center;position:relative;width:44px;height:44px;padding:10px;border:0;background:transparent;border-radius:var(--rs-radius);color:var(--rs-ink);text-decoration:none}
.icon-button:hover{background:var(--rs-soft);color:var(--rs-accent)}
.icon-button svg,.header-actions svg{width:21px;height:21px;stroke-width:1.5}

/* Header and navigation. */
.rs-announcement{background:var(--rs-accent);color:#fff;text-align:center;padding:9px 24px;font-size:12px;line-height:1.6;letter-spacing:.025em}
.rs-announcement a{color:#fff}
.site-header{position:relative;background:var(--rs-bg);border-bottom:1px solid var(--rs-line);z-index:40}
.header-inner{display:flex;align-items:center;justify-content:space-between;gap:28px;min-height:88px}
.rs-logo{display:inline-flex;align-items:center;flex:none;text-decoration:none;line-height:1}
.rs-logo img{width:190px;height:auto;max-height:58px;object-fit:contain}
.desktop-nav{margin-left:auto}
.desktop-nav ul{display:flex;align-items:center;gap:30px;list-style:none;padding:0;margin:0}
.desktop-nav li{position:relative;margin:0}
.desktop-nav a{display:flex;align-items:center;min-height:44px;font-size:14px;font-weight:500;text-decoration:none;white-space:nowrap}
.desktop-nav a:hover,.desktop-nav .current-menu-item>a,.desktop-nav .current-menu-ancestor>a{color:var(--rs-accent);text-decoration:underline;text-underline-offset:7px}
.desktop-nav .sub-menu{position:absolute;top:100%;left:-20px;display:none;min-width:228px;padding:12px 18px;background:var(--rs-surface);border:1px solid var(--rs-line);border-radius:var(--rs-radius);box-shadow:var(--rs-shadow);z-index:5}
.desktop-nav li:hover>.sub-menu,.desktop-nav li:focus-within>.sub-menu{display:block}
.desktop-nav .sub-menu a{white-space:normal}
.header-actions{display:flex;align-items:center;gap:2px;flex:none}
.rs-cart-count{position:absolute;top:3px;right:0;display:flex;align-items:center;justify-content:center;min-width:17px;height:17px;padding:0 4px;border-radius:50%;background:var(--rs-accent);color:#fff;font-size:10px;font-weight:600;line-height:1}
.rs-mobile-toggle{display:none}
.rs-search{position:relative}
.rs-search summary{list-style:none;cursor:pointer}
.rs-search summary::-webkit-details-marker{display:none}
.rs-search[open] summary{background:var(--rs-soft)}
.search-panel{position:absolute;top:calc(100% + 16px);right:0;width:min(440px,calc(100vw - 48px));padding:20px;background:var(--rs-surface);border:1px solid var(--rs-line);border-radius:var(--rs-radius);box-shadow:var(--rs-shadow);z-index:51}
.search-panel form{display:flex;align-items:stretch;gap:8px}
.search-panel label{flex:1;min-width:0}
.search-panel input[type=search]{width:100%;min-width:0;min-height:48px;margin:0}
.search-panel button{flex:none;padding:10px 18px}
.rs-mobile-panel{background:var(--rs-bg);padding:16px 24px 28px;border-top:1px solid var(--rs-line)}
.rs-mobile-panel ul{list-style:none;margin:0;padding:0}
.rs-mobile-panel li{border-bottom:1px solid var(--rs-line)}
.rs-mobile-panel a{display:block;padding:13px 0;text-decoration:none;font-weight:500;min-height:48px}
.rs-mobile-panel .sub-menu{padding:0 0 8px 16px}
.rs-mobile-panel .sub-menu li{border:0}
.rs-mobile-panel .sub-menu a{font-size:14px;padding:9px 0;min-height:44px}
.rs-menu-shade{position:fixed;inset:0;background:rgba(32,41,35,.24);z-index:35}
.rs-preview-note{padding:9px 24px;border-bottom:1px solid var(--rs-line);background:var(--rs-soft);color:var(--rs-muted);font-size:12px;text-align:center}

/* Homepage. */
.rs-hero{padding:48px 0 56px}
.hero-grid{display:grid;grid-template-columns:.94fr 1.06fr;align-items:center;gap:64px}
.hero-copy{padding:8px 0;max-width:535px;min-width:0}
.hero-copy h1{font-size:clamp(40px,4.1vw,54px);line-height:1.1;letter-spacing:-.045em;margin-bottom:24px;max-width:15ch}
.hero-copy p{max-width:43ch;color:var(--rs-muted);font-size:17px;line-height:1.7;margin-bottom:28px}
.hero-copy>.button{margin-right:22px;margin-bottom:8px}
.hero-copy>.text-link{margin-bottom:8px}
.hero-image{min-width:0;overflow:hidden;border-radius:var(--rs-radius);background:var(--rs-soft)}
.hero-image img{display:block;width:100%;height:440px;object-fit:cover;object-position:51% 50%}
.rs-promises{border-top:1px solid var(--rs-line);border-bottom:1px solid var(--rs-line);background:var(--rs-soft)}
.promise-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;padding-block:21px}
.promise-row>span{display:flex;align-items:center;justify-content:center;gap:10px;text-align:center;font-size:13px;font-weight:500;color:var(--rs-accent);line-height:1.5}
.promise-row>span+span{border-left:1px solid var(--rs-line)}
.promise-row svg{width:19px;height:19px;flex:none}
.rs-section{padding:88px 0}
.rs-section.soft,.rs-section.is-soft{background:var(--rs-soft)}
.section-heading{display:grid;grid-template-columns:1fr auto;column-gap:32px;margin-bottom:36px;align-items:end}
.section-heading h2{grid-column:1;margin-bottom:12px}
.section-heading p{grid-column:1;max-width:60ch;margin:0;color:var(--rs-muted);font-size:16px}
.section-heading .text-link{grid-column:2;grid-row:1 / 3;align-self:end;white-space:nowrap;margin-bottom:0}
.rs-room-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:30px 24px}
.room-card{display:block;min-width:0;text-decoration:none}
.room-card img{display:block;width:100%;aspect-ratio:4 / 3;object-fit:cover;border-radius:var(--rs-radius);background:var(--rs-soft);margin-bottom:18px;transition:filter .2s ease}
.room-card h3{font-size:18px;margin-bottom:7px;letter-spacing:-.02em}
.room-card p{font-size:14px;color:var(--rs-muted);line-height:1.55;margin:0}
.room-card:hover img{filter:brightness(.97)}
.room-card:hover h3{color:var(--rs-accent);text-decoration:underline;text-underline-offset:5px}
.rs-product-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px 24px}
.product-card{min-width:0;background:var(--rs-surface);border:1px solid var(--rs-line);border-radius:var(--rs-radius);overflow:hidden;display:flex;flex-direction:column}
.product-card-image{display:block;position:relative;background:var(--rs-surface);overflow:hidden;border-bottom:1px solid var(--rs-line);text-decoration:none}
.product-card-image img{display:block;width:100%;aspect-ratio:1 / 1;object-fit:contain;padding:18px;transition:transform .22s ease}
.product-card:hover .product-card-image img{transform:scale(1.025)}
.product-card-body{display:flex;flex-direction:column;flex:1;padding:20px;min-width:0}
.product-category{font-size:11px;font-weight:500;letter-spacing:.07em;text-transform:uppercase;color:var(--rs-muted);margin:0 0 9px}
.product-name{color:var(--rs-ink);text-decoration:none}
.product-name h3,h3.product-name{font-family:var(--rs-body);font-size:15px;font-weight:500;line-height:1.5;letter-spacing:0;margin:0 0 16px}
.product-name:hover{text-decoration:underline;text-underline-offset:4px}
.product-card-price{font-size:16px;font-weight:600;margin-top:auto;margin-bottom:14px;color:var(--rs-accent)}
.product-card-price del{font-size:14px;font-weight:400;color:var(--rs-muted);margin-right:6px}
.product-card-price ins{text-decoration:none}
.product-card-link{display:flex;justify-content:space-between;align-items:center;gap:8px;min-height:44px;padding-top:10px;border-top:1px solid var(--rs-line);font-size:13px;font-weight:500;text-decoration:none;color:var(--rs-accent)}
.product-card-link:hover{text-decoration:underline}
.product-card-link svg{width:17px;height:17px}
.rs-story{padding:88px 0;background:var(--rs-soft)}
.story-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}
.story-image{min-width:0}
.story-image img{display:block;width:100%;aspect-ratio:4 / 3;object-fit:cover;border-radius:var(--rs-radius)}
.story-copy{max-width:480px;min-width:0}
.story-copy p{color:var(--rs-muted);line-height:1.75}
.story-copy .button{margin-top:6px}
.rs-guide-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.guide-card{min-width:0;text-decoration:none}
.guide-card img{display:block;width:100%;aspect-ratio:4 / 3;object-fit:cover;border-radius:var(--rs-radius);margin-bottom:20px;background:var(--rs-soft)}
.guide-meta{font-size:11px;font-weight:500;text-transform:uppercase;letter-spacing:.08em;color:var(--rs-muted);margin-bottom:10px}
.guide-card h3{font-size:21px;line-height:1.35;margin-bottom:10px;letter-spacing:-.025em}
.guide-card p{font-size:14px;line-height:1.65;color:var(--rs-muted);margin-bottom:12px}
.guide-card:hover h3{color:var(--rs-accent);text-decoration:underline;text-underline-offset:5px}
.rs-help-band{padding:40px 0;background:var(--rs-highlight);border-top:1px solid var(--rs-line)}
.rs-help-band>.container{display:flex;justify-content:space-between;align-items:center;gap:32px}
.help-band-copy h2{font-size:27px;margin-bottom:8px}
.help-band-copy p{color:var(--rs-muted);margin:0;max-width:64ch;font-size:15px}
.rs-help-band .button{flex:none}

/* Footer. */
.site-footer{padding:64px 0 0;background:var(--rs-accent);color:#fff}
.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:48px;padding-bottom:48px}
.footer-grid>div{min-width:0}
.footer-logo{display:inline-block;margin-bottom:20px}
.footer-logo img{display:block;width:190px;height:auto;max-height:62px;object-fit:contain;filter:brightness(0) invert(1)}
.footer-grid h2,.footer-grid h3,.footer-grid h4{color:#fff;font-family:var(--rs-body);font-size:14px;font-weight:600;letter-spacing:0;margin-bottom:18px}
.footer-grid p{font-size:14px;line-height:1.75;max-width:32ch;color:#D4DFCA}
.footer-grid a{color:#fff}
.footer-links,.footer-grid ul{list-style:none;padding:0;margin:0}
.footer-links li,.footer-grid ul li{margin-bottom:7px}
.footer-links a,.footer-grid ul a{display:inline-flex;align-items:center;min-height:30px;font-size:13px;text-decoration:none;color:#D4DFCA}
.footer-links a:hover,.footer-grid ul a:hover{text-decoration:underline;color:#fff}
.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:24px 0;border-top:1px solid rgba(255,255,255,.2);font-size:12px;color:#D4DFCA}
.footer-bottom p{margin:0;font-size:12px}
.footer-bottom a{color:#D4DFCA}
.footer-bottom ul{display:flex;flex-wrap:wrap;gap:18px;list-style:none;margin:0;padding:0}

/* Catalog, category pages and filters. */
.rs-page-header{padding:56px 0 44px;border-bottom:1px solid var(--rs-line)}
.rs-page-header h1{font-size:clamp(34px,4vw,48px);margin-bottom:18px;max-width:24ch}
.rs-page-header p{max-width:68ch;margin-bottom:0;color:var(--rs-muted);font-size:16px}
.breadcrumb,.rs-breadcrumb,.woocommerce .woocommerce-breadcrumb{display:flex;flex-wrap:wrap;gap:7px;align-items:center;font-size:12px;color:var(--rs-muted);margin:0 0 22px;line-height:1.7}
.breadcrumb a,.rs-breadcrumb a,.woocommerce .woocommerce-breadcrumb a{color:var(--rs-muted);text-decoration:none}
.breadcrumb a:hover,.rs-breadcrumb a:hover,.woocommerce .woocommerce-breadcrumb a:hover{text-decoration:underline}
.rs-catalog-layout{display:grid;grid-template-columns:230px minmax(0,1fr);gap:48px;padding-block:44px 80px}
.rs-filter-sidebar{align-self:start;min-width:0;padding:24px;background:var(--rs-soft);border:1px solid var(--rs-line);border-radius:var(--rs-radius)}
.rs-filter-sidebar h2,.rs-filter-sidebar h3{font-size:16px;margin-bottom:18px}
.rs-filter-sidebar form{display:grid;gap:16px}
.rs-filter-sidebar label{font-size:13px;font-weight:500;display:block;margin-bottom:6px}
.rs-filter-sidebar input,.rs-filter-sidebar select{width:100%;min-width:0;font-size:13px;padding:10px 12px;min-height:44px}
.rs-filter-sidebar .button,.rs-filter-sidebar button{width:100%;min-height:44px;padding:11px 15px;font-size:13px}
.rs-filter-sidebar .category-list,.rs-filter-sidebar ul{list-style:none;padding:0;margin:0 0 24px}
.rs-filter-sidebar .category-list li,.rs-filter-sidebar ul li{margin:0 0 2px}
.rs-filter-sidebar .category-list a,.rs-filter-sidebar ul a{display:flex;justify-content:space-between;gap:6px;min-height:38px;align-items:center;font-size:13px;text-decoration:none}
.rs-filter-sidebar .category-list a:hover,.rs-filter-sidebar ul a:hover,.rs-filter-sidebar .current-cat>a{text-decoration:underline;font-weight:600}
.rs-filter-sidebar .filter-note{font-size:12px;color:var(--rs-muted);line-height:1.5;margin:12px 0 0}
.rs-catalog-main{min-width:0}
.catalog-toolbar{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:24px;padding-bottom:20px;border-bottom:1px solid var(--rs-line)}
.result-count,.woocommerce .woocommerce-result-count{font-size:13px;color:var(--rs-muted);margin:0}
.catalog-toolbar form,.woocommerce .woocommerce-ordering{margin:0}
.catalog-toolbar select,.woocommerce .woocommerce-ordering select{font-size:13px;min-height:44px;max-width:240px;padding:10px 34px 10px 12px;border:1px solid var(--rs-line);background:var(--rs-surface);border-radius:var(--rs-radius);color:var(--rs-ink)}
.rs-catalog-main .rs-product-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.rs-pagination,.woocommerce nav.woocommerce-pagination{margin-top:38px}
.rs-pagination .page-numbers,.woocommerce nav.woocommerce-pagination ul{display:flex;justify-content:center;flex-wrap:wrap;gap:8px;list-style:none;margin:0;padding:0;border:0}
.rs-pagination a.page-numbers,.rs-pagination span.page-numbers,.woocommerce nav.woocommerce-pagination ul li a,.woocommerce nav.woocommerce-pagination ul li span{display:flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:10px;background:var(--rs-surface);border:1px solid var(--rs-line);border-radius:var(--rs-radius);font-size:14px;text-decoration:none}
.rs-pagination span.current,.woocommerce nav.woocommerce-pagination ul li span.current{background:var(--rs-accent);border-color:var(--rs-accent);color:#fff}
.rs-pagination a:hover,.woocommerce nav.woocommerce-pagination ul li a:hover{background:var(--rs-soft)}
.woocommerce nav.woocommerce-pagination ul li{border:0;float:none;margin:0}
.rs-category-copy{padding:48px 0 0;border-top:1px solid var(--rs-line);margin-top:56px;max-width:75ch}
.rs-category-copy h2{font-size:27px;margin-bottom:20px}
.rs-category-copy p{font-size:15px;color:var(--rs-muted);line-height:1.8}
.rs-category-copy ul{font-size:15px;color:var(--rs-muted)}
.rs-category-copy a{color:var(--rs-accent)}

/* Editorial, support and contact. */
.rs-page-content{max-width:65ch;margin:0 auto;padding:56px 24px 80px}
.rs-page-content.commerce-content,.rs-page-content.full-width-content{max-width:1280px;padding-inline:32px}
.rs-honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.rs-coming-soon .rs-logo{margin-bottom:48px}.rs-coming-soon .coming-soon-merchant{font-size:12px;margin-top:48px;color:var(--rs-muted)}
.rs-sort-form{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.rs-sort-form label{font-size:13px}
.rs-js .rs-sort-submit{display:none}
.rs-product-delivery{border-top:1px solid var(--rs-line);margin-top:24px;padding-top:22px;font-size:14px}
.rs-product-delivery p{margin:8px 0;color:var(--rs-muted);line-height:1.6}
.rs-mobile-filters>summary{display:none}
.price-inputs{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.category-list [aria-current="page"]{font-weight:700;text-decoration:underline}
@media(max-width:680px){.rs-page-content.commerce-content,.rs-page-content.full-width-content{padding-inline:24px}.rs-mobile-filters>summary{display:list-item;cursor:pointer;min-height:44px;font-weight:600}.rs-sort-form label{display:none}.rs-category-copy{padding-inline:24px}.rs-article-footer{display:flex;gap:20px;flex-wrap:wrap}}
.rs-page-content>h2,.rs-page-content>h3{margin-top:38px}
.rs-page-content>h2:first-child,.rs-page-content>h3:first-child{margin-top:0}
.rs-page-content h2{font-size:28px}
.rs-page-content h3{font-size:22px}
.rs-page-content p,.rs-page-content li{line-height:1.8;color:var(--rs-muted)}
.rs-page-content li{margin-bottom:8px}
.rs-page-content a{color:var(--rs-accent)}
.rs-page-content table{display:block;width:100%;overflow-x:auto;border-collapse:collapse;border:1px solid var(--rs-line);font-size:14px}
.rs-page-content th,.rs-page-content td{padding:14px;border-bottom:1px solid var(--rs-line);text-align:left;vertical-align:top}
.rs-page-content th{background:var(--rs-soft);font-weight:600}
.rs-faq{border-top:1px solid var(--rs-line);margin-top:28px}
.rs-faq details{padding:0;border-bottom:1px solid var(--rs-line)}
.rs-faq summary{position:relative;display:block;list-style:none;padding:22px 40px 22px 0;cursor:pointer;font-family:var(--rs-heading);font-size:16px;font-weight:600;line-height:1.5;letter-spacing:-.02em;color:var(--rs-ink)}
.rs-faq summary::-webkit-details-marker{display:none}
.rs-faq summary::after{content:'+';position:absolute;right:0;top:20px;font-family:var(--rs-body);font-size:24px;font-weight:400;color:var(--rs-accent)}
.rs-faq details[open] summary::after{content:'\2212'}
.rs-faq details p{font-size:15px;padding-right:28px;margin:0 0 24px;color:var(--rs-muted);line-height:1.8}
.rs-contact-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px;padding-block:56px 80px}
.contact-details h2{font-size:27px}
.contact-details h3{font-family:var(--rs-body);font-size:15px;letter-spacing:0;margin:30px 0 10px}
.contact-details p{font-size:15px;color:var(--rs-muted);max-width:38ch}
.contact-details a{color:var(--rs-accent);overflow-wrap:anywhere}
.rs-contact-form{padding:32px;background:var(--rs-surface);border:1px solid var(--rs-line);border-radius:var(--rs-radius);min-width:0}
.rs-contact-form h2{font-size:25px;margin-bottom:26px}
.form-row{margin-bottom:20px;min-width:0}
.form-row label,.rs-contact-form label{display:block;font-size:13px;font-weight:500;color:var(--rs-ink);margin-bottom:7px}
input[type=text],input[type=email],input[type=tel],input[type=password],input[type=number],input[type=search],input[type=url],input[type=date],select,textarea{display:block;width:100%;min-height:48px;padding:12px 14px;border:1px solid var(--rs-line);border-radius:var(--rs-radius);background:var(--rs-surface);color:var(--rs-ink);font-size:15px;line-height:1.5;box-shadow:none}
input::placeholder,textarea::placeholder{color:var(--rs-muted);opacity:1}
textarea{min-height:160px;resize:vertical}
input[type=checkbox],input[type=radio]{accent-color:var(--rs-accent);width:18px;height:18px;flex:none;vertical-align:middle;margin:0 8px 0 0}
.rs-contact-form label:has(input[type=checkbox]){display:flex;gap:8px;align-items:flex-start;font-size:13px;font-weight:400;line-height:1.6;color:var(--rs-muted)}
.rs-contact-form label:has(input[type=checkbox]) input{margin-top:3px}
.form-status{margin:20px 0 0;padding:15px 18px;border:1px solid var(--rs-accent);border-radius:var(--rs-radius);background:var(--rs-soft);font-size:14px;line-height:1.7}
.form-status:empty{display:none}
.form-status.error{border-style:double;border-width:3px;background:var(--rs-surface);color:var(--rs-ink)}
.rs-guides-list{padding-block:56px 88px}
.rs-article-header{padding:56px 0 36px;max-width:850px;margin:auto}
.rs-article-header h1{font-size:clamp(34px,4vw,48px);line-height:1.15;max-width:24ch}
.article-meta{font-size:13px;color:var(--rs-muted);margin-top:20px}
.rs-article-header .article-image{display:block;width:100%;aspect-ratio:16 / 9;object-fit:cover;border-radius:var(--rs-radius);margin-top:32px}
.rs-article-body{max-width:65ch;margin:auto;padding:0 0 88px}
.rs-article-body h2{font-size:29px;margin-top:44px;margin-bottom:18px}
.rs-article-body h3{font-size:22px;margin-top:32px}
.rs-article-body p,.rs-article-body li{color:var(--rs-muted);line-height:1.85}
.rs-article-body li{margin-bottom:10px}
.rs-article-body a{color:var(--rs-accent)}
.rs-article-body img{display:block;border-radius:var(--rs-radius);margin:32px 0}
.rs-article-body blockquote{margin:32px 0;padding:22px 26px;border-left:3px solid var(--rs-accent);background:var(--rs-soft)}
.rs-article-body blockquote p:last-child{margin-bottom:0}
.rs-article-body .button{margin-top:8px}
.rs-empty-state{padding:64px 32px;border:1px solid var(--rs-line);border-radius:var(--rs-radius);background:var(--rs-surface);text-align:center}
.rs-empty-state h2{font-size:27px;margin-bottom:16px}
.rs-empty-state p{max-width:50ch;margin:0 auto 24px;color:var(--rs-muted);font-size:15px}
.rs-coming-soon{min-height:65vh;display:flex;align-items:center;justify-content:center;padding:80px 24px;text-align:center}
.rs-coming-soon .container{max-width:760px}
.rs-coming-soon img{max-width:250px;margin-bottom:40px}
.rs-coming-soon p{max-width:52ch;margin-inline:auto;color:var(--rs-muted)}

/* Native WooCommerce product templates. */
.woocommerce{color:var(--rs-ink);font-family:var(--rs-body)}
.woocommerce .clear{clear:both}
.woocommerce div.product{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:64px;row-gap:48px;margin-bottom:0}
.woocommerce div.product::before,.woocommerce div.product::after{display:none}
.woocommerce div.product .woocommerce-product-gallery,.woocommerce div.product div.images{float:none!important;width:100%!important;margin:0;min-width:0;align-self:start}
.woocommerce div.product div.summary{float:none!important;width:100%!important;margin:0;min-width:0;padding:8px 0 0}
.woocommerce div.product div.images .woocommerce-product-gallery__wrapper{margin:0;border:1px solid var(--rs-line);border-radius:var(--rs-radius);background:var(--rs-surface);overflow:hidden}
.woocommerce div.product div.images img{width:100%;height:auto;object-fit:contain}
.woocommerce div.product .woocommerce-product-gallery__image a{display:block;background:var(--rs-surface)}
.woocommerce div.product .woocommerce-product-gallery__trigger{background:var(--rs-surface);border:1px solid var(--rs-line);box-shadow:none;top:14px;right:14px}
.woocommerce div.product div.images .flex-control-thumbs{display:flex;gap:12px;margin-top:14px}
.woocommerce div.product div.images .flex-control-thumbs li{width:20%;float:none;border:1px solid var(--rs-line);background:var(--rs-surface);border-radius:var(--rs-radius);overflow:hidden}
.woocommerce div.product .product_title{font-size:clamp(28px,3vw,37px);line-height:1.2;letter-spacing:-.035em;margin:0 0 20px;max-width:26ch}
.woocommerce div.product p.price,.woocommerce div.product span.price{font-size:26px;line-height:1.3;color:var(--rs-accent);font-weight:600;margin:0 0 24px}
.woocommerce div.product p.price ins,.woocommerce div.product span.price ins{font-weight:600;text-decoration:none}
.woocommerce div.product p.price del,.woocommerce div.product span.price del{color:var(--rs-muted);font-size:20px;opacity:1}
.woocommerce-product-details__short-description{font-size:15px;line-height:1.8;color:var(--rs-muted);margin-bottom:24px}
.woocommerce-product-details__short-description p:last-child{margin-bottom:0}
.woocommerce div.product form.cart{display:flex;align-items:flex-start;flex-wrap:wrap;gap:12px;margin:28px 0}
.woocommerce div.product form.cart div.quantity{float:none;margin:0;flex:none}
.woocommerce .quantity .qty{width:74px;min-height:48px;padding:11px 6px;text-align:center}
.woocommerce div.product form.cart .button{float:none;min-height:48px;flex:1;min-width:180px;max-width:380px;margin:0}
.woocommerce button.button.alt,.woocommerce a.button.alt,.woocommerce input.button.alt,.woocommerce #respond input#submit.alt{background:var(--rs-accent);border-color:var(--rs-accent);color:#fff}
.woocommerce button.button.alt:hover,.woocommerce a.button.alt:hover,.woocommerce input.button.alt:hover{background:#294D3C;color:#fff}
.woocommerce div.product form.cart table{width:100%;border-collapse:collapse}
.woocommerce div.product form.cart .variations{margin-bottom:6px}
.woocommerce div.product form.cart .variations th,.woocommerce div.product form.cart .variations td{padding:8px 0;vertical-align:middle}
.woocommerce div.product form.cart .variations th{width:100px;text-align:left;font-size:13px}
.woocommerce div.product form.cart .variations select{width:100%;max-width:100%;margin:0}
.woocommerce div.product form.cart .reset_variations{display:inline-block;font-size:12px;margin:8px 0;color:var(--rs-muted)}
.woocommerce-variation-add-to-cart{display:flex;gap:12px;flex-wrap:wrap;align-items:flex-start;width:100%}
.single_variation_wrap{width:100%}
.woocommerce div.product .stock{font-size:13px;color:var(--rs-accent);margin:18px 0}
.woocommerce div.product .out-of-stock{color:var(--rs-ink);background:var(--rs-soft);padding:12px 16px;border-left:3px solid var(--rs-ink)}
.woocommerce .product_meta{font-size:12px;color:var(--rs-muted);padding-top:20px;border-top:1px solid var(--rs-line);display:grid;gap:6px}
.woocommerce .product_meta a{color:var(--rs-accent)}
.woocommerce div.product .woocommerce-tabs,.woocommerce div.product>.related,.woocommerce div.product>.upsells{grid-column:1 / -1;width:100%;min-width:0}
.woocommerce div.product .woocommerce-tabs ul.tabs{display:flex;gap:28px;list-style:none;margin:0 0 28px;padding:0;border-bottom:1px solid var(--rs-line);overflow-x:auto}
.woocommerce div.product .woocommerce-tabs ul.tabs::before{display:none}
.woocommerce div.product .woocommerce-tabs ul.tabs li{display:block;flex:none;border:0;border-radius:0;margin:0;padding:0;background:none;position:relative}
.woocommerce div.product .woocommerce-tabs ul.tabs li::before,.woocommerce div.product .woocommerce-tabs ul.tabs li::after{display:none}
.woocommerce div.product .woocommerce-tabs ul.tabs li a{display:block;min-height:50px;padding:12px 0;font-size:14px;font-weight:500;color:var(--rs-muted);white-space:nowrap;text-decoration:none}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active{background:none;border-bottom:2px solid var(--rs-accent)}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a{color:var(--rs-accent)}
.woocommerce div.product .woocommerce-tabs .panel{margin:0;max-width:78ch;padding:0;color:var(--rs-muted);font-size:15px;line-height:1.85}
.woocommerce div.product .woocommerce-tabs .panel>h2{font-size:27px;color:var(--rs-ink);margin-bottom:22px}
.woocommerce table.shop_attributes{border:1px solid var(--rs-line);border-collapse:collapse;background:var(--rs-surface);font-size:14px}
.woocommerce table.shop_attributes th,.woocommerce table.shop_attributes td{padding:12px 18px;background:transparent;border-bottom:1px solid var(--rs-line);font-style:normal;vertical-align:top;text-align:left}
.woocommerce table.shop_attributes th{font-weight:500;min-width:140px;color:var(--rs-ink)}
.woocommerce table.shop_attributes td p{padding:0;margin:0}
.woocommerce .related>h2,.woocommerce .upsells>h2{font-size:30px;margin-bottom:28px}
.woocommerce ul.products{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px 24px;padding:0;margin:0;list-style:none}
.woocommerce ul.products::before,.woocommerce ul.products::after{display:none}
.woocommerce ul.products li.product,.woocommerce-page ul.products li.product{float:none!important;width:auto!important;margin:0!important;min-width:0;display:flex;flex-direction:column;padding:0 0 20px;border:1px solid var(--rs-line);border-radius:var(--rs-radius);background:var(--rs-surface);overflow:hidden}
.woocommerce ul.products li.product a{text-decoration:none}
.woocommerce ul.products li.product a img{display:block;width:100%;aspect-ratio:1;object-fit:contain;margin:0 0 18px;padding:18px;border-bottom:1px solid var(--rs-line);background:var(--rs-surface)}
.woocommerce ul.products li.product .woocommerce-loop-product__title{font-family:var(--rs-body);font-size:15px;font-weight:500;line-height:1.5;letter-spacing:0;padding:0 20px;margin:0 0 12px}
.woocommerce ul.products li.product .price{font-size:16px;font-weight:600;color:var(--rs-accent);padding:0 20px;margin:0 0 18px}
.woocommerce ul.products li.product .price ins{text-decoration:none}
.woocommerce ul.products li.product .button{margin:0 20px;margin-top:auto;align-self:start;min-height:44px;font-size:13px;padding:10px 16px}
.woocommerce ul.products li.product .star-rating{margin:0 20px 10px;color:var(--rs-accent)}
.woocommerce span.onsale{min-width:0;min-height:0;padding:6px 10px;border-radius:var(--rs-radius);background:var(--rs-soft);color:var(--rs-accent);font-size:11px;font-weight:600;line-height:1.5;top:12px;left:12px}
.woocommerce ul.products li.product .onsale{right:12px;top:12px;left:auto;margin:0}
.woocommerce #reviews #comments ol.commentlist{padding:0;margin:0;list-style:none}
.woocommerce #reviews #comments ol.commentlist li .comment-text{border:1px solid var(--rs-line);border-radius:var(--rs-radius);padding:20px;margin-bottom:20px}
.woocommerce #reviews #comments ol.commentlist li img.avatar{border:0;background:var(--rs-soft);border-radius:50%;padding:0}
.woocommerce #review_form #respond{margin-top:28px}
.woocommerce #review_form #respond p{margin-bottom:18px}
.woocommerce #review_form #respond label{display:block;font-size:13px;font-weight:500;margin-bottom:7px}
.woocommerce .star-rating,.woocommerce p.stars a{color:var(--rs-accent)}

/* WooCommerce notices and account pages. */
.woocommerce-error,.woocommerce-info,.woocommerce-message,.wc-block-components-notice-banner{padding:18px 22px;margin:0 0 28px;background:var(--rs-soft);border:1px solid var(--rs-line);border-left:3px solid var(--rs-accent);border-radius:var(--rs-radius);font-size:14px;color:var(--rs-ink);line-height:1.7;box-shadow:none}
.woocommerce-error{background:var(--rs-surface);border-left-color:var(--rs-ink)}
.woocommerce-error::before,.woocommerce-info::before,.woocommerce-message::before{display:none}
.woocommerce-error li{margin:0;list-style:none}
.woocommerce-message .button,.woocommerce-info .button{float:right;min-height:38px;font-size:12px;padding:8px 13px;margin-left:18px}
.wc-block-components-notice-banner.is-error{background:var(--rs-surface);border-color:var(--rs-line);border-left-color:var(--rs-ink)}
.wc-block-components-notice-banner.is-success,.wc-block-components-notice-banner.is-info{background:var(--rs-soft);border-color:var(--rs-line)}
.wc-block-components-notice-banner>svg{fill:var(--rs-accent);background:transparent}
.woocommerce form .form-row{padding:0;margin:0 0 20px}
.woocommerce form .form-row label{font-size:13px;font-weight:500;line-height:1.5;margin-bottom:8px}
.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea{font-size:15px;padding:12px 14px;border:1px solid var(--rs-line);border-radius:var(--rs-radius);background:var(--rs-surface);box-shadow:none}
.woocommerce form .form-row.woocommerce-invalid label{color:var(--rs-ink)}
.woocommerce form .form-row.woocommerce-invalid .input-text,.woocommerce form .form-row.woocommerce-invalid select{border:2px solid var(--rs-ink)}
.woocommerce form .form-row.woocommerce-validated .input-text{border-color:var(--rs-accent)}
.woocommerce form.login,.woocommerce form.register,.woocommerce form.checkout_coupon{padding:28px;border:1px solid var(--rs-line);border-radius:var(--rs-radius);background:var(--rs-surface)}
.woocommerce .woocommerce-MyAccount-navigation{width:24%;float:left;padding:20px;background:var(--rs-soft);border:1px solid var(--rs-line);border-radius:var(--rs-radius)}
.woocommerce .woocommerce-MyAccount-navigation ul{list-style:none;margin:0;padding:0}
.woocommerce .woocommerce-MyAccount-navigation li a{display:block;padding:12px 4px;font-size:14px;text-decoration:none;min-height:44px;border-bottom:1px solid var(--rs-line)}
.woocommerce .woocommerce-MyAccount-navigation li:last-child a{border-bottom:0}
.woocommerce .woocommerce-MyAccount-navigation li.is-active a{font-weight:600;color:var(--rs-accent)}
.woocommerce .woocommerce-MyAccount-content{width:71%;float:right;min-width:0;font-size:15px}
.woocommerce .woocommerce-MyAccount-content p{color:var(--rs-muted)}
.woocommerce .woocommerce-MyAccount-content a{color:var(--rs-accent)}
.woocommerce .woocommerce-MyAccount-content .button{color:#fff}
.woocommerce .woocommerce-MyAccount-content fieldset{margin:28px 0;padding:24px;border:1px solid var(--rs-line);border-radius:var(--rs-radius)}
.woocommerce .woocommerce-MyAccount-content legend{padding:0 8px;font-weight:600}
.woocommerce table.shop_table{width:100%;border:1px solid var(--rs-line);border-collapse:separate;border-spacing:0;border-radius:var(--rs-radius);background:var(--rs-surface);margin:0 0 28px;font-size:14px;overflow:hidden}
.woocommerce table.shop_table th,.woocommerce table.shop_table td{padding:15px 18px;border-top:1px solid var(--rs-line);text-align:left}
.woocommerce table.shop_table thead th{background:var(--rs-soft);border-top:0;font-weight:500;font-size:13px}
.woocommerce table.shop_table td{vertical-align:middle}
.woocommerce table.shop_table tbody:first-child tr:first-child td,.woocommerce table.shop_table tbody:first-child tr:first-child th{border-top:0}
.woocommerce table.shop_table .button{font-size:12px;min-height:38px;padding:8px 12px}
.woocommerce .woocommerce-customer-details address{border:1px solid var(--rs-line);border-radius:var(--rs-radius);padding:22px;line-height:1.8;background:var(--rs-surface)}
.woocommerce .woocommerce-customer-details h2,.woocommerce .woocommerce-order-details h2{font-size:27px}
.woocommerce ul.order_details{display:flex;flex-wrap:wrap;gap:20px;padding:24px;background:var(--rs-soft);border:1px solid var(--rs-line);border-radius:var(--rs-radius);margin:0 0 32px}
.woocommerce ul.order_details li{float:none;font-size:11px;margin:0;padding:0 20px 0 0;border-right:1px solid var(--rs-line)}
.woocommerce ul.order_details li strong{font-size:15px;margin-top:6px}
.woocommerce .woocommerce-Addresses .title h3{font-size:24px}

/* Classic cart and checkout remain usable alongside Woo blocks. */
.woocommerce-cart table.cart img{width:80px;border-radius:var(--rs-radius)}
.woocommerce-cart table.cart .product-name a{color:var(--rs-ink);font-weight:500;text-decoration:none}
.woocommerce-cart table.cart .product-name a:hover{text-decoration:underline}
.woocommerce-cart table.cart td.actions .coupon{display:flex;gap:10px;align-items:center}
.woocommerce-cart table.cart td.actions .coupon .input-text{width:180px;min-height:44px;padding:10px 12px;border:1px solid var(--rs-line);border-radius:var(--rs-radius);margin:0}
.woocommerce .cart-collaterals .cart_totals{width:min(100%,460px);padding:26px;background:var(--rs-soft);border:1px solid var(--rs-line);border-radius:var(--rs-radius)}
.woocommerce .cart-collaterals .cart_totals h2{font-size:27px}
.woocommerce .cart-collaterals .cart_totals table{background:transparent;border:0}
.woocommerce .cart-collaterals .cart_totals table th,.woocommerce .cart-collaterals .cart_totals table td{padding:13px 0;border-color:var(--rs-line)}
.woocommerce-cart .wc-proceed-to-checkout{padding:12px 0 0}
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button{width:100%;font-size:15px;margin:0;padding:14px 20px}
.woocommerce a.remove{width:30px;height:30px;display:flex;align-items:center;justify-content:center;color:var(--rs-ink)!important;font-size:22px;line-height:1;background:var(--rs-soft);border-radius:50%}
.woocommerce a.remove:hover{background:var(--rs-highlight);color:var(--rs-accent)!important}
.woocommerce-checkout .col2-set{width:56%;float:left}
.woocommerce-checkout .col2-set .col-1,.woocommerce-checkout .col2-set .col-2{float:none;width:100%;margin-bottom:32px}
.woocommerce-checkout #order_review_heading,.woocommerce-checkout #order_review{width:38%;float:right;clear:right}
.woocommerce-checkout #order_review_heading{font-size:27px}
.woocommerce-checkout #payment{background:var(--rs-soft);border:1px solid var(--rs-line);border-radius:var(--rs-radius)}
.woocommerce-checkout #payment ul.payment_methods{border-bottom:1px solid var(--rs-line);padding:20px}
.woocommerce-checkout #payment div.payment_box{background:var(--rs-surface);color:var(--rs-muted);font-size:13px;border:1px solid var(--rs-line);border-radius:var(--rs-radius);padding:16px}
.woocommerce-checkout #payment div.payment_box::before{border-bottom-color:var(--rs-surface)}
.woocommerce-checkout #payment div.form-row{padding:20px;margin:0}
.woocommerce-checkout #payment #place_order{float:none;width:100%;margin-top:16px}
.woocommerce-privacy-policy-text,.woocommerce-terms-and-conditions-wrapper{font-size:12px;color:var(--rs-muted);line-height:1.7}
.select2-container .select2-selection--single{height:48px;border:1px solid var(--rs-line);border-radius:var(--rs-radius);background:var(--rs-surface)}
.select2-container--default .select2-selection--single .select2-selection__rendered{line-height:46px;padding-left:14px;color:var(--rs-ink);font-size:15px}
.select2-container--default .select2-selection--single .select2-selection__arrow{height:46px;right:7px}
.select2-dropdown{border:1px solid var(--rs-line);color:var(--rs-ink);font-size:14px}
.select2-container--default .select2-results__option--highlighted[aria-selected]{background:var(--rs-accent);color:#fff}

/* Native WooCommerce Cart and Checkout blocks. */
.wc-block-cart,.wc-block-checkout{font-family:var(--rs-body);color:var(--rs-ink);font-size:15px;margin:0}
.wc-block-components-main,.wc-block-components-sidebar{min-width:0}
.wc-block-components-sidebar{padding:26px;background:var(--rs-soft);border:1px solid var(--rs-line);border-radius:var(--rs-radius)}
.wc-block-cart .wc-block-cart__submit-container{background:transparent}
.wc-block-cart .wc-block-cart__submit-button,.wc-block-checkout .wc-block-components-checkout-place-order-button{width:100%;min-height:50px}
.wc-block-components-product-name{font-size:15px;font-weight:500;color:var(--rs-ink);line-height:1.5;text-decoration:none}
.wc-block-components-product-name:hover{color:var(--rs-accent);text-decoration:underline}
.wc-block-components-product-price{font-weight:600;color:var(--rs-accent);font-size:15px}
.wc-block-components-product-price del{font-weight:400;color:var(--rs-muted)}
.wc-block-components-product-price ins{text-decoration:none}
.wc-block-components-product-metadata{font-size:12px;color:var(--rs-muted);line-height:1.7}
.wc-block-cart-items,.wc-block-cart-items__row{border-color:var(--rs-line)!important}
.wc-block-cart table.wc-block-cart-items th{font-family:var(--rs-body);font-size:12px;font-weight:500;letter-spacing:.03em;color:var(--rs-muted)}
.wc-block-cart-item__image img{background:var(--rs-surface);border:1px solid var(--rs-line);border-radius:var(--rs-radius)}
.wc-block-components-quantity-selector{border-color:var(--rs-line);border-radius:var(--rs-radius);min-height:44px;background:var(--rs-surface)}
.wc-block-components-quantity-selector input.wc-block-components-quantity-selector__input{padding:0;min-height:44px;color:var(--rs-ink);font-size:14px;border-radius:0;background:transparent}
.wc-block-components-quantity-selector .wc-block-components-quantity-selector__button{min-width:34px;color:var(--rs-ink);opacity:1}
.wc-block-cart-item__remove-link{color:var(--rs-muted)!important;font-size:12px!important;text-underline-offset:3px;min-height:32px}
.wc-block-components-title,.wc-block-checkout__contact-fields .wc-block-components-title{font-family:var(--rs-heading);font-size:23px;font-weight:600;letter-spacing:-.025em;line-height:1.3}
.wc-block-components-checkout-step{margin-bottom:32px}
.wc-block-components-checkout-step__description{font-size:13px;color:var(--rs-muted);line-height:1.7}
.wc-block-components-checkout-step__heading{margin-bottom:18px}
.wc-block-components-totals-wrapper{border-color:var(--rs-line)!important}
.wc-block-components-totals-item{padding-block:15px;font-size:14px}
.wc-block-components-totals-item__label{font-weight:500}
.wc-block-components-totals-item__value{font-weight:600}
.wc-block-components-totals-footer-item{font-size:17px}
.wc-block-components-totals-coupon-link,.wc-block-components-panel__button{color:var(--rs-accent);font-size:13px;font-weight:500;min-height:44px}
.wc-block-components-text-input input[type=text],.wc-block-components-text-input input[type=email],.wc-block-components-text-input input[type=tel],.wc-block-components-text-input input[type=number],.wc-block-components-text-input input[type=password]{border:1px solid var(--rs-line);border-radius:var(--rs-radius);background:var(--rs-surface);color:var(--rs-ink);font-size:15px;min-height:52px;box-shadow:none}
.wc-block-components-text-input label{color:var(--rs-muted);font-size:14px}
.wc-block-components-text-input.has-error input,.wc-block-components-text-input.has-error input:focus{border:2px solid var(--rs-ink);box-shadow:none}
.wc-block-components-validation-error{color:var(--rs-ink);font-size:12px;margin-top:7px}
.wc-block-components-combobox .wc-block-components-combobox-control input.components-combobox-control__input{background:var(--rs-surface);color:var(--rs-ink);border-color:var(--rs-line);border-radius:var(--rs-radius);min-height:52px}
.wc-block-components-combobox .wc-block-components-combobox-control label.components-base-control__label{color:var(--rs-muted)}
.wc-block-components-checkbox .wc-block-components-checkbox__input[type=checkbox]{border-color:var(--rs-line);border-radius:3px;width:20px;height:20px}
.wc-block-components-checkbox .wc-block-components-checkbox__input[type=checkbox]:checked{border-color:var(--rs-accent);background:var(--rs-accent)}
.wc-block-components-checkbox .wc-block-components-checkbox__mark{fill:#fff}
.wc-block-components-checkbox__label{font-size:13px;line-height:1.7}
.wc-block-components-radio-control .wc-block-components-radio-control__input{accent-color:var(--rs-accent);border-color:var(--rs-line)}
.wc-block-components-radio-control .wc-block-components-radio-control__input:checked{border-color:var(--rs-accent)}
.wc-block-components-radio-control .wc-block-components-radio-control__input:checked::before{background:var(--rs-accent)}
.wc-block-components-radio-control-accordion-option{border-color:var(--rs-line);border-radius:var(--rs-radius);background:var(--rs-surface)}
.wc-block-components-radio-control-accordion-option--checked-option-highlighted{border-color:var(--rs-accent)}
.wc-block-components-radio-control__label{font-size:14px;font-weight:500}
.wc-block-components-radio-control__description{font-size:13px;color:var(--rs-muted)}
.wc-block-checkout__terms,.wc-block-components-checkout-return-to-cart-button{font-size:13px;color:var(--rs-muted);line-height:1.7}
.wc-block-components-checkout-return-to-cart-button{color:var(--rs-accent);min-height:44px}
.wc-block-components-express-payment{border:1px solid var(--rs-line);border-radius:var(--rs-radius);background:var(--rs-surface)}
.wc-block-components-express-payment__title{font-family:var(--rs-body);font-size:13px;font-weight:500;color:var(--rs-muted)}
.wc-block-components-order-summary .wc-block-components-order-summary-item__description{min-width:0}
.wc-block-components-order-summary .wc-block-components-order-summary-item__image img{border:1px solid var(--rs-line);border-radius:var(--rs-radius);background:var(--rs-surface)}
.wc-block-components-order-summary .wc-block-components-order-summary-item__quantity{background:var(--rs-accent);color:#fff;border-color:var(--rs-accent)}
.wp-block-woocommerce-empty-cart-block{max-width:720px;margin:40px auto;padding:40px 24px;text-align:center}
.wp-block-woocommerce-empty-cart-block h2{font-size:30px}
.wc-block-components-error-boundary,.wc-block-components-error{padding:24px;border:1px solid var(--rs-line);background:var(--rs-surface);border-radius:var(--rs-radius)}

/* Small laptops and tablets. */
@media(min-width:1400px){.hero-image img{height:460px}}
@media(max-width:1100px){
 .header-inner{gap:20px}.desktop-nav ul{gap:20px}.rs-logo img{width:165px}
 .hero-grid{gap:40px}.hero-image img{height:415px}.hero-copy h1{font-size:46px}
 .story-grid{gap:48px}.rs-catalog-layout{grid-template-columns:210px minmax(0,1fr);gap:30px}
 .rs-catalog-main .rs-product-grid{gap:20px}.product-card-body{padding:17px}
 .footer-grid{gap:32px}.woocommerce div.product{column-gap:40px}
}
@media(max-width:900px){
 .desktop-nav{display:none}.rs-mobile-toggle{display:inline-flex}.header-inner{min-height:76px;gap:16px}
 .header-actions{margin-left:auto}.rs-logo img{width:170px;max-height:52px}
 .hero-grid{gap:30px}.hero-copy h1{font-size:40px}.hero-copy p{font-size:16px}.hero-image img{height:385px}
 .hero-copy>.text-link{margin-top:5px}.hero-copy>.button{margin-right:14px}
 .rs-section,.rs-story{padding:64px 0}.rs-room-grid,.rs-product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 24px}
 .story-grid{gap:32px}.rs-guide-grid{gap:22px}.guide-card h3{font-size:19px}
 .footer-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}.footer-grid>div:first-child{grid-column:1 / -1;max-width:430px}.footer-grid p{max-width:45ch}
 .rs-contact-grid{gap:40px;grid-template-columns:.8fr 1.2fr}.rs-contact-form{padding:26px}
 .rs-catalog-layout{grid-template-columns:190px minmax(0,1fr);gap:24px}.rs-filter-sidebar{padding:18px}
 .rs-catalog-main .rs-product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .catalog-toolbar{gap:16px}.catalog-toolbar select{max-width:190px;font-size:12px}
 .woocommerce div.product{gap:32px}.woocommerce div.product .product_title{font-size:30px}.woocommerce ul.products{grid-template-columns:repeat(2,minmax(0,1fr))}
 .woocommerce div.product form.cart .button{min-width:145px;padding-inline:16px}
 .woocommerce-checkout .col2-set{width:54%}.woocommerce-checkout #order_review_heading,.woocommerce-checkout #order_review{width:41%}
}

/* Mobile: full touch targets, two-card browsing and a single-column checkout. */
@media(max-width:680px){
 html{scroll-padding-top:80px}body{font-size:15px}.container{padding-inline:24px}
 h1{font-size:36px}h2{font-size:29px}h3{font-size:22px}p{margin-bottom:20px}
 .rs-announcement{font-size:11px;line-height:1.5;padding:9px 18px}.header-inner{min-height:70px;gap:10px}
 .rs-logo img{width:151px;max-height:48px}.header-actions{gap:0}.icon-button{width:40px;height:44px;padding:9px}
 .header-actions svg{width:20px;height:20px}.rs-cart-count{right:0;top:3px}
 .search-panel{position:fixed;top:auto;right:24px;left:24px;width:auto;margin-top:14px;padding:16px}.search-panel form{gap:7px}.search-panel button{padding:10px 12px}
 .rs-preview-note{font-size:11px;padding:8px 18px}
 .rs-hero{padding:34px 0 40px}.hero-grid{grid-template-columns:1fr;gap:28px}.hero-copy{padding:0;max-width:none}
 .hero-copy .eyebrow{font-size:11px;margin-bottom:13px}.hero-copy h1{font-size:36px;max-width:17ch;margin-bottom:20px;line-height:1.12}
 .hero-copy p{font-size:15px;max-width:43ch;margin-bottom:24px;line-height:1.7}.hero-copy>.button{margin-right:17px;margin-bottom:0}.hero-copy>.text-link{font-size:13px;margin-top:0;margin-bottom:0}
 .hero-image img{height:auto;aspect-ratio:4 / 3;object-position:47% 50%}
 .promise-row{grid-template-columns:1fr;gap:0;padding-block:12px}.promise-row>span{padding:9px 0;font-size:12px;justify-content:flex-start}.promise-row>span+span{border-left:0;border-top:1px solid var(--rs-line)}
 .rs-section,.rs-story{padding:56px 0}.section-heading{display:block;margin-bottom:28px}.section-heading h2{margin-bottom:12px}.section-heading p{font-size:14px}.section-heading .text-link{margin-top:12px;white-space:normal}
 .rs-room-grid{gap:26px 16px}.room-card img{margin-bottom:13px}.room-card h3{font-size:16px;margin-bottom:5px}.room-card p{font-size:12px;line-height:1.6}
 .rs-product-grid,.rs-catalog-main .rs-product-grid{gap:18px 14px}.product-card-image img{padding:12px}.product-card-body{padding:13px}
 .product-category{font-size:9px;letter-spacing:.035em;margin-bottom:7px}.product-name h3,h3.product-name{font-size:13px;line-height:1.5;margin-bottom:13px}.product-card-price{font-size:15px;margin-bottom:10px}.product-card-price del{font-size:12px}.product-card-link{font-size:11px;min-height:40px;padding-top:7px}.product-card-link svg{width:15px;height:15px}
 .story-grid{grid-template-columns:1fr;gap:30px}.story-copy{max-width:none}.story-copy h2{font-size:29px}.story-copy p{font-size:15px;line-height:1.8}.story-image img{aspect-ratio:4 / 3}
 .rs-guide-grid{grid-template-columns:1fr;gap:32px}.guide-card img{aspect-ratio:16 / 10;margin-bottom:17px}.guide-card h3{font-size:22px}.guide-card p{font-size:14px}.guide-meta{font-size:10px}
 .rs-help-band{padding:32px 0}.rs-help-band>.container{display:block}.help-band-copy h2{font-size:25px}.help-band-copy p{font-size:14px}.rs-help-band .button{margin-top:22px}
 .site-footer{padding-top:44px}.footer-grid{grid-template-columns:1fr 1fr;gap:30px 22px;padding-bottom:36px}.footer-grid>div:first-child{grid-column:1 / -1}.footer-grid>div:last-child{grid-column:1 / -1}.footer-grid h2,.footer-grid h3,.footer-grid h4{font-size:13px;margin-bottom:13px}.footer-grid p{font-size:13px}.footer-links a,.footer-grid ul a{min-height:36px;font-size:12px}.footer-bottom{flex-direction:column;align-items:flex-start;gap:14px;padding-block:22px;font-size:11px}.footer-bottom p{font-size:11px}.footer-bottom ul{gap:10px 16px}.footer-logo img{width:180px}
 .rs-page-header{padding:34px 0 30px}.rs-page-header h1{font-size:34px;max-width:18ch;line-height:1.17}.rs-page-header p{font-size:14px}.breadcrumb,.rs-breadcrumb,.woocommerce .woocommerce-breadcrumb{font-size:11px;margin-bottom:18px;gap:5px}
 .rs-catalog-layout{grid-template-columns:1fr;gap:26px;padding-block:28px 56px}.rs-filter-sidebar{padding:18px}.rs-filter-sidebar h2,.rs-filter-sidebar h3{font-size:15px;margin-bottom:13px}.rs-filter-sidebar form{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.rs-filter-sidebar form>.button,.rs-filter-sidebar form>button,.rs-filter-sidebar .filter-note{grid-column:1 / -1}.rs-filter-sidebar .category-list,.rs-filter-sidebar>ul{display:flex;flex-wrap:wrap;gap:4px 16px;margin-bottom:18px}.rs-filter-sidebar .category-list a,.rs-filter-sidebar>ul a{font-size:12px;min-height:36px}.rs-filter-sidebar select,.rs-filter-sidebar input{font-size:13px}
 .catalog-toolbar{gap:10px;padding-bottom:18px;margin-bottom:20px;align-items:flex-start}.result-count{font-size:12px;max-width:42%;padding-top:11px}.catalog-toolbar select{max-width:185px;font-size:12px;min-height:44px;padding:10px 24px 10px 10px}
 .rs-pagination{margin-top:28px}.rs-pagination a.page-numbers,.rs-pagination span.page-numbers{min-height:42px;min-width:42px;font-size:13px}.rs-category-copy{padding-top:32px;margin-top:36px}.rs-category-copy h2{font-size:25px}.rs-category-copy p,.rs-category-copy ul{font-size:14px}
 .rs-page-content{padding:34px 0 56px}.rs-page-content h2{font-size:25px}.rs-page-content h3{font-size:21px}.rs-page-content p,.rs-page-content li{font-size:14px;line-height:1.8}
 .rs-faq summary{padding-block:19px;font-size:15px}.rs-faq summary::after{top:16px}.rs-faq details p{font-size:14px;padding-right:14px;margin-bottom:21px}
 .rs-contact-grid{grid-template-columns:1fr;gap:32px;padding-block:34px 56px}.contact-details p{max-width:none;font-size:14px}.rs-contact-form{padding:22px}.rs-contact-form h2{font-size:24px}.form-row{margin-bottom:18px}.rs-contact-form .button{width:100%}
 .rs-guides-list{padding-block:34px 56px}.rs-article-header{padding:34px 0 28px}.rs-article-header h1{font-size:34px;line-height:1.17}.article-meta{font-size:12px}.rs-article-header .article-image{margin-top:24px;aspect-ratio:4 / 3}.rs-article-body{padding-bottom:56px}.rs-article-body h2{font-size:26px;margin-top:32px}.rs-article-body h3{font-size:21px}.rs-article-body p,.rs-article-body li{font-size:15px;line-height:1.8}.rs-article-body blockquote{padding:18px 20px}
 .rs-empty-state{padding:40px 22px}.rs-empty-state h2{font-size:24px}.rs-empty-state p{font-size:14px}.rs-coming-soon{padding:56px 24px}.rs-coming-soon h1{font-size:34px}
 .woocommerce div.product{grid-template-columns:1fr;gap:28px}.woocommerce div.product div.summary{padding-top:0}.woocommerce div.product .product_title{font-size:30px;line-height:1.23;max-width:100%}.woocommerce div.product p.price,.woocommerce div.product span.price{font-size:24px;margin-bottom:21px}.woocommerce-product-details__short-description{font-size:14px}.woocommerce div.product form.cart{margin:22px 0}.woocommerce div.product form.cart .button{min-width:160px;max-width:none}.woocommerce div.product .woocommerce-tabs,.woocommerce div.product>.related,.woocommerce div.product>.upsells{grid-column:1}.woocommerce div.product .woocommerce-tabs ul.tabs{gap:24px;margin-bottom:24px}.woocommerce div.product .woocommerce-tabs ul.tabs li a{font-size:13px}.woocommerce div.product .woocommerce-tabs .panel{font-size:14px;line-height:1.8}.woocommerce div.product .woocommerce-tabs .panel>h2{font-size:25px}.woocommerce table.shop_attributes th,.woocommerce table.shop_attributes td{padding:11px 13px;font-size:13px}.woocommerce table.shop_attributes th{min-width:110px}.woocommerce .related>h2,.woocommerce .upsells>h2{font-size:26px}
 .woocommerce ul.products{gap:18px 14px}.woocommerce ul.products li.product{padding-bottom:15px}.woocommerce ul.products li.product a img{padding:12px;margin-bottom:13px}.woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:13px;padding-inline:13px;margin-bottom:10px}.woocommerce ul.products li.product .price{font-size:15px;padding-inline:13px;margin-bottom:14px}.woocommerce ul.products li.product .button{font-size:11px;padding:9px 11px;margin-inline:13px;min-height:40px}.woocommerce span.onsale{font-size:10px;padding:5px 8px}
 .woocommerce-error,.woocommerce-info,.woocommerce-message,.wc-block-components-notice-banner{font-size:13px;padding:16px 18px;margin-bottom:24px}.woocommerce-message .button,.woocommerce-info .button{float:none;display:inline-flex;margin:0 10px 10px 0}
 .woocommerce .woocommerce-MyAccount-navigation,.woocommerce .woocommerce-MyAccount-content{float:none;width:100%;}.woocommerce .woocommerce-MyAccount-navigation{padding:13px 18px;margin-bottom:28px}.woocommerce .woocommerce-MyAccount-navigation ul{display:flex;flex-wrap:wrap;gap:0 18px}.woocommerce .woocommerce-MyAccount-navigation li a{font-size:12px;min-height:42px;border:0;padding:10px 0}.woocommerce .woocommerce-MyAccount-content{font-size:14px}.woocommerce form.login,.woocommerce form.register,.woocommerce form.checkout_coupon{padding:22px}.woocommerce .woocommerce-MyAccount-content fieldset{padding:18px}
 .woocommerce table.shop_table th,.woocommerce table.shop_table td{padding:13px 14px}.woocommerce table.shop_table_responsive tr td{background:var(--rs-surface);padding:13px 16px;overflow-wrap:anywhere}.woocommerce table.shop_table_responsive tr:nth-child(2n) td{background:var(--rs-soft)}.woocommerce table.shop_table_responsive tr td::before{font-size:12px;font-weight:500}.woocommerce table.shop_table_responsive tr td .button{margin:3px 0 3px 6px}.woocommerce table.my_account_orders{border-collapse:separate}
 .woocommerce-cart table.cart td.actions .coupon{float:none;width:100%;display:flex;margin-bottom:12px;padding-bottom:0}.woocommerce-cart table.cart td.actions .coupon .input-text{width:auto;flex:1;min-width:0}.woocommerce-cart table.cart td.actions .coupon .button{width:auto!important;flex:none;min-height:44px}.woocommerce-cart table.cart td.actions>.button{width:100%;min-height:44px}.woocommerce .cart-collaterals .cart_totals{float:none;width:100%;padding:22px}.woocommerce .cart-collaterals .cart_totals h2{font-size:25px}.woocommerce-checkout .col2-set,.woocommerce-checkout #order_review_heading,.woocommerce-checkout #order_review{float:none;width:100%}.woocommerce-checkout #order_review_heading{font-size:25px;margin-top:32px}.woocommerce-checkout #payment div.form-row{padding:18px}.woocommerce-checkout .woocommerce-billing-fields h3,.woocommerce-checkout .woocommerce-additional-fields h3{font-size:25px}
 .woocommerce .col2-set .col-1,.woocommerce .col2-set .col-2{float:none;width:100%;margin-bottom:28px}.woocommerce ul.order_details{gap:18px;padding:20px}.woocommerce ul.order_details li{width:calc(50% - 9px);padding:0;border:0;font-size:10px}.woocommerce ul.order_details li strong{font-size:14px}
 .wc-block-components-sidebar{padding:20px}.wc-block-components-main{padding:0!important}.wc-block-components-title{font-size:22px}.wc-block-components-checkout-step{margin-bottom:28px}.wc-block-components-product-name{font-size:14px}.wc-block-components-product-price{font-size:14px}.wc-block-components-product-metadata{font-size:11px}.wc-block-components-totals-item{font-size:13px}.wc-block-components-totals-footer-item{font-size:16px}.wc-block-cart-item__remove-link{min-height:36px}.wc-block-components-text-input input[type=text],.wc-block-components-text-input input[type=email],.wc-block-components-text-input input[type=tel],.wc-block-components-text-input input[type=number],.wc-block-components-text-input input[type=password]{font-size:16px}.wc-block-components-address-form__address_2-toggle{min-height:44px;font-size:13px;color:var(--rs-accent)}
 input[type=text],input[type=email],input[type=tel],input[type=password],input[type=number],input[type=search],input[type=url],select,textarea{font-size:16px}
}
@media(max-width:380px){
 .container{padding-inline:20px}.header-inner{gap:6px}.rs-logo img{width:134px}.icon-button{width:36px}.hero-copy h1{font-size:34px}.hero-copy>.button{padding-inline:18px;margin-right:12px}.hero-copy>.text-link{font-size:12px}.rs-product-grid,.rs-catalog-main .rs-product-grid{gap:16px 10px}.product-card-body{padding:11px}.product-category{font-size:8px}.product-name h3,h3.product-name{font-size:12px}.product-card-link{font-size:10px}.catalog-toolbar select{max-width:171px;font-size:11px}.rs-contact-form{padding:18px}.footer-grid{gap:26px 18px}
}
@media(prefers-reduced-motion:reduce){
 *,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}.product-card:hover .product-card-image img{transform:none}
}
@media print{
 .site-header,.rs-announcement,.site-footer,.rs-filter-sidebar,.rs-help-band,.rs-preview-note,.woocommerce div.product form.cart{display:none!important}body{background:#fff;color:#202923;font-size:11pt}.container{max-width:none;padding:0}.rs-section,.rs-story,.rs-page-header{padding:24px 0}.rs-article-body,.rs-page-content{max-width:none}.woocommerce div.product{display:block}.woocommerce div.product div.images{max-width:40%;float:left!important;margin-right:24px}.woocommerce div.product div.summary{width:auto!important}
}

/* Layout alignment for native page content. */
.rs-page-header.container{padding-inline:32px}
.hero-copy p:has(>.button){display:flex;align-items:center;flex-wrap:wrap;gap:12px 22px}
.catalog-toolbar .rs-sort-form{display:flex}
html.rs-js .catalog-toolbar .rs-sort-submit{display:none}
@media(max-width:680px){.rs-page-header.container{padding-inline:24px}.hero-copy p:has(>.button){gap:10px 18px}}
@media(max-width:380px){.rs-page-header.container{padding-inline:20px}}

.rs-mobile-panel{position:fixed;inset:0 0 0 auto;width:min(420px,100%);z-index:60;overflow-y:auto;overscroll-behavior:contain;padding:24px;background:var(--rs-bg)}
.admin-bar .rs-mobile-panel{top:32px}
.rs-mobile-close{margin:0 0 12px -10px}
.rs-product-page{padding-block:32px 80px}
@media(max-width:782px){.admin-bar .rs-mobile-panel{top:46px}}
@media(max-width:680px){.rs-product-page{padding-block:24px 56px}}

.rs-page-content.container{padding-inline:24px}
.rs-page-content.container.full-width-content,.rs-page-content.container.commerce-content{padding-inline:32px}
.rs-contact-form input:not([type]),.rs-contact-form input[type=text]{display:block;width:100%;min-height:48px;margin-top:6px}
@media(max-width:680px){.rs-page-content.container.full-width-content,.rs-page-content.container.commerce-content{padding-inline:24px}}

.rs-page-content a.button,.rs-page-content a.wp-element-button,.rs-article-body a.button{color:var(--rs-surface)}
.rs-page-content a.button.secondary{color:var(--rs-accent)}
.text-link:has(svg)::after{content:none}

/* Relevant companions appear only after a successful add to the bag. */
body.rs-recommend-open{overflow:hidden}
.rs-recommend-dialog{width:min(620px,calc(100% - 32px));max-height:calc(100dvh - 32px);margin:auto;padding:24px;border:1px solid var(--rs-line);border-radius:12px;background:var(--rs-surface);color:var(--rs-ink);overscroll-behavior:contain;overflow-y:auto}
.rs-recommend-dialog::backdrop{background:rgba(32,41,35,.45)}
.rs-recommend-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}
.rs-recommend-success{display:flex;align-items:center;gap:8px;color:var(--rs-accent);font-size:14px;font-weight:600;margin:0}
.rs-recommend-added{display:flex;align-items:center;gap:12px;padding-bottom:20px;margin-bottom:24px;border-bottom:1px solid var(--rs-line)}
.rs-recommend-added>img{width:52px;height:52px;object-fit:contain;flex:none}
.rs-recommend-added>p{font-size:13px;line-height:1.5;margin:0}
.rs-recommend-added span{display:block;font-size:12px;color:var(--rs-muted);margin-top:4px}
.rs-recommend-dialog h2{font-size:26px;margin-bottom:8px;letter-spacing:-.025em}
#rs-recommend-description{font-size:14px;color:var(--rs-muted);margin-bottom:16px}
.rs-recommend-products{display:grid;gap:16px}
.rs-recommend-product{display:grid;grid-template-columns:88px minmax(0,1fr);gap:16px;align-items:center;padding:16px 0;border-top:1px solid var(--rs-line)}
.rs-recommend-image{display:block;background:var(--rs-surface)}
.rs-recommend-image img{display:block;width:88px;height:88px;object-fit:contain}
.rs-recommend-product h3{font-family:var(--rs-body);font-size:14px;font-weight:500;line-height:1.5;letter-spacing:0;margin:0 0 4px}
.rs-recommend-product h3 a{text-decoration:none}
.rs-recommend-product h3 a:hover{text-decoration:underline}
.rs-recommend-price{font-size:15px;font-weight:600;color:var(--rs-accent);margin:0}
.rs-recommend-product .text-link{font-size:13px;min-height:44px}
.rs-recommend-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px;border-top:1px solid var(--rs-line);padding-top:20px;margin-top:8px}
@media(max-width:480px){
  .rs-recommend-dialog{width:calc(100% - 24px);max-height:calc(100dvh - 24px);padding:16px}
  .rs-recommend-added{padding-bottom:16px;margin-bottom:20px}
  .rs-recommend-product{grid-template-columns:72px minmax(0,1fr);gap:12px;padding:12px 0}
  .rs-recommend-image img{width:72px;height:72px}
  .rs-recommend-dialog h2{font-size:24px}
  .rs-recommend-actions{gap:8px;padding-top:16px}
  .rs-recommend-actions .button{padding:12px 8px;font-size:13px}
}

/* Keep text inputs readable without focus zoom on small phones. */
@media(max-width:680px){
  input:not([type=checkbox]):not([type=radio]):not([type=submit]):not([type=button]),select,textarea,
  .woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,
  .wc-block-components-text-input input,.wc-block-components-combobox input.components-combobox-control__input,
  .wc-block-components-quantity-selector input.wc-block-components-quantity-selector__input{font-size:16px}
  .wc-block-components-quantity-selector .wc-block-components-quantity-selector__button{min-width:44px}
}

.rs-recommend-actions button.button.secondary{background:var(--rs-surface);color:var(--rs-accent);border-color:var(--rs-accent)}
.rs-recommend-actions button.button.secondary:hover{background:var(--rs-soft);color:var(--rs-accent)}
