/*
Theme Name: SiteLooma Studio
Theme URI: https://sitelooma.com/
Author: SiteLooma
Author URI: https://sitelooma.com/
Description: Performance-first, accessible, Astra-independent WordPress theme for SiteLooma. Works with the existing SiteLooma Header/Footer, Design Showroom, Quote Builder, SEO Studio and Business Hub. Includes a full-width homepage, style system, block patterns, blog templates, and safe rollback workflow.
Version: 1.0.1
Requires at least: 6.6
Requires PHP: 7.4
License: GPL-2.0-or-later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: sitelooma-studio
Tags: custom-logo, custom-menu, featured-images, block-styles, wide-blocks, full-width-template, e-commerce, accessibility-ready, blog
*/
:root{--slmx-ink:#162b4c;--slmx-muted:#485e79;--slmx-bg:#ffffff;--slmx-soft:#f3f7fd;--slmx-line:#dae5f3;--slmx-dark:#071b3c;--slmx-accent:#6356e8;--slmx-cyan:#12c7dd;--slmx-radius:16px;--slmx-width:1280px;--slmx-font:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:110px}
body.slmx-studio{margin:0;min-width:0;color:var(--slmx-ink);background:var(--slmx-bg);font-family:var(--slmx-font);font-size:16px;line-height:1.7;-webkit-font-smoothing:antialiased}
body.slmx-studio img,body.slmx-studio video,body.slmx-studio iframe{max-width:100%;height:auto}
body.slmx-studio input,body.slmx-studio button,body.slmx-studio textarea,body.slmx-studio select{font:inherit}
body.slmx-studio a{color:var(--slmx-accent)}
body.slmx-studio :is(a,button,input,select,textarea,summary):focus-visible{outline:3px solid #078aa5;outline-offset:3px}
.slmx-skip{position:absolute;left:12px;top:-180px;z-index:100000;background:#fff;color:#061d4b;padding:12px 18px;border-radius:9px;font-weight:800}
.slmx-skip:focus{top:12px}
.slmx-site{min-height:100vh;display:flex;flex-direction:column;width:100%}
.slmx-main{flex:1;min-width:0}
.slmx-container{width:min(var(--slmx-width),calc(100% - clamp(32px,6vw,110px)));margin-inline:auto}
.slmx-main:not(.slmx-front){padding-block:clamp(38px,5vw,82px)}
.slmx-main.slmx-front{padding:0;margin:0;max-width:none;overflow-x:clip}
.slmx-main.slmx-front>.slmx-entry-content{margin:0;padding:0;max-width:none}
.slmx-main.slmx-front .entry-content,.slmx-main.slmx-front .wp-block-html{margin:0;max-width:none}
.slmx-main.slmx-front .slh{width:100%;max-width:none}
body.slmx-studio.home #content{margin:0;padding:0;max-width:none;width:100%}
.slmx-entry{max-width:100%;min-width:0}
.slmx-entry-title{margin:0 0 18px;letter-spacing:-.035em;line-height:1.17;font-size:clamp(32px,4.1vw,56px);color:var(--slmx-dark)}
.slmx-entry-content{overflow-wrap:anywhere}
.slmx-entry-content :is(h2,h3,h4){line-height:1.25;letter-spacing:-.024em;color:var(--slmx-dark)}
.slmx-entry-content :is(p,ul,ol,blockquote,figure,table){margin-block:0 1.3em}
.slmx-entry-content a{text-decoration-thickness:1px;text-underline-offset:3px}
.slmx-entry-content :is(pre,code){overflow-wrap:anywhere}
.slmx-entry-content pre{max-width:100%;overflow:auto;padding:20px;border-radius:12px;background:#0b1c3a;color:#f1f6ff}
.slmx-entry-content blockquote{border-left:4px solid var(--slmx-accent);padding:10px 22px;background:var(--slmx-soft);margin-left:0;margin-right:0}
.slmx-entry-content :is(table,.wp-block-table table){border-collapse:collapse;display:block;max-width:100%;overflow-x:auto}
.slmx-entry-content :is(td,th){border:1px solid #c8d7e8;padding:10px 12px;text-align:left}
.slmx-entry-content .alignwide{max-width:min(1460px,calc(100vw - 36px));margin-inline:calc(50% - min(730px,50vw - 18px))}
.slmx-entry-content .alignfull{width:100vw;max-width:100vw;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw)}
.slmx-entry-content .wp-block-button__link,.slmx-theme-btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:46px;padding:12px 20px;border-radius:var(--slmx-radius);background:var(--slmx-accent);color:#fff;text-decoration:none;font-weight:750;border:1px solid transparent;cursor:pointer}
.slmx-theme-btn:hover,.slmx-entry-content .wp-block-button__link:hover{background:#4436cb;color:#fff}
.slmx-muted{color:var(--slmx-muted)}
.slmx-meta{display:flex;flex-wrap:wrap;gap:5px 18px;font-size:13px;color:var(--slmx-muted);margin:0 0 20px}
.slmx-meta a{color:inherit}
.slmx-post-card{border:1px solid var(--slmx-line);border-radius:calc(var(--slmx-radius) + 6px);overflow:hidden;min-width:0;box-shadow:0 9px 25px #1234550b;background:#fff;display:flex;flex-direction:column}
.slmx-post-card img{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;display:block}
.slmx-post-card-body{padding:23px;flex:1}
.slmx-post-card h2{font-size:clamp(20px,1.65vw,27px);line-height:1.22;margin:0 0 12px}
.slmx-post-card h2 a{text-decoration:none;color:var(--slmx-dark)}
.slmx-post-card h2 a:hover{color:var(--slmx-accent)}
.slmx-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.slmx-pagination{margin-top:36px}.slmx-pagination .nav-links{display:flex;flex-wrap:wrap;gap:10px}
.slmx-pagination .page-numbers{padding:9px 14px;border:1px solid var(--slmx-line);border-radius:9px}
.slmx-pagination .current{background:var(--slmx-dark);color:#fff}
.slmx-post-nav{display:flex;justify-content:space-between;flex-wrap:wrap;gap:20px;margin:36px 0;border-top:1px solid var(--slmx-line);padding-top:24px}
.slmx-header{width:100%;background:#fff;border-bottom:1px solid #dae3ef;position:relative;z-index:90}
.slmx-header-inner{display:flex;gap:24px;align-items:center;justify-content:space-between;min-height:86px}
.slmx-brand{font-size:25px;font-weight:850;letter-spacing:-.06em;color:#08254e!important;text-decoration:none}
.slmx-brand span{color:var(--slmx-accent)}
.slmx-header .custom-logo-link img{display:block;width:auto;max-height:60px;height:auto}
.slmx-header-nav{display:flex;align-items:center;gap:20px}
.slmx-header-nav ul{padding:0;margin:0;display:flex;list-style:none;gap:17px;align-items:center}
.slmx-header-nav a{color:#192f51;text-decoration:none;font-size:14px;font-weight:700}
.slmx-header-nav a:hover{color:var(--slmx-accent)}
.slmx-menu-toggle{display:none;border:1px solid #cbd9ea;border-radius:9px;color:#102548;padding:11px 14px;background:#f5f8ff;cursor:pointer}
.slmx-footer{margin-top:auto;background:var(--slmx-dark);color:#d9e7fb;padding:48px 0 25px}
.slmx-footer-row{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}
.slmx-footer strong{font-size:22px;color:#fff}
.slmx-footer a{color:#d8eaff}.slmx-footer-nav ul{list-style:none;display:flex;flex-wrap:wrap;gap:16px;margin:0;padding:0}
.slmx-footer-bottom{border-top:1px solid #ffffff36;padding-top:18px;margin-top:33px;font-size:13px}
.slmx-not-found{text-align:center;padding:90px 0}.slmx-not-found h1{font-size:clamp(42px,6vw,78px)}
.slmx-search-form{display:flex;gap:8px;max-width:550px}.slmx-search-form label{flex:1}.slmx-search-form input{width:100%;min-height:48px;padding:9px 13px;border:1px solid #aebed1;border-radius:10px}
.slmx-search-form button{min-height:48px;padding:9px 20px;border:0;background:var(--slmx-accent);color:#fff;border-radius:10px;font-weight:800;cursor:pointer}
.slmx-comments{margin-top:38px;border-top:1px solid var(--slmx-line);padding-top:25px}.slmx-comments input:not([type=checkbox]),.slmx-comments textarea{max-width:100%;width:100%;padding:10px;border:1px solid #a3b5cb;border-radius:9px}
.slmx-comments .submit{background:var(--slmx-accent);color:#fff;border:0;padding:12px 22px;border-radius:8px;cursor:pointer}
.slmx-woo main{max-width:var(--slmx-width);margin:auto}.woocommerce .button,.woocommerce button.button{background:var(--slmx-accent)!important;color:#fff!important;border-radius:10px!important}
.woocommerce input.input-text,.woocommerce select,.woocommerce textarea{min-height:44px;border:1px solid #a4b8ce;border-radius:8px;padding:9px}
/* Plugins own their UI. Do not apply typography, spacing, or button resets inside their components. */
body.slmx-studio .slhf-header,body.slmx-studio .slhf-footer,body.slmx-studio .slq,body.slmx-studio .slm-showroom,body.slmx-studio .slb-portal{font-family:inherit}
body.slmx-reduced-fx :is(.slh,.slm-showroom,.slq) *,body.slmx-reduced-fx :is(.slh,.slm-showroom,.slq) *::before,body.slmx-reduced-fx :is(.slh,.slm-showroom,.slq) *::after{animation-duration:.001ms!important;transition-duration:.001ms!important}
@media(max-width:1000px){.slmx-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.slmx-header-inner{gap:12px}}
@media(max-width:720px){.slmx-grid{grid-template-columns:1fr}.slmx-header-inner{min-height:75px}.slmx-js .slmx-menu-toggle{display:block}.slmx-header-nav{display:block;position:absolute;left:0;right:0;top:100%;background:#fff;padding:15px 22px;border-bottom:1px solid #dce5f5;box-shadow:0 18px 30px #0a2f5327}.slmx-js .slmx-header-nav{display:none}.slmx-js .slmx-header-nav[data-open="true"]{display:block}.slmx-header-nav ul{display:grid;gap:10px}.slmx-footer-row{display:grid;gap:25px}.slmx-search-form{flex-direction:column}.slmx-container{width:calc(100% - 32px)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}body.slmx-studio *,body.slmx-studio *::before,body.slmx-studio *::after{animation:none!important;transition:none!important}}
@media print{.slmx-header,.slmx-footer,.slmx-menu-toggle,.slhf-header,.slhf-footer{display:none!important}.slmx-main{padding:0!important}.slmx-container{width:100%!important}}

.slmx-reading-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(230px,300px);gap:clamp(24px,4vw,56px)}
.slmx-reading-layout>.slmx-sidebar{min-width:0}.slmx-sidebar .slmx-widget{margin-bottom:30px;padding:23px;background:var(--slmx-soft);border-radius:var(--slmx-radius)}.slmx-sidebar h2{font-size:19px;margin:0 0 15px;color:var(--slmx-dark)}
@media(max-width:900px){.slmx-reading-layout{grid-template-columns:1fr}}
