/* SARD theme - light, modern */
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin:0; font-family: var(--sard-font-body); font-size: var(--sard-body-size); color: var(--sard-text); background: var(--sard-bg); line-height:1.6; -webkit-font-smoothing:antialiased; }
img { max-width:100%; height:auto; display:block; }
a { color: var(--sard-primary); text-decoration:none; }
a:hover { opacity:.85; }
h1,h2,h3,h4,h5,h6 { font-family: var(--sard-font-heading); color: var(--sard-text); margin:0 0 .6em; line-height:1.2; font-weight:700; }

.sard-container { width:100%; max-width:1200px; margin:0 auto; padding:0 24px; }
.sard-section { padding:56px 0; }
@media (max-width:768px){ .sard-section { padding:40px 0; } }
.sard-section-alt { background: var(--sard-surface); }
.sard-section-head { text-align:center; max-width:720px; margin:0 auto 36px; }
.sard-section-title { font-size: clamp(28px, 4vw, var(--sard-heading-size)); }
.sard-section-text { color: var(--sard-muted); font-size: 17px; }
.sard-eyebrow { display:inline-block; color: var(--sard-primary); font-size:13px; font-weight:600; letter-spacing:.12em; text-transform:uppercase; margin-bottom:12px; }
.sard-eyebrow-light { color: rgba(255,255,255,.85); }
.sard-prose p { margin:0 0 1em; color: var(--sard-text); font-family: var(--sard-font-body); }

