:root {
--os-bg: #1d2e20;
--os-bg-soft: #2c4530;
--os-bg-softer: #324d36;
--os-text: #f2f1ef;
--os-text-muted: #c2c9bf;
--os-text-dim: #93a08f;
--os-accent: #b85c2c;
--os-accent-hover: #cf6d39;
--os-accent-dark: #9c4a20;
--os-border: rgba(242,241,239,0.10);
--os-radius: 14px;
--os-radius-sm: 8px;
--os-maxw: 1120px;
--os-serif: 'Cormorant Garamond', Georgia, 'Times New Roman', serif;
--os-sans: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
}
html, body {
background-color: var(--os-bg) !important;
color: var(--os-text);
font-family: var(--os-sans);
font-size: 17px;
line-height: 1.65;
margin: 0;
padding: 0;
-webkit-font-smoothing: antialiased;
text-rendering: optimizeLegibility;
}
.os-wrap, .os-page { background-color: var(--os-bg); }
img { max-width: 100%; height: auto; display: block; }
a { color: var(--os-text); text-decoration: none; }
a:hover { color: #ffffff; }
.os-container {
max-width: var(--os-maxw);
margin: 0 auto;
padding: 0 28px;
box-sizing: border-box;
}
h1,h2,h3,h4 { font-family: var(--os-serif); font-weight: 600; letter-spacing: 0.2px; line-height: 1.15; }
.os-header {
background-color: var(--os-bg);
border-bottom: 1px solid var(--os-border);
position: sticky;
top: 0;
z-index: 100;
backdrop-filter: blur(6px);
}
.os-header-inner {
display: flex;
align-items: center;
justify-content: space-between;
height: 74px;
gap: 24px;
}
.os-logo {
font-family: var(--os-serif);
font-size: 27px;
font-weight: 700;
letter-spacing: 0.5px;
color: var(--os-text);
white-space: nowrap;
display: flex;
align-items: center;
gap: 10px;
}
.os-logo .os-leaf { color: var(--os-accent); font-size: 22px; }
.os-logo-img { width: 30px; height: 30px; flex: none; border-radius: 50%; object-fit: cover; display: block; }
.os-nav { display: flex; align-items: center; gap: 8px; }
.os-nav a {
font-family: var(--os-sans);
font-size: 15px;
font-weight: 500;
color: var(--os-text-muted);
padding: 9px 16px;
border-radius: 999px;
transition: color .2s ease, background-color .2s ease;
}
.os-nav a:hover { color: var(--os-text); background-color: var(--os-bg-soft); }
.os-nav a.os-active { color: var(--os-text); }
.os-account {
display: inline-flex;
align-items: center;
justify-content: center;
width: 42px; height: 42px;
border-radius: 999px;
border: 1px solid var(--os-border);
color: var(--os-text-muted);
transition: color .2s ease, background-color .2s ease, border-color .2s ease, box-shadow .2s ease, transform .2s ease, opacity .2s ease;
margin-left: 6px;
}
.os-account:hover { border-color: var(--os-accent); color: var(--os-text); background: var(--os-bg-soft); }
.os-account svg { width: 20px; height: 20px; }
.os-menu-toggle { display: none; background: none; border: 0; color: var(--os-text); cursor: pointer; }
.os-btn {
display: inline-flex;
align-items: center;
gap: 8px;
background-color: var(--os-accent);
color: #fff !important;
font-family: var(--os-sans);
font-size: 14px;
font-weight: 600;
letter-spacing: 0.3px;
padding: 10px 20px;
border-radius: 999px;
border: 0;
cursor: pointer;
transition: background-color .2s ease, transform .2s ease, box-shadow .2s ease;
white-space: nowrap;
}
.os-btn:hover { background-color: var(--os-accent-hover); transform: translateY(-1px); box-shadow: 0 6px 18px rgba(184,92,44,0.28); }
.os-btn:active { background-color: var(--os-accent-dark); transform: translateY(0); }
.os-btn-ghost {
background: transparent;
border: 1px solid var(--os-accent);
color: var(--os-accent) !important;
}
.os-btn-ghost:hover { background: var(--os-accent); color: #fff !important; }
.os-hero {
text-align: center;
padding: 27px 0 22px;
}
.os-hero h1 {
font-size: clamp(28px, 4.5vw, 44px);
margin: 0 0 18px;
color: var(--os-text);
}
.os-hero p {
font-size: 19px;
color: var(--os-text-muted);
max-width: 620px;
margin: 0 auto 28px;
}
.os-section-head {
display: flex;
align-items: baseline;
justify-content: space-between;
margin: 44px 0 26px;
flex-wrap: wrap;
gap: 12px;
}
.os-section-head h2 { font-size: 34px; margin: 0; color: var(--os-text); }
.os-section-head-center { justify-content: center; text-align: center; margin-top: 5px; }
.os-viewall-wrap { display: flex; justify-content: center; margin: 20px 0 8px; }
.os-btn-lg { font-size: 16px; padding: 15px 34px; }
.os-section-head .os-link {
color: var(--os-accent);
font-family: var(--os-sans);
font-size: 15px;
font-weight: 600;
}
.os-postlist { display: flex; flex-direction: column; gap: 10px; }
.os-postcard {
display: grid;
grid-template-columns: 300px 1fr;
gap: 28px;
background-color: var(--os-bg-soft);
border-radius: var(--os-radius);
padding: 8px;
transition: transform .25s ease, background-color .25s ease, box-shadow .25s ease;
align-items: stretch;
}
.os-postcard:hover {
transform: translateY(-4px);
background-color: var(--os-bg-softer);
box-shadow: 0 14px 34px rgba(0,0,0,0.28);
}
.os-postcard-thumb {
border-radius: var(--os-radius-sm);
overflow: hidden;
aspect-ratio: 16 / 9;
background: #1d2e20;
}
.os-postcard-thumb img { width: 100%; height: 100%; object-fit: cover; transition: transform .4s ease; }
.os-postcard:hover .os-postcard-thumb img { transform: scale(1.04); }
.os-postcard-body { display: flex; flex-direction: column; justify-content: center; min-width: 0; }
.os-post-date {
font-family: var(--os-sans);
font-size: 12px;
font-weight: 600;
letter-spacing: 1.5px;
text-transform: uppercase;
color: var(--os-text-dim);
margin-bottom: 3px;
}
.os-post-title {
font-size: 23px;
margin: 0 0 4px;
color: var(--os-text);
line-height: 1.2;
}
.os-post-title a:hover { color: var(--os-accent-hover); }
.os-post-snippet-wrap { position: relative; }
.os-post-snippet {
font-family: var(--os-sans);
font-size: 15px;
line-height: 1.5;
color: var(--os-text-muted);
margin: 0;
overflow: hidden;
display: -webkit-box;
-webkit-line-clamp: 3;
line-clamp: 3;
-webkit-box-orient: vertical;
}
.os-postcard { position: relative; cursor: pointer; }
.os-postcard .os-post-foot { display: none; }
.os-postcard .os-post-title a::after { content: ""; position: absolute; inset: 0; z-index: 2; }
.os-blog-head { padding: 28px 0 4px; text-align: center; }
.os-blog-head h1 { font-size: clamp(30px, 4vw, 44px); margin: 0 0 10px; }
.os-blog-head p { color: var(--os-text-muted); font-size: 18px; margin: 0; }
.os-controls {
display: flex;
align-items: center;
justify-content: space-between;
gap: 16px;
margin: 30px 0 28px;
flex-wrap: wrap;
}
.os-search {
flex: 1 1 340px;
display: flex;
align-items: center;
gap: 10px;
background: var(--os-bg-soft);
border: 1px solid var(--os-border);
border-radius: 999px;
padding: 11px 18px;
transition: border-color .2s ease;
}
.os-search:focus-within { border-color: var(--os-accent); }
.os-search svg { width: 18px; height: 18px; color: var(--os-text-dim); flex: none; }
.os-search input {
background: transparent;
border: 0;
outline: 0;
color: var(--os-text);
font-family: var(--os-sans);
font-size: 15px;
width: 100%;
}
.os-search input::placeholder { color: var(--os-text-dim); }
.os-sort { display: flex; align-items: center; gap: 10px; }
.os-sort label { font-family: var(--os-sans); font-size: 14px; color: var(--os-text-muted); }
.os-sort select {
background: var(--os-bg-soft);
color: var(--os-text);
border: 1px solid var(--os-border);
border-radius: 999px;
padding: 10px 38px 10px 16px;
font-family: var(--os-sans);
font-size: 14px;
cursor: pointer;
appearance: none;
background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23c2c9bf' stroke-width='2.5'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");
background-repeat: no-repeat;
background-position: right 14px center;
}
.os-sort select:focus { outline: 0; border-color: var(--os-accent); }
.os-noresults { text-align: center; color: var(--os-text-muted); padding: 60px 0; font-size: 17px; }
.os-pagination {
display: flex;
align-items: center;
justify-content: center;
gap: 8px;
margin: 44px 0 20px;
flex-wrap: wrap;
}
.os-pagination button, .os-pagination a {
min-width: 42px;
height: 42px;
padding: 0 14px;
display: inline-flex;
align-items: center;
justify-content: center;
border-radius: 999px;
background: var(--os-bg-soft);
color: var(--os-text-muted);
border: 1px solid var(--os-border);
font-family: var(--os-sans);
font-size: 14px;
font-weight: 600;
cursor: pointer;
transition: color .2s ease, background-color .2s ease, border-color .2s ease, box-shadow .2s ease, transform .2s ease, opacity .2s ease;
}
.os-pagination button:hover:not(:disabled), .os-pagination a:hover { background: var(--os-bg-softer); color: var(--os-text); }
.os-pagination .os-page-active { background: var(--os-accent); color: #fff; border-color: var(--os-accent); }
.os-pagination button:disabled { opacity: 0.4; cursor: not-allowed; }
.os-footer {
background: #1d2e20;
margin-top: 80px;
padding: 32px 0;
border-top: 1px solid var(--os-border);
}
.os-footer-grid {
display: grid;
grid-template-columns: 1.6fr 1fr;
gap: 56px;
align-items: start;
}
.os-footer h3 { font-size: 26px; margin: 0 0 14px; color: var(--os-text); }
.os-footer h4 {
font-family: var(--os-sans);
font-size: 13px;
font-weight: 700;
letter-spacing: 1.5px;
text-transform: uppercase;
color: var(--os-text-dim);
margin: 0 0 16px;
}
.os-footer p, .os-footer a { color: var(--os-text-muted); font-family: var(--os-sans); font-size: 15px; }
.os-footer ul { list-style: none; padding: 0; margin: 0; }
.os-footer li { margin-bottom: 10px; }
.os-footer a:hover { color: var(--os-accent-hover); }
.os-contact-row { display: flex; align-items: center; gap: 10px; margin-bottom: 12px; }
.os-contact-row svg { width: 18px; height: 18px; color: var(--os-accent); flex: none; }
.os-social { display: flex; gap: 12px; margin-top: 4px; }
.os-social a {
width: 40px; height: 40px;
display: inline-flex; align-items: center; justify-content: center;
border-radius: 999px;
background: var(--os-bg-soft);
border: 1px solid var(--os-border);
transition: color .2s ease, background-color .2s ease, border-color .2s ease, box-shadow .2s ease, transform .2s ease, opacity .2s ease;
}
.os-social a:hover { background: var(--os-accent); transform: translateY(-2px); }
.os-social svg { width: 18px; height: 18px; color: var(--os-text); }
@media (max-width: 860px) {
.os-nav { display: none; }
.os-menu-toggle { display: inline-flex; align-items: center; justify-content: center; min-width: 44px; min-height: 44px; padding: 9px; }
.os-nav.os-open {
display: flex;
position: absolute;
top: 74px; left: 0; right: 0;
flex-direction: column;
background: var(--os-bg);
border-bottom: 1px solid var(--os-border);
padding: 14px 28px 22px;
gap: 4px;
}
.os-nav.os-open a { width: 100%; }
.os-postcard { grid-template-columns: 1fr; }
.os-postcard-thumb { aspect-ratio: 16 / 9; }
.os-footer-grid { grid-template-columns: 1fr; gap: 32px; }
.os-post-foot { justify-content: flex-start; }
}
@media (max-width: 520px) {
.os-controls { flex-direction: column; align-items: stretch; }
.os-sort { justify-content: space-between; }
}
.os-article { padding: 56px 0 20px; }
.os-article-head { max-width: 760px; margin: 0 auto 32px; text-align: center; }
.os-article-cat {
font-family: var(--os-sans);
font-size: 12px; font-weight: 600;
letter-spacing: 1.5px; text-transform: uppercase;
color: var(--os-accent);
margin-bottom: 16px;
}
.os-article-title {
font-size: clamp(34px, 5vw, 56px);
line-height: 1.12;
margin: 0 0 18px;
color: var(--os-text);
}
.os-article-meta {
font-family: var(--os-sans);
font-size: 14px;
color: var(--os-text-dim);
display: flex; align-items: center; justify-content: center; gap: 10px;
}
.os-article-meta .os-dot { opacity: .5; }
.os-article-hero {
max-width: 960px;
margin: 0 auto 44px;
border-radius: var(--os-radius);
overflow: hidden;
aspect-ratio: 16 / 8;
background: #1d2e20;
}
.os-article-hero img { width: 100%; height: 100%; object-fit: cover; }
.os-article-body {
max-width: 720px;
margin: 0 auto;
font-family: var(--os-sans);
font-size: 18px;
line-height: 1.8;
color: var(--os-text);
overflow-wrap: break-word;
word-break: break-word;
}
.os-article-body p { margin: 0 0 1.4em; color: var(--os-text); }
.os-article-body a { color: var(--os-accent-hover); text-decoration: underline; }
.os-article-body h2, .os-article-body h3 { color: var(--os-text); margin: 1.6em 0 .6em; }
.os-article-body h2 { font-size: 32px; }
.os-article-body h3 { font-size: 25px; }
.os-article-body ul, .os-article-body ol { margin: 0 0 1.4em; padding-left: 1.4em; color: var(--os-text); }
.os-article-body li { margin-bottom: .5em; }
.os-article-body blockquote {
border-left: 3px solid var(--os-accent);
margin: 1.6em 0;
padding: .4em 0 .4em 1.4em;
font-family: var(--os-serif);
font-size: 23px;
font-style: italic;
color: var(--os-text-muted);
}
.os-article-body img { border-radius: var(--os-radius-sm); margin: 1.6em 0; }
.os-article-body code {
background: var(--os-bg-soft);
padding: 2px 7px; border-radius: 5px; font-size: .9em;
}
.os-article-foot {
max-width: 720px;
margin: 48px auto 0;
padding-top: 28px;
border-top: 1px solid var(--os-border);
display: flex; align-items: center; justify-content: space-between; gap: 16px; flex-wrap: wrap;
}
.os-article-nav { display: flex; gap: 12px; flex-wrap: wrap; }
.os-article-nav a {
font-family: var(--os-sans); font-size: 14px; font-weight: 600;
color: var(--os-text-muted);
padding: 9px 16px; border-radius: 999px;
border: 1px solid var(--os-border);
transition: color .2s ease, background-color .2s ease, border-color .2s ease, box-shadow .2s ease, transform .2s ease, opacity .2s ease;
}
.os-article-nav a:hover { color: var(--os-text); border-color: var(--os-accent); background: var(--os-bg-soft); }
.os-comments {
max-width: 720px; margin: 56px auto 0;
font-family: var(--os-sans);
}
.os-comments .comment-respond,
.os-comments .comments-title { color: var(--os-text); }
.os-comments input[type=text], .os-comments input[type=email],
.os-comments input[type=url], .os-comments textarea {
width: 100%; background: var(--os-bg-soft); border: 1px solid var(--os-border);
color: var(--os-text); border-radius: var(--os-radius-sm); padding: 12px 14px;
font-family: var(--os-sans); margin-bottom: 12px; box-sizing: border-box;
}
.os-comments .comment-list { list-style: none; padding: 0; }
.os-comments .comment-body { background: var(--os-bg-soft); border-radius: var(--os-radius-sm); padding: 16px 18px; margin-bottom: 14px; }
.os-comments a { color: var(--os-accent-hover); }
.os-page-main { min-height: 40vh; padding-top: 8px; }
.os-wrap {
display: flex;
flex-direction: column;
min-height: 100vh;
}
.os-wrap > .os-page-main,
.os-wrap > main {
flex: 1 0 auto;
}
.os-wrap > .os-footer { flex-shrink: 0; }
.os-builder-content { padding-top: 0; }
.os-woo { padding-top: 48px; padding-bottom: 48px; }
.os-woo, .os-woo p, .os-woo h1, .os-woo h2, .os-woo h3, .os-woo li, .os-woo td, .os-woo th, .os-woo label, .os-woo a { color: var(--os-text); }
.os-woo h1.page-title, .os-woo .woocommerce-products-header__title {
font-family: var(--os-serif); font-size: clamp(34px,5vw,52px); margin: 0 0 28px; text-align: center;
}
.os-woo a { color: var(--os-text); }
.os-woo .woocommerce-message, .os-woo .woocommerce-info, .os-woo .woocommerce-notices-wrapper .woocommerce-message,
.os-woo .woocommerce-info {
background: var(--os-bg-soft); border-top: 3px solid var(--os-accent); color: var(--os-text);
border-radius: var(--os-radius-sm);
}
.os-woo .woocommerce-info::before, .os-woo .woocommerce-message::before { color: var(--os-accent); }
.os-woo ul.products { display: grid; grid-template-columns: repeat(auto-fill,minmax(220px,1fr)); gap: 28px; list-style: none; margin: 0; padding: 0; }
.os-woo ul.products li.product { background: var(--os-bg-soft); border-radius: var(--os-radius); padding: 16px; text-align: center; transition: transform .25s ease, background-color .25s ease; }
.os-woo ul.products li.product:hover { transform: translateY(-4px); background: var(--os-bg-softer); }
.os-woo ul.products li.product img { border-radius: var(--os-radius-sm); margin-bottom: 14px; }
.os-woo ul.products li.product .woocommerce-loop-product__title { font-family: var(--os-serif); font-size: 20px; padding: 0 0 6px; }
.os-woo ul.products li.product .price { color: var(--os-text-muted); font-family: var(--os-sans); }
.os-woo .price del { color: var(--os-text-dim); }
.os-woo .price ins { color: var(--os-accent-hover); text-decoration: none; }
.os-woo .button, .os-woo a.button, .os-woo button.button, .os-woo input.button,
.os-woo .wc-block-components-button, .os-woo #place_order {
background: var(--os-accent) !important; color: #fff !important;
border: 0 !important; border-radius: 999px !important; padding: 12px 24px !important;
font-family: var(--os-sans) !important; font-weight: 600 !important; transition: background-color .2s ease, transform .2s ease;
}
.os-woo .button:hover, .os-woo a.button:hover, .os-woo button.button:hover, .os-woo input.button:hover { background: var(--os-accent-hover) !important; transform: translateY(-1px); }
.os-woo input[type=text], .os-woo input[type=email], .os-woo input[type=tel], .os-woo input[type=password],
.os-woo input[type=number], .os-woo textarea, .os-woo select, .os-woo .select2-container .select2-selection {
background: var(--os-bg-soft) !important; border: 1px solid var(--os-border) !important; color: var(--os-text) !important;
border-radius: var(--os-radius-sm) !important;
}
.os-woo table, .os-woo .shop_table { background: var(--os-bg-soft); border-radius: var(--os-radius); border-color: var(--os-border) !important; }
.os-woo .shop_table th, .os-woo .shop_table td { border-color: var(--os-border) !important; }
.os-builder-content a { color: var(--os-accent-hover); }
.os-footer-brand h3 { margin-bottom: 20px; }
.os-footer-brand .os-social { margin-top: 0; }
.os-footer-row {
display: grid;
grid-template-columns: 1fr auto 1fr;
align-items: center;
gap: 24px;
}
.os-footer-row .os-footer-contact { justify-self: start; }
.os-footer-row .os-footer-copy { justify-self: center; text-align: center; }
.os-footer-row .os-social { justify-self: end; margin-top: 0; }
.os-footer-copy {
color: var(--os-text-dim);
font-family: var(--os-sans);
font-size: 13px;
}
.os-footer-copy > div { line-height: 1.9; }
.os-footer-contact {
display: flex;
align-items: center;
gap: 10px;
flex-wrap: wrap;
line-height: 1;
}
.os-footer-contact .os-footer-label,
.os-footer .os-footer-contact h4 {
margin: 0;
line-height: 1;
}
.os-footer-contact .os-footer-sep { line-height: 1; }
.os-footer-contact .os-footer-email,
.os-footer-contact .os-footer-email a { line-height: 1; }
.os-footer-row .os-social { display: flex; gap: 12px; align-items: center; }
.os-footer-sep {
color: var(--os-text-dim);
font-family: var(--os-sans);
font-size: 15px;
}
.os-footer-label {
font-family: var(--os-sans);
font-size: 13px; font-weight: 700;
letter-spacing: 1.5px; text-transform: uppercase;
color: var(--os-text-dim);
margin: 0;
}
.os-footer-email a {
font-family: var(--os-sans);
font-size: 13px;
color: var(--os-text-dim);
}
.os-footer-email a:hover { color: var(--os-accent-hover); }
@media (max-width: 640px) {
.os-footer-row {
grid-template-columns: 1fr;
justify-items: center;
text-align: center;
gap: 18px;
}
.os-footer-row .os-footer-contact { justify-self: center; justify-content: center; }
.os-footer-row .os-footer-copy { justify-self: center; }
.os-footer-row .os-social { justify-self: center; }
}
.os-mm-controls { justify-content: center; }
.os-mm-controls .os-search { flex: 0 1 480px; }
.os-az {
display: flex; flex-wrap: wrap; gap: 6px; justify-content: center;
margin: 4px 0 40px; padding-bottom: 24px;
border-bottom: 1px solid var(--os-border);
}
.os-az-link {
width: 36px; height: 36px;
display: inline-flex; align-items: center; justify-content: center;
border-radius: 999px;
font-family: var(--os-sans); font-size: 14px; font-weight: 600;
color: var(--os-text-muted);
transition: color .2s ease, background-color .2s ease, border-color .2s ease, box-shadow .2s ease, transform .2s ease, opacity .2s ease;
}
a.os-az-link:hover { background: var(--os-accent); color: #fff; }
.os-az-disabled { color: var(--os-text-dim); opacity: .35; }
.os-az-dim { opacity: .35; }
.os-letter-group { scroll-margin-top: 100px; margin-bottom: 48px; }
.os-letter-head {
font-family: var(--os-serif);
font-size: 40px; font-weight: 700;
color: var(--os-accent);
border-bottom: 1px solid var(--os-border);
padding-bottom: 10px; margin-bottom: 24px;
}
.os-plant-grid {
display: grid;
grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
gap: 24px;
}
.os-plant-card {
display: flex; flex-direction: column;
background: var(--os-bg-soft);
border-radius: var(--os-radius);
overflow: hidden;
transition: transform .25s ease, background-color .25s ease, box-shadow .25s ease;
color: var(--os-text) !important;
}
.os-plant-card:hover {
transform: translateY(-4px);
background: var(--os-bg-softer);
box-shadow: 0 14px 34px rgba(0,0,0,0.28);
}
.os-plant-thumb { aspect-ratio: 4 / 3; overflow: hidden; background: #1d2e20; }
.os-plant-thumb img { width: 100%; height: 100%; object-fit: cover; transition: transform .4s ease; }
.os-plant-card:hover .os-plant-thumb img { transform: scale(1.05); }
.os-plant-body { padding: 18px 20px 22px; }
.os-plant-name {
font-family: var(--os-serif); font-size: 23px; font-weight: 600;
color: var(--os-text); line-height: 1.2; margin-bottom: 2px;
}
.os-plant-latin {
font-family: var(--os-sans); font-size: 13px; font-style: italic;
color: var(--os-accent-hover); margin-bottom: 10px;
}
.os-plant-snippet {
font-family: var(--os-sans); font-size: 14.5px; line-height: 1.55;
color: var(--os-text-muted);
}
@media (max-width: 520px){
.os-plant-grid { grid-template-columns: 1fr 1fr; gap: 14px; }
.os-plant-name { font-size: 19px; }
}
.wp-block-woocommerce-coming-soon,
.wp-block-woocommerce-coming-soon .wp-block-group,
.wp-block-woocommerce-coming-soon .wp-block-group * {
background: transparent !important;
}
.wp-block-woocommerce-coming-soon {
color: var(--os-text);
padding: 0 16px;
}
.wp-block-woocommerce-coming-soon h1.wp-block-heading {
font-family: var(--os-serif) !important;
color: var(--os-text);
font-size: clamp(2rem, 5vw, 3.4rem);
font-weight: 600;
letter-spacing: 0.3px;
margin: 0;
}
.wp-block-woocommerce-coming-soon p {
font-family: var(--os-sans) !important;
color: var(--os-text-muted);
font-size: 1.05rem;
max-width: 560px;
margin: 0 auto;
line-height: 1.6;
}
body:not(.logged-in) #coming-soon-footer-banner { display: none !important; }
.os-donate { margin: 142px 0 8px; }
.os-donate-inner {
display: flex;
flex-direction: column;
align-items: center;
text-align: center;
gap: 16px;
background-color: var(--os-bg-soft);
border-radius: var(--os-radius);
padding: 30px 28px;
}
.os-donate-text {
margin: 0;
font-family: var(--os-sans);
font-size: 17px;
color: var(--os-text-muted);
max-width: 540px;
}
@media (max-width: 600px) {
.os-donate-inner { padding: 24px 18px; }
.os-donate-text { font-size: 15px; }
}
.os-donate .os-btn { min-width: 175px; justify-content: center; }
.os-map-preview { margin: 6px 0 0; padding-bottom: 8px; }
.os-map-preview-title {
text-align: center;
font-size: 34px;
color: var(--os-text);
margin: 0 0 12px;
}
.os-map-preview-wrap { max-width: 980px; margin: 0 auto; }
.os-map-preview-map {
height: clamp(440px, 70vh, 640px);
border-radius: var(--os-radius);
border: 1px solid var(--os-border);
overflow: hidden;
background: #2c4530;
z-index: 0;
}
.os-map-preview-map .leaflet-container { font-family: var(--os-sans); background: #aadaff; }
.os-map-preview .leaflet-control-layers { background: rgba(30,50,33,0.97) !important; border: 1px solid rgba(242,241,239,0.18) !important; border-radius: 10px !important; box-shadow: 0 4px 16px rgba(0,0,0,0.4) !important; }
.os-map-preview .leaflet-control-layers-toggle { background-color: rgba(30,50,33,0.97) !important; }
.os-map-preview .leaflet-control-layers-expanded { padding: 8px 14px 10px !important; }
.os-map-preview .leaflet-control-layers label { font-family: var(--os-sans) !important; font-size: 13px !important; color: var(--os-text) !important; display: flex !important; align-items: center !important; gap: 7px !important; cursor: pointer !important; }
.os-map-preview .leaflet-control-layers label:hover { color: #fff !important; }
.os-map-preview .leaflet-control-layers input[type=radio] { accent-color: var(--os-accent); margin: 0; }
.os-map-preview .leaflet-control-layers-separator { border-top: 1px solid rgba(242,241,239,0.12) !important; }
.os-map-preview-footer { display: flex; justify-content: center; margin-top: 14px; }
.os-map-preview-footer .os-btn { max-width: 100%; white-space: normal; text-align: center; line-height: 1.3; }
@media (max-width: 600px) {
.os-map-preview-footer { padding: 0 16px; }
.os-map-preview-footer .os-btn { min-width: 0; }
.os-map-preview-footer .os-btn-lg { font-size: 14px; padding: 13px 22px; }
}
.os-tools-preview { margin: 40px 0 0; }
.os-hub-grid { display: flex; flex-wrap: wrap; justify-content: center; gap: 22px; max-width: 980px; margin: 0 auto; }
.os-hub-grid--two { max-width: 980px; }
.os-hub-grid--two .os-hub-card { width: auto; flex: 1 1 0; aspect-ratio: 1 / 1; justify-content: center; }
.os-hub-card { position: relative; display: flex; flex-direction: column; align-items: center; text-align: center; width: 320px; min-height: 250px; padding: 34px 28px 30px; box-sizing: border-box; background: rgba(44,69,48,0.55); border: 1px solid var(--os-border); border-radius: var(--os-radius); text-decoration: none; color: var(--os-text); -webkit-backdrop-filter: blur(4px); backdrop-filter: blur(4px); transition: transform .18s ease, background .18s ease, border-color .18s ease, box-shadow .18s ease; }
@media (hover: hover) and (pointer: fine) { a.os-hub-card:hover { transform: translateY(-4px); background: rgba(50,77,54,0.8); border-color: rgba(184,92,44,0.55); box-shadow: 0 14px 34px rgba(0,0,0,0.28); } }
.os-hub-icon { display: inline-flex; align-items: center; justify-content: center; width: 64px; height: 64px; margin-bottom: 18px; border-radius: 50%; background: rgba(184,92,44,0.16); color: var(--os-accent); }
.os-hub-icon svg { width: 30px; height: 30px; }
.os-hub-card-title { font-family: var(--os-serif); font-size: 23px; font-weight: 600; line-height: 1.2; margin-bottom: 12px; color: var(--os-text); }
.os-hub-card-desc { font-family: var(--os-sans); font-size: 14.5px; line-height: 1.55; color: var(--os-text-muted); margin-bottom: 20px; }
.os-hub-card-go { margin-top: auto; font-family: var(--os-sans); font-size: 15px; font-weight: 600; color: #ee9f63; }
@media (hover: hover) and (pointer: fine) { a.os-hub-card:hover .os-hub-card-go { color: var(--os-accent-hover); } }
html.os-hover-off a.os-hub-card:hover { transform: none; background: rgba(44,69,48,0.55); border-color: var(--os-border); box-shadow: none; }
html.os-hover-off a.os-hub-card:hover .os-hub-card-go { color: #ee9f63; }
@media (max-width: 680px) { .os-hub-card, .os-hub-grid--two .os-hub-card { width: 100%; flex: 0 1 auto; max-width: 340px; min-height: 0; } }
.osm-pop { font-family: var(--os-sans); min-width: 160px; }
.osm-pop-photo { display: block; margin: 0 0 9px; }
.osm-pop-photo img { width: 100%; max-height: 130px; object-fit: cover; border-radius: 8px; display: block; }
.osm-pop-title { font-family: var(--os-serif); font-size: 16px; font-weight: 700; color: #20331f; line-height: 1.25; }
.osm-pop-sci { font-style: italic; font-size: 12px; color: #5a6b58; margin-top: 1px; }
.osm-pop-meta { font-size: 12px; color: #6b7568; margin-top: 5px; }
.osm-pin { background: none; border: 0; }
.os-news {
max-width: 460px;
margin: 0 auto 36px;
padding-bottom: 30px;
text-align: center;
border-bottom: 1px solid var(--os-border);
}
.os-news-label {
font-family: var(--os-serif);
font-size: 19px;
color: var(--os-text);
margin: 0 0 14px;
}
.os-news-form {
display: flex;
gap: 8px;
justify-content: center;
flex-wrap: wrap;
}
.os-news-input {
flex: 1 1 240px;
min-width: 0;
padding: 11px 14px;
border: 1px solid var(--os-border);
border-radius: var(--os-radius-sm);
background: var(--os-bg-soft);
color: var(--os-text);
font-family: var(--os-sans);
font-size: 15px;
}
.os-news-input::placeholder { color: var(--os-text-dim); }
.os-news-input:focus {
outline: none;
border-color: var(--os-accent);
}
.os-news-btn {
padding: 11px 20px;
border: none;
border-radius: var(--os-radius-sm);
background: var(--os-accent);
color: #fff;
font-family: var(--os-sans);
font-size: 15px;
font-weight: 600;
cursor: pointer;
transition: background .15s ease;
white-space: nowrap;
}
.os-news-btn:hover { background: var(--os-accent-hover); }
.os-news-btn:active { background: var(--os-accent-dark); }
.os-news-btn:disabled { opacity: .6; cursor: default; }
.os-news-hp {
position: absolute !important;
left: -9999px !important;
width: 1px;
height: 1px;
opacity: 0;
}
.os-news-msg {
font-family: var(--os-sans);
font-size: 14px;
margin: 12px 0 0;
min-height: 1.2em;
}
.os-news-ok { color: var(--os-text-muted); }
.os-news-err { color: var(--os-accent-hover); }
.page-id-187 .os-article { padding: 80px 0 96px; }
.page-id-187 .os-article-head { margin-bottom: 8px; }
.page-id-187 .os-article-title { font-size: clamp(30px, 4.2vw, 46px); }
.os-confirm {
max-width: 600px;
margin: 0 auto;
text-align: center;
}
.os-confirm-check {
width: 60px;
height: 60px;
margin: 0 auto 28px;
color: var(--os-accent);
}
.os-confirm-check svg { width: 100%; height: 100%; display: block; }
.os-confirm-lead {
font-family: var(--os-serif);
font-size: 30px;
font-weight: 600;
color: var(--os-text);
margin: 0 0 22px;
line-height: 1.2;
}
.os-confirm .os-confirm-body {
font-family: var(--os-sans);
font-size: 16px;
line-height: 1.75;
color: var(--os-text-muted);
margin: 0 auto 14px;
max-width: 500px;
}
.os-confirm .os-confirm-body:last-of-type { margin-bottom: 0; }
.os-confirm-actions {
display: flex;
flex-direction: column;
align-items: center;
gap: 14px;
margin-top: 36px;
}
.os-confirm-actions .os-btn {
min-width: 280px;
justify-content: center;
text-decoration: none;
margin: 0;
}
a:visited { color: inherit; }
.os-rv-alink:visited { color: var(--os-accent-hover); }
.os-article-body .wp-block-image { margin: 2.2em auto; }
.os-article-body .wp-block-image img { width: 100%; height: auto; border-radius: var(--os-radius); display: block; }
.os-article-body figure { margin: 2.2em auto; }
.os-article-body figcaption, .os-article-body .wp-element-caption { margin-top: .6em; font-size: 14px; line-height: 1.5; color: #8a9a8c; text-align: center; font-style: italic; }
@media (max-width: 520px) {
.os-controls .os-search,
.os-mm-controls .os-search {
flex: 0 0 auto;
width: 100%;
box-sizing: border-box;
}
}
.os-search { position: relative; }
.os-search input { padding-right: 6px; }
.os-search-clear {
flex: none;
width: 22px; height: 22px;
display: none; align-items: center; justify-content: center;
border: 0; border-radius: 50%;
background: var(--os-bg-softer);
color: var(--os-text-muted);
font-size: 17px; line-height: 1; cursor: pointer;
transition: background .15s ease, color .15s ease;
}
.os-search-clear:hover { background: var(--os-accent); color: #fff; }
.os-suggest {
position: absolute;
top: calc(100% + 10px);
left: 0; right: 0;
background: var(--os-bg-soft);
border: 1px solid var(--os-border);
border-radius: 16px;
box-shadow: 0 16px 40px rgba(0,0,0,.35);
overflow: hidden;
z-index: 60;
display: none;
max-height: 70vh; overflow-y: auto;
}
.os-suggest.is-open { display: block; }
.os-suggest-head {
font-family: var(--os-sans);
font-size: 11px; letter-spacing: .09em; text-transform: uppercase;
color: var(--os-text-dim);
padding: 13px 16px 7px;
}
.os-suggest-item {
display: flex; align-items: center; gap: 12px;
padding: 9px 14px;
text-decoration: none;
transition: background .12s ease;
}
.os-suggest-item.is-active,
.os-suggest-item:hover { background: var(--os-bg-softer); }
.os-suggest-thumb {
width: 46px; height: 46px; flex: none;
border-radius: 10px; object-fit: cover; background: var(--os-bg);
}
.os-suggest-txt { min-width: 0; display: flex; flex-direction: column; }
.os-suggest-title {
font-family: var(--os-serif);
font-size: 16px; line-height: 1.25; color: var(--os-text);
white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
.os-suggest-date {
font-family: var(--os-sans);
font-size: 12px; color: var(--os-text-dim); margin-top: 2px;
}
.os-suggest-more {
display: block; width: 100%;
text-align: center;
font-family: var(--os-sans); font-size: 13px; font-weight: 500;
color: var(--os-accent);
padding: 12px; cursor: pointer;
border: 0; border-top: 1px solid var(--os-border);
background: transparent;
transition: color .15s ease;
}
.os-suggest-more:hover { color: var(--os-accent-hover); }
.os-suggest-empty {
font-family: var(--os-sans); font-size: 14px;
color: var(--os-text-muted); padding: 18px 16px; text-align: center;
}
.os-suggest mark,
.os-post-title mark {
background: transparent;
color: var(--os-accent);
font-weight: 700;
padding: 0;
}
.os-rv-searchwrap, .os-sp-searchbar, .os-hd-field, .os-hh-field { position: relative; }
ul.os-suggest { margin: 0; padding: 0; list-style: none; }
.os-suggest li { list-style: none; }
.os-suggest-item { cursor: pointer; }
.os-suggest-item.os-suggest-plain { padding: 11px 16px; }
.os-suggest-sub {
font-family: var(--os-serif);
font-style: italic;
font-size: 13px;
color: var(--os-text-dim);
margin-top: 1px;
white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
.os-suggest-title b { color: var(--os-accent); font-weight: 700; }
.os-suggest-item.is-active .os-suggest-sub,
.os-suggest-item:hover .os-suggest-sub { color: var(--os-text-muted); }
.os-suggest-txt { min-width: 0; }
.os-hd-fields .os-hd-input,
.os-hh-fields .os-hh-input {
border-radius: 999px;
padding: 13px 20px;
}
.os-hd-fields .os-hd-select {
border-radius: 999px;
padding: 13px 40px 13px 20px;
appearance: none;
-webkit-appearance: none;
background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23c2c9bf' stroke-width='2.5'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");
background-repeat: no-repeat;
background-position: right 16px center;
}
.os-kf-pager {
display: flex;
align-items: center;
justify-content: center;
gap: 8px;
flex-wrap: wrap;
margin: 44px 0 20px;
}
a.os-kf-pg {
min-width: 42px;
height: 42px;
padding: 0 18px;
display: inline-flex;
align-items: center;
justify-content: center;
border-radius: 999px;
background: var(--os-bg-soft);
color: var(--os-text-muted);
border: 1px solid var(--os-border);
font-family: var(--os-sans);
font-size: 14px;
font-weight: 600;
text-decoration: none;
transition: color .2s ease, background-color .2s ease, border-color .2s ease, box-shadow .2s ease, transform .2s ease, opacity .2s ease;
}
a.os-kf-pg:hover { background: var(--os-bg-softer); color: var(--os-text); text-decoration: none; }
.os-rv-searchbar .os-rv-input,
.os-sp-searchbar .os-sp-input {
background-color: var(--os-bg-soft);
border: 1px solid var(--os-border);
color: var(--os-text);
border-radius: 999px;
font-family: var(--os-sans);
font-size: 17px;
box-sizing: border-box;
transition: border-color .15s ease;
}
.os-rv-searchbar .os-rv-input { padding: 15px 46px 15px 54px; }
.os-sp-searchbar .os-sp-input { padding: 15px 46px 15px 48px; }
.os-rv-searchbar .os-rv-input:focus,
.os-sp-searchbar .os-sp-input:focus { outline: 0; border-color: var(--os-accent); color: var(--os-text); }
.os-rv-searchbar .os-rv-input::placeholder,
.os-sp-searchbar .os-sp-input::placeholder { color: var(--os-text-dim); }
.os-hd-fields .os-hd-input,
.os-hd-fields .os-hd-select,
.os-hh-fields .os-hh-input {
background-color: var(--os-bg-soft);
border: 1px solid var(--os-border);
color: var(--os-text);
border-radius: 999px;
font-family: var(--os-sans);
font-size: 16px;
box-sizing: border-box;
transition: border-color .15s ease;
}
.os-hd-fields .os-hd-input,
.os-hh-fields .os-hh-input { padding: 13px 20px; }
.os-hd-fields .os-hd-select { padding: 13px 40px 13px 20px; }
.os-hd-fields .os-hd-input:focus,
.os-hd-fields .os-hd-select:focus,
.os-hh-fields .os-hh-input:focus { outline: 0; border-color: var(--os-accent); color: var(--os-text); }
.os-hd-fields .os-hd-input::placeholder,
.os-hh-fields .os-hh-input::placeholder { color: var(--os-text-dim); }
.os-rv-searchbar .os-rv-clear,
.os-sp-searchbar .os-sp-clear { background: none; border: 0; }
input.os-calc-input, input.os-mf-input, input.os-mf-in,
select.os-calc-select, select.os-mf-in {
background-color: var(--os-bg);
border: 1px solid var(--os-border);
color: var(--os-text);
border-radius: 999px;
font-family: var(--os-sans);
box-sizing: border-box;
transition: border-color .15s ease;
padding: 13px 18px;
}
input.os-calc-input:focus, input.os-mf-input:focus, input.os-mf-in:focus,
select.os-calc-select:focus, select.os-mf-in:focus { outline: 0; border-color: var(--os-accent); color: var(--os-text); }
input.os-calc-input::placeholder, input.os-mf-input::placeholder, input.os-mf-in::placeholder { color: var(--os-text-dim); }
.os-idcard{background:var(--os-bg-soft);border:1px solid var(--os-border);border-radius:var(--os-radius);padding:1.15rem 1.35rem;margin:0 0 1.9rem;}
.os-idcard-title{margin:0 0 .7rem;font-family:var(--os-sans);font-size:.82rem;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--os-accent);}
.os-idcard-dl{display:grid;grid-template-columns:max-content 1fr;gap:.4rem 1.1rem;margin:0;font-family:var(--os-sans);font-size:16px;line-height:1.55;}
.os-idcard-dl dt{margin:0;font-weight:600;color:var(--os-text-muted);}
.os-idcard-dl dd{margin:0;color:var(--os-text);}
@media (max-width:560px){.os-idcard-dl{grid-template-columns:1fr;gap:.05rem .5rem;}.os-idcard-dl dd{margin:0 0 .55rem;}}
.os-cmp-wrap{overflow-x:auto;margin:1.6rem 0;-webkit-overflow-scrolling:touch;}
table.os-cmp{border-collapse:collapse;width:100%;min-width:34rem;font-family:var(--os-sans);font-size:15px;line-height:1.5;color:var(--os-text);}
table.os-cmp caption{caption-side:top;text-align:left;font-weight:600;color:var(--os-text-muted);margin-bottom:.6rem;font-size:15px;}
table.os-cmp th,table.os-cmp td{border:1px solid var(--os-border);padding:.6rem .75rem;text-align:left;vertical-align:top;}
table.os-cmp thead th{background:var(--os-bg-softer);color:var(--os-text);font-weight:700;}
table.os-cmp tbody th{background:rgba(242,241,239,0.04);color:var(--os-text-muted);font-weight:600;}
table.os-cmp tbody tr:nth-child(even) td{background:rgba(242,241,239,0.03);}
.os-footer-legal { margin-top: 6px; font-size: 12px; line-height: 1.4; opacity: .72; letter-spacing: .01em; }
.os-footer-links { margin-top: 8px; font-size: 12px; }
.os-footer-links a { color: var(--os-text-dim); text-decoration: none; }
.os-footer-links a:hover { color: var(--os-accent-hover); }
.os-footer-sep2 { color: var(--os-text-dim); opacity: .5; margin: 0 7px; }
.os-footer-disclaimer { margin-top: 8px; font-size: 11px; line-height: 1.4; opacity: .6; }
.os-footer { padding: 48px 0 34px; }
.os-news { max-width: 600px; }
.os-footer .os-news .os-news-eyebrow {
font-family: var(--os-sans); text-transform: uppercase; letter-spacing: 1.5px;
font-size: 13px; font-weight: 700; color: var(--os-accent); margin: 0 0 12px;
}
.os-footer .os-news .os-news-label {
font-family: var(--os-serif); font-size: 32px; font-weight: 700; line-height: 1.18;
color: var(--os-text); margin: 0 0 12px;
}
.os-footer .os-news .os-news-sub {
font-family: var(--os-sans); font-size: 15px; color: var(--os-text-muted);
margin: 0 auto 22px; max-width: 48ch; line-height: 1.6;
}
.os-footer .os-news .os-news-fine {
font-family: var(--os-sans); font-size: 12px; color: var(--os-text-dim);
opacity: .85; margin: 16px 0 0;
}
.os-footer-cols {
display: grid; grid-template-columns: 1.6fr 1fr 1fr 1fr; gap: 40px;
align-items: start; margin: 4px 0 0;
}
.os-footer-brand .os-logo { margin-bottom: 16px; }
.os-footer-brand .os-footer-blurb {
color: var(--os-text-muted); font-family: var(--os-sans); font-size: 15px;
max-width: 32ch; margin: 0 0 18px; line-height: 1.6;
}
.os-footer-brand .os-social { margin-top: 0; }
.os-footer-col ul { list-style: none; padding: 0; margin: 0; }
.os-footer-col li { margin-bottom: 10px; }
.os-footer-bottom {
display: flex; flex-wrap: wrap; gap: 12px 22px; align-items: center;
justify-content: space-between; margin-top: 44px; padding-top: 22px;
border-top: 1px solid var(--os-border);
}
.os-footer-bottom .os-footer-legal { margin: 0; opacity: .72; }
.os-footer-bottom .os-footer-disclaimer { margin: 0; }
.os-footer-legal a { color: var(--os-text-dim); text-decoration: none; }
.os-footer-legal a:hover { color: var(--os-accent-hover); }
@media (max-width: 900px) {
.os-footer-cols { grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 30px; }
.os-footer-brand { grid-column: 1 / -1; }
.os-footer-col a { overflow-wrap: anywhere; }
}
@media (max-width: 560px) {
.os-footer .os-news .os-news-label { font-size: 26px; }
.os-footer-bottom { justify-content: center; text-align: center; }
.os-footer-col a { display: inline-block; padding: 6px 0; }
.os-footer-col li { margin-bottom: 4px; }
}
.os-search.os-search--compact { flex: 1 1 auto; min-width: 220px; max-width: none; }
.os-controls { position: relative; }
.os-controls .os-filter { margin-left: auto; }
.os-filter { position: relative; flex: none; }
.os-filter-btn {
display: inline-flex; align-items: center; gap: 8px;
background: var(--os-bg-soft);
color: var(--os-text);
border: 1px solid var(--os-border);
border-radius: 999px;
padding: 11px 20px;
font-family: var(--os-sans);
font-size: 14px;
cursor: pointer;
transition: border-color .2s ease, background .2s ease;
white-space: nowrap;
}
.os-filter-btn svg { flex: none; color: var(--os-text-dim); }
.os-filter-btn:hover { border-color: var(--os-accent); }
.os-filter-btn.is-active { border-color: var(--os-accent); background: var(--os-bg-softer); }
.os-filter-btn.is-active svg { color: var(--os-accent); }
.os-filter-badge {
display: inline-flex; align-items: center; justify-content: center;
min-width: 18px; height: 18px; padding: 0 5px;
background: var(--os-accent); color: #fff;
border-radius: 999px; font-size: 11px; font-weight: 700; line-height: 1;
}
.os-filter-panel {
position: absolute;
top: calc(100% + 10px);
left: 50%;
transform: translateX(-50%);
width: min(340px, calc(100vw - 24px));
background: var(--os-bg-soft);
border: 1px solid var(--os-border);
border-radius: 16px;
box-shadow: 0 16px 40px rgba(0,0,0,.35);
padding: 18px;
z-index: 60;
display: none;
}
.os-filter-panel.is-open { display: block; }
.os-filter-section + .os-filter-section { margin-top: 20px; }
.os-filter-section-title {
display: flex; align-items: center; justify-content: space-between;
font-family: var(--os-sans); font-size: 12px; letter-spacing: .06em; text-transform: uppercase;
color: var(--os-text-dim); margin-bottom: 10px;
}
.os-filter-year-val { color: var(--os-accent); text-transform: none; letter-spacing: 0; font-size: 13px; font-weight: 600; }
.os-filter-cats { display: flex; flex-direction: column; gap: 2px; max-height: 200px; overflow-y: auto; }
.os-filter-check {
display: flex; align-items: center; gap: 10px;
padding: 7px 4px;
cursor: pointer;
font-family: var(--os-sans); font-size: 14px; color: var(--os-text);
border-radius: 8px;
position: relative;
}
.os-filter-check:hover { background: var(--os-bg-softer); }
.os-filter-check input[type="checkbox"] { position: absolute; opacity: 0; width: 18px; height: 18px; margin: 0; left: 4px; }
.os-filter-check-box {
width: 18px; height: 18px; flex: none;
border: 1.5px solid var(--os-border);
border-radius: 5px;
position: relative;
transition: background .15s ease, border-color .15s ease;
}
.os-filter-check input:checked + .os-filter-check-box {
background: var(--os-accent); border-color: var(--os-accent);
}
.os-filter-check input:checked + .os-filter-check-box::after {
content: '';
position: absolute; left: 5px; top: 1px;
width: 5px; height: 10px;
border: solid #fff; border-width: 0 2px 2px 0;
transform: rotate(45deg);
}
.os-filter-check input:focus-visible + .os-filter-check-box { outline: 2px solid var(--os-accent); outline-offset: 2px; }
.os-filter-check-label { flex: 1 1 auto; }
.os-filter-check-count { color: var(--os-text-dim); font-size: 12px; }
.os-yearslider { position: relative; height: 20px; margin: 6px 2px 2px; }
.os-yearslider-track {
position: absolute; left: 0; right: 0; top: 50%; transform: translateY(-50%);
height: 4px; border-radius: 999px; background: var(--os-border);
}
.os-yearslider-fill {
position: absolute; top: 50%; transform: translateY(-50%);
height: 4px; border-radius: 999px; background: var(--os-accent);
}
.os-yearslider-input {
position: absolute; left: 0; right: 0; top: 0;
width: 100%; height: 20px; margin: 0;
background: transparent;
appearance: none; -webkit-appearance: none;
pointer-events: none;
}
.os-yearslider-input::-webkit-slider-runnable-track { background: transparent; height: 20px; }
.os-yearslider-input::-moz-range-track { background: transparent; height: 20px; border: none; }
.os-yearslider-input::-webkit-slider-thumb {
-webkit-appearance: none;
pointer-events: auto;
width: 16px; height: 16px; border-radius: 50%;
background: var(--os-accent);
border: 2px solid var(--os-text);
box-shadow: 0 1px 4px rgba(0,0,0,.4);
margin-top: 2px;
cursor: pointer;
}
.os-yearslider-input::-moz-range-thumb {
pointer-events: auto;
width: 16px; height: 16px; border-radius: 50%;
background: var(--os-accent);
border: 2px solid var(--os-text);
box-shadow: 0 1px 4px rgba(0,0,0,.4);
cursor: pointer;
}
.os-yearslider-labels {
display: flex; justify-content: space-between;
font-family: var(--os-sans); font-size: 11px; color: var(--os-text-dim);
margin-top: 4px;
}
.os-filter-actions {
display: flex; align-items: center; justify-content: space-between;
margin-top: 20px; padding-top: 16px;
border-top: 1px solid var(--os-border);
}
.os-filter-clear {
background: transparent; border: 0; padding: 0;
font-family: var(--os-sans); font-size: 13px; color: var(--os-text-muted);
cursor: pointer; text-decoration: underline;
}
.os-filter-clear:hover { color: var(--os-text); }
.os-filter-done {
background: var(--os-accent); color: #fff; border: 0;
border-radius: 999px; padding: 9px 20px;
font-family: var(--os-sans); font-size: 14px; font-weight: 600;
cursor: pointer; transition: background .15s ease;
}
.os-filter-done:hover { background: var(--os-accent-hover); }
@media (max-width: 520px) {
.os-search.os-search--compact { flex: 1 1 100%; max-width: none; }
.os-filter-panel { left: auto; right: 0; transform: none; width: min(320px, calc(100vw - 24px)); }
}
h1, h2, h3, h4,
.os-article-title,
.os-hub-card-title,
.wp-block-heading {
text-wrap: balance;
}
.os-article-body p,
.os-article-body li,
.os-hub-card-desc,
.os-post-snippet,
figcaption,
.wp-caption-text,
blockquote {
text-wrap: pretty;
}
.os-article-hero,
.wp-block-image img,
.os-postcard-thumb {
outline: 1px solid rgba(255, 255, 255, 0.1);
outline-offset: -1px;
}
.os-postcard {
border-radius: 16px;
}
.os-btn:active {
transform: scale(0.96);
}
input[type="search"],
input[type="search"]:focus,
.os-search input,
.os-search input:focus,
.os-sp-input,
.os-sp-input:focus,
.osm-input,
.osm-input:focus {
color: var(--os-text) !important;
-webkit-text-fill-color: var(--os-text) !important;
}
.os-cart{position:relative;display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:999px;border:1px solid var(--os-border);color:var(--os-text-muted);transition:color .2s ease,border-color .2s ease,background-color .2s ease;flex:none;}
.os-cart:hover{color:var(--os-text);border-color:var(--os-accent);}
.os-cart:active{transform:scale(.96);}
.os-header-inner>.os-nav{margin-left:auto;}
.os-cart-count{position:absolute;top:-5px;right:-6px;min-width:19px;height:19px;padding:0 5px;border-radius:999px;background:var(--os-accent);color:#fff;font-family:var(--os-sans);font-size:11px;font-weight:700;line-height:19px;text-align:center;font-variant-numeric:tabular-nums;box-shadow:0 1px 3px rgba(0,0,0,.4);}
.os-cart-count.is-zero{display:none;}
@media (max-width:860px){.os-menu-toggle{margin-left:auto;}.os-header-inner>.os-nav{margin-left:0;}.os-header-inner>.os-cart{margin-left:10px;}}
.os-page-main{width:100%;}
.woocommerce-cart .os-builder-content,
.woocommerce-checkout .os-builder-content{width:100%;max-width:var(--os-maxw);margin:0 auto;padding:44px 24px 72px;color:var(--os-text);}
.woocommerce-cart .os-builder-content *,
.woocommerce-checkout .os-builder-content{color:var(--os-text);}
.woocommerce-cart .wc-block-components-title,
.woocommerce-checkout .wc-block-components-title,
.woocommerce-cart h1,.woocommerce-cart h2,.woocommerce-cart h3,
.woocommerce-checkout h1,.woocommerce-checkout h2,.woocommerce-checkout h3,
.wc-block-components-checkout-step__title{font-family:var(--os-serif) !important;color:var(--os-text) !important;}
.wc-block-components-checkout-step__description,
.wc-block-components-product-metadata,.wc-block-components-product-name,
.wc-block-components-totals-item__label,.wc-block-components-totals-item__value,
.wc-block-formatted-money-amount,.wc-block-cart-item__total{color:var(--os-text) !important;font-family:var(--os-sans);}
.wc-block-components-product-metadata,.wc-block-components-checkout-step__description{color:var(--os-text-muted) !important;}
.woocommerce-cart .wc-block-components-button,
.woocommerce-checkout .wc-block-components-button,
.wc-block-cart__submit-button,.wc-block-cart__submit-container a,.wc-block-cart__submit-container button,
.wc-block-components-checkout-place-order-button,
.wp-block-woocommerce-checkout-actions-block button{
background:var(--os-accent) !important;color:#fff !important;border:0 !important;border-radius:999px !important;
font-family:var(--os-sans) !important;font-weight:600 !important;padding:14px 28px !important;box-shadow:none !important;
transition:background-color .2s ease,transform .1s ease;}
.woocommerce-cart .wc-block-components-button:hover,
.woocommerce-checkout .wc-block-components-button:hover,
.wc-block-cart__submit-button:hover,.wc-block-components-checkout-place-order-button:hover{background:var(--os-accent-hover) !important;}
.wc-block-components-button:active,.wc-block-components-checkout-place-order-button:active{transform:scale(.96);}
.wc-block-components-button.wc-block-components-button--outlined,
.wc-block-components-totals-coupon__button{background:transparent !important;color:var(--os-accent-hover) !important;box-shadow:inset 0 0 0 1.5px var(--os-accent) !important;}
.woocommerce-cart .wc-block-components-text-input input,
.woocommerce-checkout .wc-block-components-text-input input,
.wc-block-components-text-input input,.wc-block-components-textarea,
.wc-block-components-address-form input,.wc-block-components-select select,
.wc-block-components-combobox input,.wc-block-checkout__form input,
.wc-block-components-totals-coupon__input input{
background:var(--os-bg-soft) !important;color:var(--os-text) !important;
border:1px solid var(--os-border) !important;border-radius:var(--os-radius-sm) !important;}
.wc-block-components-text-input input:focus,.wc-block-components-combobox input:focus,
.wc-block-components-select select:focus{border-color:var(--os-accent) !important;outline:0 !important;box-shadow:none !important;}
.wc-block-components-text-input label,.wc-block-components-checkbox__label,
.wc-block-components-radio-control__label,.wc-block-components-combobox label{color:var(--os-text-dim) !important;}
.wc-block-components-text-input.is-active label{color:var(--os-accent-hover) !important;}
.wc-block-components-panel,
.wc-block-checkout__sidebar,.wc-block-cart__sidebar,
.wc-block-components-order-summary,
.wp-block-woocommerce-checkout-order-summary-block{
background:var(--os-bg-soft) !important;border-radius:var(--os-radius) !important;border:1px solid var(--os-border) !important;}
.wc-block-components-totals-wrapper{background:transparent !important;border:0 !important;border-radius:0 !important;padding:10px 2px !important;}
.wc-block-components-totals-wrapper:empty{display:none !important;}
.wc-block-components-totals-item__value,.wc-block-formatted-money-amount{font-variant-numeric:tabular-nums;}
.wc-block-cart-items,.wc-block-cart-items__row,.wc-block-cart-item__wrap,
.wc-block-components-order-summary-item{border-color:var(--os-border) !important;}
.woocommerce-cart .wc-block-cart a,.woocommerce-cart .wp-block-woocommerce-cart a,.woocommerce-checkout .wc-block-checkout a,.woocommerce-checkout .wp-block-woocommerce-checkout a{color:var(--os-accent-hover);}
.wc-block-checkout__main,.wc-block-cart__main{min-width:0;}
.wc-block-components-quantity-selector{border:1px solid var(--os-border) !important;border-radius:999px !important;background:var(--os-bg-soft) !important;}
.wc-block-components-quantity-selector__input{color:var(--os-text) !important;background:transparent !important;}
.wc-block-components-quantity-selector__button{color:var(--os-text-muted) !important;}
.wc-block-cart-item__image img,.wc-block-components-order-summary-item__image img{border-radius:var(--os-radius-sm);outline:1px solid rgba(255,255,255,.1);outline-offset:-1px;}
html{color-scheme:dark;}
.woocommerce-cart .wc-block-components-text-input input:focus-visible,
.woocommerce-checkout .wc-block-components-text-input input:focus-visible,
.wc-block-components-combobox input:focus-visible,
.wc-block-components-select select:focus-visible,
.woocommerce-cart .button:focus-visible,.woocommerce-checkout .button:focus-visible,
.wc-block-components-button:focus-visible,
.wc-block-components-checkout-place-order-button:focus-visible{outline:2px solid var(--os-accent-hover) !important;outline-offset:2px !important;}
.woocommerce-cart .button,.woocommerce-checkout .button,
.wc-block-components-button,.wc-block-components-checkout-place-order-button,
.wc-block-components-quantity-selector__button{touch-action:manipulation;}
.woocommerce-cart .wc-block-formatted-money-amount,
.woocommerce-checkout .wc-block-formatted-money-amount,
.wc-block-components-order-summary-item__total-price,
.wc-block-components-quantity-selector__input{font-variant-numeric:tabular-nums;}
.wc-block-cart{gap:36px;}
.wc-block-cart__main{min-width:0;}
.wc-block-cart__sidebar{align-self:flex-start;padding:8px 6px !important;}
.wc-block-cart__sidebar .wc-block-components-totals-wrapper{padding-left:14px !important;padding-right:14px !important;}
.wc-block-cart-item__total,.wc-block-cart__totals-title,
.wp-block-woocommerce-cart-order-summary-heading-block{text-align:right;}
.wc-block-components-order-summary-item__description{min-width:0;}
.wc-block-components-order-summary-item__description p{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;}
.wc-block-components-totals-item:empty{display:none !important;}
.os-news-form{display:flex;align-items:center;gap:10px;max-width:460px;margin:0 auto;padding:5px 6px 5px 18px;background:var(--os-bg-soft);border:1px solid var(--os-border);border-radius:999px;transition:border-color .2s ease;flex-wrap:nowrap;}
.os-news-form:focus-within{border-color:var(--os-accent);}
.os-news-form svg{width:18px;height:18px;color:var(--os-text-dim);flex:none;}
.os-news-input{flex:1 1 auto;min-width:0;padding:11px 4px;border:0;border-radius:0;background:transparent;color:var(--os-text);font-family:var(--os-sans);font-size:15px;}
.os-news-input:focus{outline:none;}
.os-news-input::placeholder{color:var(--os-text-dim);}
.os-news-btn{flex:none;padding:11px 22px;border:0;border-radius:999px;background:var(--os-accent);color:#fff;font-family:var(--os-sans);font-size:15px;font-weight:600;cursor:pointer;white-space:nowrap;transition:background .15s ease,transform .1s ease;}
.os-news-btn:hover{background:var(--os-accent-hover);}
.os-news-btn:active{transform:scale(.96);}
@media(max-width:420px){.os-news-btn{padding:11px 16px;}}
.os-lk-search input,.os-ndic-search,.os-mono-search{border-radius:999px !important;background-color:var(--os-bg-soft) !important;background-image:url(data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2218%22%20height%3D%2218%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%2393a08f%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%2211%22%20cy%3D%2211%22%20r%3D%228%22%2F%3E%3Cline%20x1%3D%2221%22%20y1%3D%2221%22%20x2%3D%2216.65%22%20y2%3D%2216.65%22%2F%3E%3C%2Fsvg%3E) !important;background-repeat:no-repeat !important;background-position:18px center !important;background-size:18px 18px !important;padding-left:48px !important;border:1px solid var(--os-border) !important;color:var(--os-text) !important;transition:border-color .2s ease,box-shadow .2s ease !important;}
.os-lk-search input:focus,.os-ndic-search:focus,.os-mono-search:focus{border-color:var(--os-accent) !important;box-shadow:0 0 0 3px rgba(184,92,44,.16) !important;outline:none !important;}
.os-lk-search input::placeholder,.os-ndic-search::placeholder,.os-mono-search::placeholder{color:var(--os-text-dim) !important;}
.os-ndic-sug{border-radius:16px !important;background:var(--os-bg-soft) !important;box-shadow:0 16px 40px rgba(0,0,0,.35) !important;}
.os-shop-toolbar .os-search{position:relative;}
.os-shopfilter{position:relative;display:inline-flex;}
.os-shopfilter .os-filter-panel{position:absolute;top:calc(100% + 10px);left:0;z-index:60;width:min(280px,86vw);max-height:min(60vh,340px);overflow:auto;opacity:0;visibility:hidden;transform:translateY(-6px);transition:opacity .18s ease,transform .18s ease,visibility .18s;margin:0 !important;}
.os-shopfilter .os-filter-panel.is-open{opacity:1;visibility:visible;transform:translateY(0);}
.os-shopfilter .os-filter-inner{flex-direction:column;align-items:stretch;gap:4px;box-shadow:0 16px 40px rgba(0,0,0,.4);}
.os-shopfilter .os-filter-inner .os-filter-label{margin:0 0 8px;}
.os-shopfilter .os-cat{padding:8px;border-radius:8px;}
.os-shopfilter .os-cat:hover{background:var(--os-bg-softer);}
.os-shopfilter .os-filter-clear{margin:8px 0 0;align-self:flex-start;}
@media(max-width:560px){.os-shopfilter .os-filter-panel{left:auto;right:0;}}
.os-page-main{border:0 !important;box-shadow:none !important;}
.os-news-input{border:0 !important;}
.wc-block-checkout__form select,.wc-block-checkout select,.wc-block-components-address-form select,#billing-country,#shipping-country,#billing-state,#shipping-state{background-color:var(--os-bg-soft) !important;color:var(--os-text) !important;border:1px solid var(--os-border) !important;border-radius:var(--os-radius-sm) !important;-webkit-appearance:none !important;-moz-appearance:none !important;appearance:none !important;background-image:url(data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2212%22%20height%3D%2212%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23c2c9bf%22%20stroke-width%3D%222.5%22%3E%3Cpolyline%20points%3D%226%209%2012%2015%2018%209%22%2F%3E%3C%2Fsvg%3E) !important;background-repeat:no-repeat !important;background-position:right 14px center !important;padding:12px 40px 12px 14px !important;font-family:var(--os-sans) !important;}
.wc-block-checkout__form select:focus,.wc-block-checkout select:focus{border-color:var(--os-accent) !important;outline:0 !important;}
.wc-block-checkout__form select option,.wc-block-checkout select option,.wc-block-components-address-form select option{background-color:#1d2e20 !important;color:#f2f1ef !important;}
@keyframes osShimmer{0%{background-position:200% 0;}100%{background-position:-200% 0;}}
@keyframes osImgIn{from{opacity:.4;}to{opacity:1;}}
.os-img-loading{background-color:var(--os-bg-soft);background-image:linear-gradient(100deg,rgba(242,241,239,0) 20%,rgba(242,241,239,.10) 42%,rgba(242,241,239,.10) 56%,rgba(242,241,239,0) 78%);background-size:220% 100%;background-repeat:no-repeat;animation:osShimmer 1.35s linear infinite;color:transparent;}
.os-img-loaded{animation:osImgIn .45s ease both;}
@media(prefers-reduced-motion:reduce){.os-img-loading{animation:none !important;}.os-img-loaded{animation:none !important;}}
.os-account{padding:0 !important;display:inline-flex !important;align-items:center;justify-content:center;min-width:42px;min-height:42px;}
.os-account svg{width:22px !important;height:22px !important;flex:none;}
.os-shopfilter .os-filter-inner{background:transparent !important;border:0 !important;box-shadow:none !important;border-radius:0 !important;}
.os-shop-toolbar .os-search input,#osShopSearch{background:transparent !important;border:0 !important;box-shadow:none !important;}
.os-news-input{color:var(--os-text) !important;-webkit-text-fill-color:var(--os-text) !important;caret-color:var(--os-text);}
.os-news-input:-webkit-autofill,.os-news-input:-webkit-autofill:hover,.os-news-input:-webkit-autofill:focus{-webkit-text-fill-color:var(--os-text) !important;-webkit-box-shadow:0 0 0 1000px var(--os-bg-soft) inset !important;caret-color:var(--os-text) !important;}
@media(max-width:560px){
.os-shop-toolbar{position:relative;}
.os-shopfilter{position:static;}
.os-shopfilter .os-filter-panel{left:0 !important;right:0 !important;top:calc(100% + 8px) !important;width:auto !important;max-width:none !important;}
}
.woocommerce-checkout .wc-block-checkout__sidebar,.woocommerce-checkout .wc-block-components-order-summary,.woocommerce-checkout .wc-block-components-totals-coupon,.woocommerce-checkout .wc-block-components-panel{background:transparent !important;border:0 !important;border-radius:0 !important;box-shadow:none !important;}
.woocommerce-checkout .wp-block-woocommerce-checkout-order-summary-block{background:var(--os-bg-soft) !important;border:1px solid var(--os-border) !important;border-radius:var(--os-radius) !important;}
.wc-block-checkout__form select,.wc-block-checkout select,.wc-block-components-address-form select,#billing-country,#shipping-country,#billing-state,#shipping-state{padding:20px 40px 8px 14px !important;border-radius:8px !important;background-position:right 14px center !important;}
h1,h2,h3,h4,.os-post-title,.os-article-title,.os-blog-head h1,.woocommerce-loop-product__title,.os-hub-card h3,.wc-block-components-title{text-wrap:balance;}
.os-article-body p,.os-post-snippet,.os-footer-blurb,.os-news-sub,.os-tool-sub{text-wrap:pretty;}
.price,.amount,.woocommerce-Price-amount,.wc-block-formatted-money-amount,.wc-block-components-totals-item__value,.wc-block-components-totals-item__label,.os-post-date{font-variant-numeric:tabular-nums;}
:root{--os-radius-input:10px;}
.woocommerce-product-gallery img,.woocommerce-product-gallery__image img,.wc-block-components-product-image img,.single-product .woocommerce-product-gallery__wrapper img{border-radius:var(--os-radius-sm) !important;outline:1px solid rgba(255,255,255,.1) !important;outline-offset:-1px !important;}
.osacc-reg input,.wc-block-components-text-input input,.wc-block-checkout__form input,.wc-block-checkout__form select,.wc-block-components-address-form input,.wc-block-components-address-form select,#billing-country,#shipping-country,#billing-state,#shipping-state{border-radius:var(--os-radius-input) !important;}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible,[tabindex]:focus-visible,.os-account:focus-visible,.os-filter-toggle:focus-visible,.os-filter-btn:focus-visible,.os-viewtoggle button:focus-visible,.os-search-clear:focus-visible,.osacc-btn:focus-visible,.os-btn:focus-visible,.os-buynow:focus-visible{outline:2px solid var(--os-accent-hover) !important;outline-offset:2px !important;}
@media (prefers-reduced-motion: reduce){*,*::before,*::after{animation-duration:.001ms !important;animation-iteration-count:1 !important;transition-duration:.001ms !important;scroll-behavior:auto !important;}}
@media (hover:none){.os-social a,.os-viewtoggle button,.os-search-clear{min-width:44px;min-height:44px;}}
[class*="score"],[class*="-count"],.os-calc-stat-value,.os-mf-out td,.os-hd-score,.os-cmp-score{font-variant-numeric:tabular-nums;}
.os-btn:active,.osacc-btn:active:not([disabled]),.button:active,.os-buynow:active,.wc-block-components-button:active,.single_add_to_cart_button:active,.os-news-btn:active,.os-filter-toggle:active{transform:scale(.96);}
.os-hub-card,.os-lk-card,.os-suggest-item,.os-ndic-sug-item{transition:transform .22s cubic-bezier(.2,0,0,1),background-color .22s ease,box-shadow .22s ease;}
@media (hover: hover) and (pointer: fine){.os-hub-card:hover{transform:translateY(-3px);box-shadow:0 10px 26px rgba(0,0,0,.28);}}.os-lk-card:hover{transform:translateY(-3px);box-shadow:0 10px 26px rgba(0,0,0,.28);}
.osacc-btn--google{color:#3c4043 !important;}
.wc-blocks-components-select__container{background-color:transparent !important;border-radius:var(--os-radius-input,10px) !important;}
.wp-block-woocommerce-checkout-express-payment-block,.wc-block-components-express-payment{min-height:50px;}
.wc-block-components-express-payment__event-buttons{min-height:44px;}
:root{ --os-text-dim:#adb8a5; }
.os-footer .os-news .os-news-eyebrow{ color:#e39461; }
.os-news-fine{ opacity:1; }
.os-footer-bottom .os-footer-legal{ opacity:1; }
.os-footer .os-news .os-news-fine{ opacity:1; }
.os-footer-legal a{ color:#adb8a5; }
.os-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; }
@font-face{font-family:'Inter Fallback';src:local('Arial');ascent-override:90.44%;descent-override:22.52%;line-gap-override:0.00%;size-adjust:107.12%;}
@font-face{font-family:'Cormorant Fallback';src:local('Times New Roman');line-gap-override:0.00%;size-adjust:92.20%;}
:root{
--os-serif: 'Cormorant Garamond', 'Cormorant Fallback', Georgia, 'Times New Roman', serif;
--os-sans: 'Inter', 'Inter Fallback', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
}
:root { --os-field-h: 57.5px; }
.os-search,
.os-news-form {
box-sizing: border-box;
min-height: var(--os-field-h);
align-items: center;
}
.os-search { padding: 0 20px; }
.os-news-form { padding: 0 6px 0 20px; }
.os-search input,
.os-news-form input {
padding: 0;
border: 0;
border-radius: inherit;
background: transparent;
font-size: 17px;
line-height: 1.5;
}
.os-search input { padding-right: 6px; }
input.os-sp-input,
input.os-rv-input,
input.os-hd-input, select.os-hd-select,
input.os-hh-input,
input.os-calc-input, select.os-calc-select,
input.os-mf-input,
input.osm-input {
box-sizing: border-box;
min-height: var(--os-field-h);
font-size: 17px;
}
input.os-mf-in, select.os-mf-in { box-sizing: border-box; min-height: 49px; }
.os-search:has(input:focus-visible),
.os-news-form:has(input:focus-visible) {
outline: 2px solid var(--os-accent-hover);
outline-offset: 2px;
}
.os-search input:focus-visible,
.os-news-form input:focus-visible { outline: none !important; }
.os-controls .os-filter-btn,
.os-controls .os-sort select,
.os-shop-toolbar .os-filter-btn,
.os-shop-toolbar .os-sort select,
.os-kf-controls .os-kf-select-wrap select,
.os-kf-select-wrap select {
box-sizing: border-box;
min-height: var(--os-field-h);
}
.os-news-btn { box-sizing: border-box; min-height: 45px; }
.os-shop-toolbar .os-shopfilter > button,
.os-shop-toolbar select.orderby,
.os-shop-toolbar .os-viewtoggle {
box-sizing: border-box;
min-height: var(--os-field-h);
}
.os-shop-toolbar select.orderby { border-radius: 999px !important; }
.os-shop-toolbar .os-viewtoggle { height: var(--os-field-h); }
.os-shop-toolbar .os-viewtoggle > button { box-sizing: border-box; height: 100%; min-height: 0; }
.os-lk-search input[type="search"] {
box-sizing: border-box;
min-height: var(--os-field-h);
padding: 0 20px;
border-radius: 999px;
font-size: 17px;
}
input.osm-input {
box-sizing: border-box;
min-height: var(--os-field-h);
padding: 0 18px;
border-radius: 999px;
}
input.os-ndic-search {
box-sizing: border-box;
min-height: var(--os-field-h);
padding: 0 20px 0 48px;
border-radius: 999px;
font-size: 17px;
}
select.os-ndic-langsel {
box-sizing: border-box;
min-height: var(--os-field-h);
border-radius: 999px;
}
input.os-mono-search {
box-sizing: border-box;
min-height: var(--os-field-h);
padding: 0 22px;
border-radius: 999px;
font-size: 17px;
}
.os-cmp-combo input.os-cmp-input {
box-sizing: border-box;
min-height: var(--os-field-h);
padding: 0 20px;
}
.os-nav-item.os-has-dd { position: relative; display: inline-flex; align-items: center; }
.os-nav-top { display: inline-flex; align-items: center; gap: 5px; }
.os-dd-caret { flex: none; transition: transform .2s ease; }
.os-has-dd:hover .os-dd-caret,
.os-has-dd:focus-within .os-dd-caret { transform: rotate(180deg); }
.os-dd {
position: absolute;
top: 100%; left: 0;
margin-top: 8px;
z-index: 200;
display: grid;
grid-auto-flow: column;
grid-template-rows: repeat(7, auto);
gap: 2px;
padding: 8px;
background: #21331e;
border: 1px solid var(--os-border);
border-radius: 14px;
box-shadow: 0 18px 44px rgba(0,0,0,0.42);
opacity: 0;
visibility: hidden;
transform: translateY(-6px);
pointer-events: none;
transition: opacity .18s ease, transform .18s ease, visibility .18s;
}
.os-dd::before { content: ""; position: absolute; top: -10px; left: 0; right: 0; height: 10px; }
.os-has-dd:hover .os-dd,
.os-has-dd:focus-within .os-dd { opacity: 1; visibility: visible; transform: translateY(0); pointer-events: auto; }
.os-dd-link {
display: block;
padding: 9px 14px;
border-radius: 8px;
font-family: var(--os-sans);
font-size: 14px;
font-weight: 500;
line-height: 1.25;
color: var(--os-text-muted);
white-space: nowrap;
transition: color .15s ease, background-color .15s ease;
}
.os-dd-link:hover { color: var(--os-text); background-color: rgba(184,92,44,0.16); }
.os-dd-link:focus-visible { outline: 2px solid var(--os-accent); outline-offset: 1px; color: var(--os-text); }
@media (min-width: 861px) and (max-width: 1040px) { .os-dd { left: auto; right: 0; } }
@media (prefers-reduced-motion: reduce) { .os-dd, .os-dd-caret { transition: none; } }
@media (max-width: 860px) {
.os-nav-item.os-has-dd { width: 100%; display: block; }
.os-nav-top { width: 100%; }
.os-dd {
position: static; opacity: 1; visibility: visible; transform: none; pointer-events: auto;
display: flex; flex-direction: column; gap: 0;
margin: 0; padding: 2px 0 8px;
background: transparent; border: 0; box-shadow: none; z-index: auto;
}
.os-dd::before { display: none; }
.os-dd-caret { display: none; }
.os-dd-link { padding: 8px 12px 8px 30px; color: var(--os-text-dim); white-space: normal; }
.os-dd-link:hover { background-color: transparent; }
}