.ten10-site :where(h1,h2,h3,h4,h5,h6) { font-family:var(--font-heading); font-weight:var(--ten10-heading-weight); }
:where(.ten10-site) h1 { font-size:clamp(calc(3rem * var(--ten10-heading-scale)),calc(6.2vw * var(--ten10-heading-scale)),calc(6.8rem * var(--ten10-heading-scale))); }
:where(.ten10-site) h2 { font-size:clamp(calc(2.25rem * var(--ten10-heading-scale)),calc(4vw * var(--ten10-heading-scale)),calc(4.6rem * var(--ten10-heading-scale))); }
.site-brand .custom-logo { width:var(--ten10-logo-width); max-width:100%; max-height:none; height:auto; }
.site-brand .ten10-mobile-logo { display:none; }
.is-header-condensed .site-brand .custom-logo { width:var(--ten10-sticky-logo-width); }
.site-header,.mega-panel { color:var(--color-ink); }
.woocommerce ul.products { grid-template-columns:repeat(var(--ten10-shop-columns),minmax(0,1fr)); }
.journal-index .journal-grid { grid-template-columns:repeat(var(--ten10-blog-columns),minmax(0,1fr)); }
.ten10-page-layout { display:grid; grid-template-columns:minmax(0,1fr) var(--ten10-sidebar-width); gap:40px; }
.ten10-page-layout main { min-width:0; }
.ten10-page-layout main.site-container,.ten10-page-layout main .site-container { padding-inline:0; }
.ten10-page-layout.ten10-sidebar-left { grid-template-columns:var(--ten10-sidebar-width) minmax(0,1fr); }
.ten10-sidebar-left main { order:2; }
.ten10-journal-sidebar { padding-block:80px; }
.ten10-journal-sidebar .widget { margin-bottom:32px; }
.ten10-journal-sidebar .widget-title,.ten10-journal-sidebar h2 { font-size:1.3rem; }
.ten10-comments { margin-top:50px; }
.ten10-comments textarea,.ten10-comments input:not([type=checkbox]):not([type=submit]) { display:block; max-width:100%; padding:10px; border:1px solid var(--color-line); border-radius:var(--radius-control); background:var(--color-surface); }
.ten10-comments .comment-list { padding-left:20px; }
.ten10-social-links { display:flex; flex-wrap:wrap; gap:12px; margin-top:20px; }
.ten10-social-links a { font-size:13px; text-decoration:underline; text-underline-offset:4px; }
.ten10-breadcrumb { padding-block:20px; font-size:13px; color:var(--color-muted); }
.ten10-search-form { display:flex; gap:10px; max-width:600px; margin-block:20px; }
.ten10-search-form input { min-width:0; flex:1; padding:12px; background:var(--color-canvas); border:1px solid var(--color-line); border-radius:var(--radius-control); }
.ten10-search-form button { padding:10px 20px; background:var(--color-accent); color:var(--color-accent-ink); border:0; border-radius:var(--radius-control); }
.ten10-search-form button:is(:hover,:focus-visible), .ten10-dialog .woocommerce-button:is(:hover,:focus-visible) { background:var(--color-detail); color:var(--color-detail-ink); }
.error-page>img { width:min(100%,420px); max-height:320px; object-fit:contain; margin-bottom:32px; }
.ten10-wp-menu>li { position:relative; }
.ten10-wp-menu .sub-menu { display:none; position:absolute; top:100%; left:0; min-width:220px; list-style:none; margin:0; padding:15px; border:1px solid var(--color-line); background:var(--color-canvas); color:var(--color-ink); }
.ten10-wp-menu li:hover>.sub-menu,.ten10-wp-menu li:focus-within>.sub-menu { display:block; }
.ten10-wp-menu .sub-menu a { display:block; padding:10px; }
.ten10-dialog { width:min(92vw,520px); max-height:85dvh; overflow:auto; padding:40px; border:1px solid var(--color-line); border-radius:var(--radius-media); background:var(--color-canvas); color:var(--color-ink); }
.ten10-dialog::backdrop { background:rgba(8,15,11,.6); }
.ten10-dialog h2 { margin-top:15px; font-size:clamp(1.7rem,4vw,2.6rem); }
.ten10-dialog>img { width:100%; max-height:250px; object-fit:cover; }
.ten10-dialog-close { position:absolute; top:10px; right:10px; width:32px; height:32px; border:0; border-radius:50%; background:var(--color-canvas); color:var(--color-ink); font-size:24px; }
.ten10-dialog .form-row input:not([type=checkbox]) { width:100%; padding:10px; border:1px solid var(--color-line); background:var(--color-surface); border-radius:var(--radius-control); }
.ten10-dialog .woocommerce-button { padding:10px 20px; border:0; border-radius:var(--radius-control); background:var(--color-accent); color:var(--color-accent-ink); }
.ten10-dialog .woocommerce-button::before { background:var(--color-detail); }
.ten10-back-top { position:fixed; right:24px; bottom:28px; z-index:31; width:42px; height:42px; border:1px solid var(--color-line); border-radius:50%; background:var(--color-canvas); color:var(--color-ink); box-shadow:0 3px 15px #0002; }
.ten10-preloader { position:fixed; inset:0; z-index:10000; display:grid; place-items:center; background:var(--color-canvas); pointer-events:none; animation:ten10-loader-hide .2s 3s forwards; }
.ten10-preloader span { width:32px; height:32px; border:2px solid var(--color-line); border-top-color:var(--color-accent); border-radius:50%; animation:ten10-loader-spin .7s linear infinite; }
@keyframes ten10-loader-hide { to { opacity:0; visibility:hidden; } }
@keyframes ten10-loader-spin { to { transform:rotate(360deg); } }
@media(max-width:1024px) {
  .ten10-page-layout,.ten10-page-layout.ten10-sidebar-left { grid-template-columns:1fr; }
  .ten10-sidebar-left main { order:0; }
  .ten10-journal-sidebar { padding-block:0 40px; }
  .ten10-header-language { display:none; }
  .woocommerce ul.products { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .journal-index .journal-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .ten10-wp-menu .sub-menu { display:block; position:static; border:0; background:transparent; padding:0 0 0 20px; }
}
@media(max-width:767px) {
  .site-brand .custom-logo,.is-header-condensed .site-brand .custom-logo { width:var(--ten10-mobile-logo-width); }
  .site-brand.has-mobile-logo .custom-logo-link { display:none; }
  .site-brand.has-mobile-logo>a:not(.ten10-mobile-logo) { display:none; }
  .site-brand.has-mobile-logo .ten10-mobile-logo { display:block; }
  .ten10-mobile-logo img { width:var(--ten10-mobile-logo-width); }
  .woocommerce ul.products { grid-template-columns:repeat(var(--ten10-mobile-columns),minmax(0,1fr)); }
  .journal-index .journal-grid { grid-template-columns:1fr; }
  .ten10-dialog { padding:30px 22px; }
  .ten10-back-top { bottom:90px; right:16px; }
}
@media(prefers-reduced-motion:reduce) { .ten10-preloader { display:none; } }