/* Buttons */
.sard-btn { display:inline-flex; align-items:center; gap:8px; padding:12px 22px; border-radius:10px; border:1px solid transparent; font-weight:600; font-size:15px; cursor:pointer; transition: all .2s; text-decoration:none; line-height:1; }
.sard-btn-lg { padding:16px 28px; font-size:16px; }
.sard-btn-primary { background: var(--sard-primary); color:#fff; }
.sard-btn-primary:hover { background: color-mix(in srgb, var(--sard-primary) 88%, black); color:#fff; opacity:1; }
.sard-btn-ghost { background:transparent; color:#fff; border-color: rgba(255,255,255,.5); }
.sard-btn-ghost:hover { background: rgba(255,255,255,.12); color:#fff; opacity:1; }

/* Topbar */
.sard-topbar { 
    position: sticky; 
    top: 0; 
    z-index: 100; 
    background: rgba(255,255,255,.95); 
    backdrop-filter: blur(10px); 
    border-bottom: 1px solid rgba(0,0,0,.06); 
}
.sard-topbar-inner { 
    display: flex; 
    align-items: center; 
    justify-content: space-between; 
    height: 90px; 
    gap: 24px; 
    position: relative;
}
.sard-logo { display:flex; align-items:center; }
.sard-logo img, .sard-logo .custom-logo {
    height: 60px;
    width: auto;
    display: block;
}
/* Desktop: logo badge that overflows the header for emphasis */
@media (min-width: 901px) {
    .sard-logo {
        background:#fff;
        padding:14px 18px;
        border-radius:14px;
        box-shadow: 0 12px 28px -10px rgba(15,23,42,.18), 0 2px 6px -2px rgba(15,23,42,.08);
        position: relative;
        z-index: 2;
        transform: translateY(14px);
    }
    .sard-logo img, .sard-logo .custom-logo { height: 76px; }
}
/* Mobile: lock header height, limit logo so it never crops */
@media (max-width: 900px) {
    .sard-topbar-inner { height: 68px; min-height:68px; }
    .sard-logo img, .sard-logo .custom-logo { max-height: 44px; height:auto; }
    .sard-nav-mobile { top: 68px; }
}
.sard-menu { display:flex; gap:28px; list-style:none; padding:0; margin:0; }
.sard-menu a { color: var(--sard-text); font-weight:500; font-size:15px; }
.sard-menu a:hover { color: var(--sard-primary); opacity:1; }
.sard-topbar-right { display:flex; align-items:center; gap:16px; }
.sard-topbar-phone { display:inline-flex; align-items:center; gap:6px; color: var(--sard-muted); font-size:14px; font-weight:500; }
.sard-topbar-phone svg { width:16px; height:16px; display: block; }
.sard-burger { display:none; background:none; border:0; cursor:pointer; flex-direction:column; gap:4px; width:30px; padding:6px; z-index: 101; }
.sard-burger span { display:block; height:2px; background: var(--sard-text); border-radius:2px; width: 100%; }

.sard-nav-mobile { display: none; background:#fff; padding:16px 24px; border-top:1px solid rgba(0,0,0,.06); flex-direction: column; gap: 20px; width: 100%; position: absolute; top: 90px; left: 0; z-index: 99; box-shadow: 0 10px 15px -3px rgba(0,0,0,0.05); }
.sard-nav-mobile.is-active { display: flex; }
.sard-nav-mobile-footer { display: flex; flex-direction: column; gap: 16px; padding-top: 16px; border-top: 1px solid rgba(0,0,0,.05); }
.sard-btn-full { width: 100%; text-align: center; justify-content: center; }
.sard-menu-mobile { list-style:none; padding:0; margin:0; }
.sard-menu-mobile li { padding:10px 0; border-bottom:1px solid rgba(0,0,0,.05); }
.sard-menu-mobile a { color: var(--sard-text); font-weight:500; display: block; }

/* Hero */
.sard-hero-swiper { height: 500px; }
.sard-hero-slide { position:relative; height: 100%; display:flex; align-items:center; background-size:cover; background-position:center; background-color:#0f172a; }
.sard-hero-overlay { position:absolute; inset:0; background: linear-gradient(to right, rgba(15,23,42,0.9) 0%, rgba(15,23,42,0.4) 100%); z-index:1; }
.sard-hero-title { font-size: clamp(28px, 5vw, 52px); line-height: 1.1; color:#fff; }
.sard-hero-desc { color: rgba(255,255,255,.9); font-size: clamp(16px, 2vw, 18px); max-width:620px; margin-bottom: 24px; }
.sard-hero-content { position:relative; z-index: 2; max-width:780px; color:#fff; padding: 40px 24px; }
.sard-hero-ctas { display:flex; flex-wrap:wrap; gap:12px; }

/* About */
.sard-about-grid { display:grid; grid-template-columns: 1.2fr 1fr; gap:64px; align-items:center; }
.sard-about-image img { border-radius:16px; box-shadow: 0 20px 60px -20px rgba(0,0,0,.2); }
.sard-indicators { display:grid; grid-template-columns: repeat(4, 1fr); gap:24px; margin-top:64px; padding-top:48px; border-top:1px solid rgba(0,0,0,.08); }
.sard-indicator { text-align:center; padding:20px; border-radius:12px; }
.sard-indicator-icon { display:inline-flex; width:48px; height:48px; align-items:center; justify-content:center; background: color-mix(in srgb, var(--sard-primary) 12%, transparent); color: var(--sard-primary); border-radius:12px; margin-bottom:12px; }
.sard-indicator-icon svg { width:24px; height:24px; }
.sard-indicator-value { font-family: var(--sard-font-heading); font-size:36px; font-weight:700; color: var(--sard-primary); line-height:1; }
.sard-indicator-label { font-family: var(--sard-font-body); color: var(--sard-muted); font-size:14px; margin-top:6px; }
.sard-about-text .sard-prose p { font-size: 16px; color: var(--sard-text); line-height: 1.7; margin-bottom: 1.2em; }

/* Services */
.sard-services-grid { display:grid; grid-template-columns: repeat(3, 1fr); gap:24px; }
.sard-service-card { all:unset; cursor:pointer; box-sizing:border-box; display:flex; flex-direction:column; padding:32px; background:#fff; border:1px solid rgba(0,0,0,.06); border-radius:16px; transition: all .3s; text-align:left; }
.sard-service-card:hover { transform: translateY(-4px); box-shadow: 0 20px 40px -20px rgba(0,0,0,.15); border-color: var(--card-color); }
.sard-service-card:focus-visible { outline:2px solid var(--card-color); outline-offset:2px; }
.sard-service-icon { display:inline-flex; width:56px; height:56px; align-items:center; justify-content:center; background: color-mix(in srgb, var(--card-color) 12%, transparent); color: var(--card-color); border-radius:14px; margin-bottom:20px; }
.sard-service-icon svg { width:28px; height:28px; }
.sard-service-card h3 { font-size:20px; }
.sard-service-card p { color: var(--sard-muted); margin:0 0 16px; flex:1; }
.sard-service-more { color: var(--card-color); font-weight:600; font-size:14px; }

/* Differentials */
.sard-diff-grid { display:grid; grid-template-columns: repeat(4, 1fr); gap:24px; }
.sard-diff-card { padding:28px; background:#fff; border:1px solid rgba(0,0,0,.06); border-radius:16px; }
.sard-diff-card h3 { font-size:18px; }
.sard-diff-icon { display:inline-flex; width:48px; height:48px; align-items:center; justify-content:center; background: color-mix(in srgb, var(--card-color) 12%, transparent); color: var(--card-color); border-radius:12px; margin-bottom:16px; }
.sard-diff-icon svg { width:24px; height:24px; }
.sard-diff-text { color: var(--sard-muted); font-size:14px; }
.sard-diff-text p { margin:0; }

/* Partners */
.sard-partners-swiper { 
    margin-top: 48px; 
    padding-top: 12px;
    overflow: hidden;
}
.sard-partners-swiper .swiper-wrapper { display: flex !important; }
.sard-partners-swiper .swiper-slide { display: flex !important; justify-content: center; align-items: center; height: auto; width: 100%; box-sizing: border-box; }

.sard-partners-grid { 
    display: flex; 
    flex-wrap: wrap; 
    justify-content: center; 
    gap: 16px; 
    margin-top: 48px; 
    padding-top: 12px; 
}
.sard-partner-card {
    all: unset; 
    cursor: pointer; 
    box-sizing: border-box; 
    display: flex; 
    flex-direction: column; 
    align-items: center; 
    justify-content: center; 
    padding: 24px 12px; 
    background: #fff; 
    border: 1px solid rgba(0,0,0,.06); 
    border-radius: 12px; 
    min-height: 130px; 
    position: relative; 
    transition: all .25s;
    width: 100%;
}
.sard-partners-grid .sard-partner-card {
    width: calc(100% / 6 - 16px); 
    min-width: 150px; 
    max-width: 200px;
}
.sard-partner-card:hover { border-color: var(--sard-primary); transform: translateY(-4px); box-shadow:0 10px 30px -15px rgba(0,0,0,.2); }
.sard-partner-card img { max-height:50px; width:auto; max-width:100%; object-fit:contain; filter:grayscale(1); transition:filter .25s; margin-bottom:8px; }
.sard-partner-card:hover img { filter:none; }
.sard-partner-initial { width:50px; height:50px; display:flex; align-items:center; justify-content:center; background: color-mix(in srgb, var(--sard-primary) 12%, transparent); color: var(--sard-primary); font-weight:700; font-size:22px; font-family: var(--sard-font-heading); border-radius:10px; margin-bottom:8px; }
.sard-partner-name { font-size:13px; font-weight:500; color: var(--sard-muted); text-align:center; }

.sard-partner-hover { position:absolute; left:50%; bottom:100%; transform: translate(-50%, -6px); background: var(--sard-text); color:#fff; padding:10px 14px; border-radius:8px; font-size:12px; min-width:160px; opacity:0; pointer-events:none; transition: opacity .2s; z-index:5; }
.sard-partner-hover strong { display:block; margin-bottom:4px; }
.sard-partner-hover small { display:block; color: rgba(255,255,255,.75); font-size:11px; }
.sard-partner-card:hover .sard-partner-hover { opacity:1; }
.sard-partners-swiper .swiper-button-prev, .sard-partners-swiper .swiper-button-next { color: var(--sard-primary); }

/* Pillar & Values */
.sard-pillar-item p { font-size: 15px; color: var(--sard-text); line-height: 1.7; margin: 0; }
.sard-value-card p { font-size: 15px; color: var(--sard-text); line-height: 1.6; margin: 0; }

/* Contact */
.sard-contact-grid { display:grid; grid-template-columns: 1fr 1.2fr; gap:64px; align-items:start; }
.sard-contact-image { width:100%; border-radius:16px; margin-bottom:24px; box-shadow: 0 20px 60px -25px rgba(0,0,0,.25); }
.sard-contact-list { list-style:none; padding:0; margin:24px 0 0; display:flex; flex-direction:column; gap:14px; }
.sard-contact-list li { display:flex; align-items:center; gap:10px; color: var(--sard-text); font-weight:500; }
.sard-contact-list svg { width:18px; height:18px; color: var(--sard-primary); }
.sard-contact-form { background:#fff; padding:36px; border:1px solid rgba(0,0,0,.06); border-radius:16px; box-shadow: 0 20px 50px -30px rgba(0,0,0,.15); position:relative; }
.sard-field { margin-bottom:16px; }
.sard-field label { display:block; font-size:14px; font-weight:600; color: var(--sard-text); }
.sard-field input, .sard-field textarea { width:100%; margin-top:6px; padding:12px 14px; font:inherit; color: var(--sard-text); background: var(--sard-surface); border:1px solid rgba(0,0,0,.08); border-radius:10px; transition: border-color .15s; }
.sard-field input:focus, .sard-field textarea:focus { outline:none; border-color: var(--sard-primary); background:#fff; }
.sard-row { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.sard-captcha label { display:flex; align-items:center; gap:10px; flex-wrap:wrap; }
.sard-captcha input[type=number] { width:100px; }
.sard-form-status { margin-top:14px; font-size:14px; }
.sard-form-status.is-success { color:#059669; }
.sard-form-status.is-error { color:#dc2626; }

/* Footer */
.sard-footer { background: #0f172a; color: rgba(255,255,255,.8); padding:64px 0 0; }
.sard-footer-grid { display:grid; grid-template-columns: 1.4fr 1fr 1fr; gap:48px; padding-bottom:48px; }
.sard-footer h4 { color:#fff; font-size:15px; text-transform:uppercase; letter-spacing:.08em; margin-bottom:18px; }
.sard-footer-logo-wrapper img, .sard-footer-logo-wrapper .custom-logo { height:80px; width: auto; margin-bottom:16px; filter: brightness(0) invert(1); }
.sard-footer-logo { height:80px; margin-bottom:16px; filter: brightness(0) invert(1); }
.sard-footer-about { color: rgba(255,255,255,.7); font-size:14px; margin-bottom:18px; }
.sard-footer-menu { list-style:none; padding:0; margin:0; }
.sard-footer-menu li { margin-bottom:10px; }
.sard-footer-menu a { color: rgba(255,255,255,.7); font-size:14px; }
.sard-footer-menu a:hover { color:#fff; opacity:1; }
.sard-footer-contact { list-style:none; padding:0; margin:0; }
.sard-footer-contact li { display:flex; align-items:center; gap:8px; margin-bottom:10px; font-size:14px; }
.sard-footer-contact svg { width:16px; height:16px; color: var(--sard-primary); }
.sard-footer-contact a { color: rgba(255,255,255,.85); }
.sard-social { display:flex; gap:10px; }
.sard-social a { width:36px; height:36px; display:inline-flex; align-items:center; justify-content:center; background: rgba(255,255,255,.08); border-radius:50%; color:#fff; }
.sard-social a:hover { background: var(--sard-primary); }
.sard-social-icon { display:inline-block; width:16px; height:16px; background: currentColor; mask-position:center; mask-repeat:no-repeat; mask-size:contain; }
.sard-social-facebook { mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="%23000" d="M22 12a10 10 0 1 0-11.56 9.88v-6.99H7.9V12h2.54V9.8c0-2.5 1.49-3.89 3.77-3.89 1.09 0 2.24.2 2.24.2v2.47h-1.26c-1.24 0-1.63.77-1.63 1.56V12h2.77l-.44 2.89h-2.33v6.99A10 10 0 0 0 22 12z"/></svg>'); }
.sard-social-instagram { mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="%23000" d="M12 2.16c3.2 0 3.58 0 4.85.07 1.17.05 1.8.25 2.23.41.56.22.96.48 1.38.9.42.42.68.82.9 1.38.16.42.36 1.06.41 2.23.06 1.27.07 1.65.07 4.85s0 3.58-.07 4.85c-.05 1.17-.25 1.8-.41 2.23a3.7 3.7 0 0 1-.9 1.38c-.42.42-.82.68-1.38.9-.42.16-1.06.36-2.23.41-1.27.06-1.65.07-4.85.07s-3.58 0-4.85-.07c-1.17-.05-1.8-.25-2.23-.41a3.7 3.7 0 0 1-1.38-.9 3.7 3.7 0 0 1-.9-1.38c-.16-.42-.36-1.06-.41-2.23C2.18 15.58 2.16 15.2 2.16 12s.02-3.58.07-4.85c.05-1.17.25-1.8.41-2.23.22-.56.48-.96.9-1.38.42-.42.82-.68 1.38-.9.42-.16 1.06-.36 2.23-.41C8.42 2.18 8.8 2.16 12 2.16M12 0C8.74 0 8.33.01 7.05.07 5.78.13 4.9.34 4.14.63 3.36.92 2.7 1.33 2.04 1.99 1.38 2.65.97 3.31.68 4.09.4 4.85.18 5.73.12 7.01.07 8.29.05 8.7.05 12s.02 3.71.07 4.99c.06 1.28.28 2.16.56 2.92.3.79.7 1.45 1.36 2.11.66.66 1.32 1.07 2.11 1.36.76.29 1.64.51 2.92.56 1.28.06 1.69.07 4.99.07s3.71-.01 4.99-.07c1.28-.05 2.16-.27 2.92-.56a5.7 5.7 0 0 0 2.11-1.36c.66-.66 1.07-1.32 1.36-2.11.29-.76.51-1.64.56-2.92.06-1.28.07-1.69.07-4.99s-.01-3.71-.07-4.99c-.05-1.28-.27-2.16-.56-2.92a5.7 5.7 0 0 0-1.36-2.11A5.7 5.7 0 0 0 19.91.63C19.15.34 18.27.13 16.99.07 15.71.01 15.3 0 12 0zm0 5.84a6.16 6.16 0 1 0 0 12.32 6.16 6.16 0 0 0 0-12.32zm0 10.16A4 4 0 1 1 12 8a4 4 0 0 1 0 8zm7.85-10.4a1.44 1.44 0 1 1-2.88 0 1.44 1.44 0 0 1 2.88 0z"/></svg>'); }
.sard-social-linkedin { mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="%23000" d="M19 0H5a5 5 0 0 0-5 5v14a5 5 0 0 0 5 5h14a5 5 0 0 0 5-5V5a5 5 0 0 0-5-5zM8 19H5V8h3v11zM6.5 6.7a1.8 1.8 0 1 1 0-3.6 1.8 1.8 0 0 1 0 3.6zM20 19h-3v-5.6c0-3.4-4-3.1-4 0V19h-3V8h3v1.8c1.4-2.6 7-2.8 7 2.5V19z"/></svg>'); }
.sard-social-youtube { mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="%23000" d="M23.5 6.2a3 3 0 0 0-2.1-2.1C19.5 3.5 12 3.5 12 3.5s-7.5 0-9.4.6A3 3 0 0 0 .5 6.2C0 8.1 0 12 0 12s0 3.9.5 5.8a3 3 0 0 0 2.1 2.1c1.9.6 9.4.6 9.4.6s7.5 0 9.4-.6a3 3 0 0 0 2.1-2.1c.5-1.9.5-5.8.5-5.8s0-3.9-.5-5.8zM9.6 15.6V8.4l6.3 3.6-6.3 3.6z"/></svg>'); }
.sard-footer-bottom { padding:20px 0; border-top:1px solid rgba(255,255,255,.08); text-align:center; font-size:13px; color: rgba(255,255,255,.6); }

/* Modal */
.sard-modal { position:fixed; inset:0; z-index:1000; display:flex; align-items:center; justify-content:center; padding:24px; }
.sard-modal[hidden] { display:none; }
.sard-modal-backdrop { position:absolute; inset:0; background: rgba(15,23,42,.65); backdrop-filter: blur(4px); cursor:pointer; }
.sard-modal-content { position:relative; max-width:760px; width:100%; max-height:90vh; overflow-y:auto; background:#fff; border-radius:16px; padding:40px; box-shadow:0 30px 80px -20px rgba(0,0,0,.4); animation: sardModalIn .25s ease-out; }
.sard-modal-close { position:absolute; top:12px; right:14px; background:none; border:0; font-size:32px; line-height:1; color: var(--sard-muted); cursor:pointer; width:40px; height:40px; border-radius:50%; }
.sard-modal-close:hover { background: var(--sard-surface); color: var(--sard-text); }
.sard-modal-body h2 { margin-top:0; }
.sard-modal-body img { margin: 16px 0; border-radius:12px; }
.sard-modal-body .sard-tech-chips { display:flex; flex-wrap:wrap; gap:8px; margin-top:16px; }
.sard-modal-body .sard-tech-chips span { background: var(--sard-surface); padding:6px 12px; border-radius:20px; font-size:13px; color: var(--sard-muted); }
@keyframes sardModalIn { from { opacity:0; transform:translateY(10px); } to { opacity:1; transform:translateY(0); } }

/* Back link */
.sard-back-link { display:inline-block; margin-bottom:24px; color: var(--sard-muted); font-weight:500; }
.sard-feature-image { width:100%; border-radius:16px; margin: 24px 0 32px; }

/* Responsive Grid Extensions */
@media (max-width: 980px) {
    .sard-nav-desktop { display:none !important; }
    .sard-menu { display: none !important; }
    .sard-burger { display: flex !important; }
    .sard-topbar-right { gap: 12px; }
    .sard-topbar-phone span { display:none !important; }
    .sard-topbar-phone svg { display: block !important; width: 22px; height: 22px; }
    .sard-nav-mobile .sard-topbar-phone span { display: inline !important; }
    .sard-about-grid { grid-template-columns: 1fr; }
    .sard-indicators { grid-template-columns: repeat(2, 1fr); }
    .sard-services-grid { grid-template-columns: 1fr 1fr; }
    .sard-diff-grid { grid-template-columns: 1fr 1fr; }
    .sard-partners-grid { grid-template-columns: repeat(3, 1fr); }
    .sard-contact-grid { grid-template-columns: 1fr; }
    .sard-footer-grid { grid-template-columns: 1fr; }
    .sard-section { padding:64px 0; }
}
@media (max-width: 560px) {
    .sard-services-grid, .sard-diff-grid { grid-template-columns: 1fr; }
    .sard-partners-grid { grid-template-columns: repeat(2, 1fr); }
    .sard-row { grid-template-columns: 1fr; }
    .sard-modal-content { padding:28px 20px; }
    .sard-topbar-right .sard-btn { display:none !important; }
    .sard-nav-mobile .sard-btn { display: flex !important; }
    .sard-partners-swiper .swiper-slide { width: 100% !important; }
    .sard-partner-card { width: 100% !important; max-width: 100% !important; display: flex !important; }
}

/* WhatsApp Widget */
.sard-wa-widget { position: fixed; bottom: 30px; right: 30px; z-index: 9999; display: block !important; }
.sard-wa-trigger { width: 60px; height: 60px; border-radius: 50%; background: #25d366; color: #fff; border: none; cursor: pointer; box-shadow: 0 4px 12px rgba(0,0,0,0.2); display: flex; align-items: center; justify-content: center; transition: transform 0.3s; }
.sard-wa-trigger:hover { transform: scale(1.1); }
.sard-wa-trigger svg { width: 30px; height: 30px; }
.sard-wa-popup { position: absolute; bottom: 80px; right: 0; width: 300px; background: #fff; border-radius: 12px; box-shadow: 0 10px 25px rgba(0,0,0,0.15); overflow: hidden; animation: sardWaIn 0.3s ease-out; }
.sard-wa-header { background: #25d366; color: #fff; padding: 16px; }
.sard-wa-header strong { display: block; font-size: 16px; }
.sard-wa-header p { margin: 4px 0 0; font-size: 13px; opacity: 0.9; }
.sard-wa-form { padding: 16px; display: flex; flex-direction: column; gap: 12px; }
.sard-wa-form input, .sard-wa-form textarea { width: 100%; padding: 10px; border: 1px solid #eee; border-radius: 6px; font-size: 14px; }
.sard-wa-captcha { font-size: 12px; color: #666; }
.sard-wa-captcha input { width: 60px; margin-left: 8px; padding: 4px; }
@keyframes sardWaIn { from { opacity: 0; transform: translateY(20px); } to { opacity: 1; transform: translateY(0); } }
@media (max-width: 560px) {
    .sard-wa-widget { bottom: 20px; right: 20px; }
    .sard-wa-popup { width: 260px; right: -10px; }
}

/* Pillars Section */
.sard-pillars-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 32px; margin-bottom: 64px; }
.sard-pillar-item { background: #fff; padding: 40px; border-radius: 20px; border: 1px solid rgba(0,0,0,0.06); transition: transform 0.3s; }
.sard-pillar-item:hover { transform: translateY(-5px); box-shadow: 0 20px 40px -20px rgba(0,0,0,0.1); }
.sard-pillar-icon { font-size: 40px; margin-bottom: 20px; }
.sard-pillar-item h3 { font-size: 24px; margin-bottom: 16px; color: var(--sard-primary); }
.sard-pillar-item p { color: var(--sard-muted); line-height: 1.7; margin: 0; }

.sard-pillars-values { background: #fff; padding: 60px; border-radius: 24px; border: 1px solid rgba(0,0,0,0.06); }
.sard-pillar-header-values { text-align: center; margin-bottom: 40px; }
.sard-pillar-header-values h3 { font-size: 28px; color: var(--sard-text); }
.sard-values-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 32px; }
.sard-value-card h4 { font-size: 18px; color: var(--sard-primary); margin-bottom: 12px; }
.sard-value-card p { font-size: 15px; color: var(--sard-muted); line-height: 1.6; margin: 0; }

@media (max-width: 980px) {
    .sard-pillars-grid { grid-template-columns: 1fr; }
    .sard-pillars-values { padding: 40px 20px; }
}
/* ===== Indicators (sem ícones, centralizados) ===== */
.sard-indicators-wrap { margin-top: 40px; padding-top: 32px; border-top: 1px solid rgba(0,0,0,.08); }
.sard-indicators-title { text-align:center; font-size:22px; margin-bottom: 24px; color: var(--sard-text); }
.sard-indicators { display:flex; flex-wrap:wrap; justify-content:center; align-items:flex-start; gap: 24px 56px; }
.sard-indicator { text-align:center; padding: 4px 8px; min-width: 120px; }
.sard-indicator-icon { display:none !important; }
.sard-indicator-value { font-family: var(--sard-font-heading); font-size: clamp(36px, 4vw, 52px); font-weight: 800; color: var(--sard-primary); line-height: 1; letter-spacing: -.02em; }
.sard-indicator-label { font-family: var(--sard-font-body); color: var(--sard-muted); font-size: 14px; margin-top: 10px; line-height: 1.3; }
@media (max-width: 560px) {
    .sard-indicators { gap: 20px 32px; }
    .sard-indicator { min-width: 40%; }
}

/* ===== Blog ===== */
.sard-blog-grid { display:grid; grid-template-columns: repeat(3, 1fr); gap: 28px; margin-top: 16px; }
.sard-blog-card { background:#fff; border:1px solid rgba(0,0,0,.06); border-radius:16px; overflow:hidden; display:flex; flex-direction:column; transition: transform .25s, box-shadow .25s; }
.sard-blog-card:hover { transform: translateY(-4px); box-shadow: 0 20px 40px -25px rgba(0,0,0,.18); }
.sard-blog-thumb { display:block; aspect-ratio: 16/10; overflow:hidden; background: var(--sard-surface); }
.sard-blog-thumb img { width:100%; height:100%; object-fit:cover; transition: transform .4s; }
.sard-blog-card:hover .sard-blog-thumb img { transform: scale(1.05); }
.sard-blog-thumb-placeholder { width:100%; height:100%; display:flex; align-items:center; justify-content:center; color: var(--sard-primary); opacity:.5; }
.sard-blog-thumb-placeholder svg { width:48px; height:48px; }
.sard-blog-body { padding: 24px; display:flex; flex-direction:column; gap:10px; flex:1; }
.sard-blog-date { font-size: 12px; color: var(--sard-muted); text-transform: uppercase; letter-spacing: .1em; font-weight: 600; }
.sard-blog-card h3 { font-size: 19px; margin: 0; line-height: 1.35; }
.sard-blog-card h3 a { color: var(--sard-text); }
.sard-blog-card h3 a:hover { color: var(--sard-primary); opacity:1; }
.sard-blog-card p { color: var(--sard-muted); margin: 0 0 8px; font-size: 14.5px; flex:1; }
.sard-blog-more { display:inline-flex; align-items:center; gap:6px; color: var(--sard-primary); font-weight: 600; font-size: 14px; margin-top: auto; }
.sard-blog-more svg { width:16px; height:16px; transition: transform .2s; }
.sard-blog-more:hover svg { transform: translateX(4px); }
.sard-icon-sm { width:16px; height:16px; }
@media (max-width: 980px) { .sard-blog-grid { grid-template-columns: 1fr 1fr; } }
@media (max-width: 640px)  { .sard-blog-grid { grid-template-columns: 1fr; } }

/* ===== Testimonials ===== */
.sard-testimonials-swiper { padding: 16px 4px 56px; }
.sard-testimonial-card { background:#fff; border:1px solid rgba(0,0,0,.06); border-radius:18px; padding: 32px; height: 100%; display:flex; flex-direction:column; gap: 18px; box-shadow: 0 10px 30px -25px rgba(0,0,0,.12); }
.sard-testimonial-stars { display:flex; gap:4px; color: #d1d5db; }
.sard-testimonial-stars .is-on { color: #f59e0b; }
.sard-testimonial-stars svg { fill: currentColor; stroke: currentColor; }
.sard-testimonial-quote { font-size: 16px; line-height: 1.65; color: var(--sard-text); font-style: italic; margin: 0; flex: 1; }
.sard-testimonial-author { display:flex; align-items:center; gap: 14px; padding-top: 14px; border-top:1px solid rgba(0,0,0,.06); }
.sard-testimonial-author img { width:52px; height:52px; border-radius:50%; object-fit:cover; }
.sard-testimonial-initial { width:52px; height:52px; border-radius:50%; background: color-mix(in srgb, var(--sard-primary) 12%, transparent); color: var(--sard-primary); display:flex; align-items:center; justify-content:center; font-weight: 700; font-family: var(--sard-font-heading); font-size: 22px; }
.sard-testimonial-author strong { display:block; color: var(--sard-text); font-size: 15px; }
.sard-testimonial-author small { color: var(--sard-muted); font-size: 13px; }
.sard-testimonials-pag.swiper-pagination { position: relative; margin-top: 16px; }
.sard-testimonials-pag .swiper-pagination-bullet-active { background: var(--sard-primary); }

/* ===== SARD CMS Dashboard ===== */
.sard-dashboard .sard-dashboard-grid { display:grid; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: 16px; margin-top: 24px; }
.sard-dash-card { background:#fff; border:1px solid #dcdcde; border-radius: 8px; padding: 20px; }
.sard-dash-card .dashicons { color: #2563eb; font-size: 28px; width:28px; height:28px; }
.sard-dash-card h3 { margin: 8px 0 4px; }
.sard-dash-card p { margin: 4px 0; color: #50575e; }

/* === v4.0.1 additions === */

/* Testimonials reorder: name -> quote -> stars */
.sard-testimonial-card { display:flex; flex-direction:column; gap:14px; }
.sard-testimonial-card .sard-testimonial-author { order:1; }
.sard-testimonial-card .sard-testimonial-quote  { order:2; margin:0; }
.sard-testimonial-card .sard-testimonial-stars  { order:3; display:flex; gap:2px; }
.sard-testimonial-stars span { color:#d1d5db; line-height:1; }
.sard-testimonial-stars span.is-on { color:#f59e0b; }

/* Footer logo separated */
.sard-footer-logo-wrapper img { max-height:56px; width:auto; height:auto; display:block; margin-bottom:14px; }

/* WhatsApp floating widget v2 */
.sard-wa-widget { position:fixed; right:20px; bottom:20px; z-index:9999; display:flex; flex-direction:column; align-items:flex-end; gap:10px; }
.sard-wa-trigger { width:60px; height:60px; border-radius:50%; background:#25D366; border:0; color:#fff; cursor:pointer; box-shadow:0 10px 30px -8px rgba(37,211,102,.55); display:flex; align-items:center; justify-content:center; transition:transform .2s; }
.sard-wa-trigger:hover { transform:scale(1.06); }
.sard-wa-trigger svg { width:34px; height:34px; }
.sard-wa-bubble { background:#fff; color:#0f172a; border-radius:14px; padding:12px 16px 12px 14px; box-shadow:0 18px 40px -16px rgba(15,23,42,.35), 0 4px 10px -2px rgba(15,23,42,.08); font-size:14px; max-width:240px; position:relative; opacity:0; transform:translateY(8px); transition:opacity .3s, transform .3s; pointer-events:none; }
.sard-wa-bubble.is-on { opacity:1; transform:translateY(0); pointer-events:auto; }
.sard-wa-bubble::after { content:""; position:absolute; right:22px; bottom:-7px; width:14px; height:14px; background:#fff; transform:rotate(45deg); box-shadow:3px 3px 6px -3px rgba(15,23,42,.12); }
.sard-wa-bubble-close { position:absolute; top:4px; right:6px; background:none; border:0; font-size:16px; color:#94a3b8; cursor:pointer; line-height:1; }
.sard-wa-popup { background:#fff; border-radius:14px; padding:16px; box-shadow:0 25px 60px -20px rgba(15,23,42,.4); width:300px; }
.sard-wa-header strong { display:block; font-size:15px; margin-bottom:4px; }
.sard-wa-header p { font-size:13px; color:#64748b; margin:0 0 12px; }
.sard-wa-form input, .sard-wa-form textarea { width:100%; padding:8px 10px; border:1px solid #e5e7eb; border-radius:8px; font-size:14px; margin-bottom:8px; font-family:inherit; }
.sard-wa-captcha label { font-size:13px; color:#64748b; display:flex; align-items:center; gap:8px; }
.sard-wa-captcha input { width:70px !important; margin:0 !important; }

/* Single post — newspaper style */
.sard-article { max-width:780px; margin:0 auto; padding:24px 0 48px; }
.sard-article-header { text-align:center; margin-bottom:36px; padding-bottom:24px; border-bottom:1px solid rgba(0,0,0,.08); }
.sard-article-title { font-size: clamp(28px, 4vw, 44px); line-height:1.15; margin-bottom:12px; }
.sard-article-meta { color: var(--sard-muted); font-size:14px; letter-spacing:.04em; text-transform:uppercase; }
.sard-article-body { font-size:18px; line-height:1.75; color: var(--sard-text); font-family: var(--sard-font-body); }
.sard-article-body > p:first-of-type::first-letter { float:left; font-family: var(--sard-font-heading); font-size: 4.2em; line-height:.9; padding:6px 12px 0 0; font-weight:700; color: var(--sard-primary); }
.sard-article-body p { margin:0 0 1.1em; }
.sard-article-body h2, .sard-article-body h3 { margin-top:1.4em; }
.sard-article-body img { border-radius:10px; }
.sard-article-body img.alignleft, .sard-article-body .alignleft {
    float:left; margin:6px 28px 18px 0; max-width:48%;
    shape-outside: margin-box; shape-margin: 14px;
}
.sard-article-body img.alignright, .sard-article-body .alignright {
    float:right; margin:6px 0 18px 28px; max-width:48%;
    shape-outside: margin-box; shape-margin: 14px;
}
.sard-article-body img.aligncenter, .sard-article-body .aligncenter { display:block; margin:24px auto; }
.sard-article-body .wp-block-image { margin:18px 0; }
.sard-article-body figure.alignleft { float:left; margin:6px 28px 18px 0; max-width:50%; }
.sard-article-body figure.alignright { float:right; margin:6px 0 18px 28px; max-width:50%; }
.sard-article-body figcaption { font-size:13px; color: var(--sard-muted); text-align:center; margin-top:6px; }
.sard-article-body::after { content:""; display:block; clear:both; }
.sard-article-featured { margin:0 -40px 28px; }
.sard-article-featured img { width:500px; border-radius:12px; }
.sard-article-back { display:inline-block; margin-top:32px; font-size:14px; color: var(--sard-primary); }

@media (max-width:600px){
    .sard-article-body img.alignleft, .sard-article-body img.alignright,
    .sard-article-body figure.alignleft, .sard-article-body figure.alignright {
        float:none; max-width:100%; margin:18px 0;
    }
    .sard-article-featured { margin: 0 0 20px; }
}
