/*
Theme Name: Blocksy Child
Theme URI: https://creativethemes.com/blocksy/
Template: blocksy
Author: CreativeThemes
Author URI: https://creativethemes.com
Description: Blocksy is a fast, modern WordPress theme with advanced WooCommerce support and full compatibility with the block editor.
Tags: accessibility-ready,blog,block-patterns,e-commerce,wide-blocks,block-styles,grid-layout,one-column,two-columns,three-columns,four-columns,right-sidebar,left-sidebar,translation-ready,custom-colors,custom-logo,custom-menu,featured-images,footer-widgets,full-width-template,theme-options,threaded-comments
Version: 2.1.44.1781226522
Updated: 2026-06-12 01:08:42

*/

:root {
    --ink: #0a2a36;
    --teal: #1fb8a0;
    --teal-d: #178a78;
    --teal-l: #e4f7f4;
    --slate: #f4f7f8;
    --border: #dde6ea;
    --muted: #5b7f8e;
    --white: #fff;
    --font-heading: 'DM Sans', sans-serif;
    --font-body: 'Montserrat', sans-serif;
    --r: 10px;
    --rl: 16px;
    --rxl: 24px;
    --ink: #1c4f64;
}
body {
    background-color: var white;
    font-family: var(--font-body);
    font-weight: 400;
    font-size: 15px;
    color: var(--ink);
    line-height: 1.65;
}
h1 {
    font-size: clamp(36px, 5vw,   58px);
}
h2 {
    font-size: clamp(28px, 4vw,   42px);
}
h3 {
    font-size: clamp(20px, 2.5vw, 26px);
}
h4 {
    font-size: 18px;
}
h5 {
    font-size: 16px;
}
h6 {
    font-size: 14px;
}
h1, h2, h3, h4, h5, h6 {
    margin-bottom: 0.5em;
    font-family: var(--font-heading);
    font-weight: 700;
    color: var(--ink);
    line-height: 1.1;
    letter-spacing: -0.03em;
}
a:hover {
    color: var(--teal-d);
}
label {
    display: block;
    margin-bottom: 6px;
    font-family: var(--font-body);
    font-weight: 700;
    font-size: 11px;
    color: var(--ink);
    letter-spacing: 0.5px;
    text-transform: uppercase;
}
.h-regular {
    font-weight: 400;
}
p {
    margin-bottom: 1em;
    font-family: var(--font-body);
    font-weight: 400;
    font-size: 15px;
    color: var(--muted);
    line-height: 1.68;
}
.lead {
    font-size: 18px;
    color: var(--muted);
    line-height: 1.7;
}
.text-small {
    font-size: 13px;
    line-height: 1.6;
}
a {
    -moz-transition: color 0.15s ease;
    -webkit-transition: color 0.15s ease;
    -o-transition: color 0.15s ease;
    transition: color 0.15s ease;
    color: var(--teal);
    text-decoration: none;
}
.btn, button, input[type="submit"], input[type="button"] {
    display: inline-flex;
    -moz-transition: all 0.15s ease;
    -webkit-transition: all 0.15s ease;
    -o-transition: all 0.15s ease;
    transition: all 0.15s ease;
    -moz-border-radius: var(--r);
    -webkit-border-radius: var(--r);
    -o-border-radius: var(--r);
    border-radius: var(--r);
    border: none;
    font-family: var(--font-body);
    font-weight: 700;
    font-size: 15px;
    line-height: 1;
    letter-spacing: 0.01em;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    padding: 13px 24px;
}
.btn-primary {
    background-color: var teal;
    color: var(--white);
}
.btn-primary:hover {
    -moz-transform: translateY(-1px);
    -webkit-transform: translateY(-1px);
    -o-transform: translateY(-1px);
    transform: translateY(-1px);
    background-color: var teal d;
    color: var(--white);
}
.btn-dark {
    background-color: var ink;
    color: var(--white);
}
.btn-dark:hover {
    background-color: var ink;
    color: var(--white);
}
.btn-outline {
    background-color: transparent;
    border: 1.5px solid var(--border);
    color: var(--ink);
}
.btn-outline:hover {
    border-color: var(--ink);
}
.btn-ghost-white {
    background-color: transparent;
    border: 1.5px solid rgba(255,255,255,0.2);
    color: rgba(255,255,255,0.75);
}
.btn-ghost-white:hover {
    color: #fff;
    border-color: rgba(255,255,255,0.5);
}
.btn-lg {
    font-size: 16px;
    padding: 16px 32px;
}
.btn-sm {
    font-size: 13px;
    padding: 9px 16px;
}
.section-label {
    display: block;
    margin-bottom: 12px;
    font-family: var(--font-body);
    font-weight: 700;
    font-size: 11px;
    color: var(--teal);
    letter-spacing: 1.5px;
    text-transform: uppercase;
}
.container {
    max-width: 1200px;
    padding: 0 5%;
    margin: 0 auto;
}
.section-pad {
    padding: 88px 5%;
}
.section-pad-sm {
    padding: 56px 5%;
}
.text-center {
    text-align: center;
}
.text-left {
    text-align: left;
}
.bg-dark {
    background-color: var ink;
}
.bg-slate {
    background-color: var slate;
}
.bg-white {
    background-color: var white;
}
.bg-teal {
    background-color: var teal;
}
.text-white {
    color: #fff;
}
.text-muted {
    color: var(--muted);
}
.text-teal {
    color: var(--teal);
}
.text-ink {
    color: var(--ink);
}
.rounded {
    -moz-border-radius: var(--r);
    -webkit-border-radius: var(--r);
    -o-border-radius: var(--r);
    border-radius: var(--r);
}
.rounded-lg {
    -moz-border-radius: var(--rl);
    -webkit-border-radius: var(--rl);
    -o-border-radius: var(--rl);
    border-radius: var(--rl);
}
.rounded-xl {
    -moz-border-radius: var(--rxl);
    -webkit-border-radius: var(--rxl);
    -o-border-radius: var(--rxl);
    border-radius: var(--rxl);
}
.border {
    border: 1px solid var(--border);
}
.shadow-sm {
    -moz-box-shadow: 0 2px 8px rgba(10,42,54,0.06);
    -webkit-box-shadow: 0 2px 8px rgba(10,42,54,0.06);
    -o-box-shadow: 0 2px 8px rgba(10,42,54,0.06);
    box-shadow: 0 2px 8px rgba(10,42,54,0.06);
}
.shadow-md {
    -moz-box-shadow: 0 8px 24px rgba(10,42,54,0.1);
    -webkit-box-shadow: 0 8px 24px rgba(10,42,54,0.1);
    -o-box-shadow: 0 8px 24px rgba(10,42,54,0.1);
    box-shadow: 0 8px 24px rgba(10,42,54,0.1);
}
#site-header, .main-navigation {
    font-family: var(--font-body);
    font-weight: 500;
    font-size: 14px;
}
input[type="text"], input[type="email"], input[type="password"], input[type="tel"], select, textarea {
    -moz-transition: border-color 0.15s ease, box-shadow 0.15s ease;
    -webkit-transition: border-color 0.15s ease, box-shadow 0.15s ease;
    -o-transition: border-color 0.15s ease, box-shadow 0.15s ease;
    transition: border-color 0.15s ease, box-shadow 0.15s ease;
    -moz-border-radius: var(--r);
    -webkit-border-radius: var(--r);
    -o-border-radius: var(--r);
    border-radius: var(--r);
    background-color: var white;
    width: 100%;
    border: 1.5px solid var(--border);
    font-family: var(--font-body);
    font-size: 14px;
    color: var(--ink);
    outline: none;
    -webkit-appearance: none;
    padding: 11px 14px;
}
input:focus, select:focus, textarea:focus {
    border-color: var(--teal);
    -moz-box-shadow: 0 0 0 3px rgba(31,184,160,0.1);
    -webkit-box-shadow: 0 0 0 3px rgba(31,184,160,0.1);
    -o-box-shadow: 0 0 0 3px rgba(31,184,160,0.1);
    box-shadow: 0 0 0 3px rgba(31,184,160,0.1);
}
.woocommerce, .woocommerce-page {
    font-family: var(--font-body);
}
.woocommerce h1, .woocommerce h2, .woocommerce h3 {
    font-family: var(--font-heading);
}
.woocommerce a.button, .woocommerce button.button, .woocommerce input.button, .woocommerce #respond input#submit {
    -moz-transition: all 0.15s;
    -webkit-transition: all 0.15s;
    -o-transition: all 0.15s;
    transition: all 0.15s;
    -moz-border-radius: var(--r);
    -webkit-border-radius: var(--r);
    -o-border-radius: var(--r);
    border-radius: var(--r);
    background-color: var teal;
    font-family: var(--font-body);
    font-weight: 700;
    color: #fff;
    padding: 13px 24px;
}
.woocommerce a.button:hover, .woocommerce button.button:hover {
    background-color: var teal d;
    color: #fff;
}
@media (max-width: 768px) {
.section-pad {
    padding: 64px 24px;
}
.section-pad-sm {
    padding: 40px 24px;
}
h1 {
    letter-spacing: -0.04em;
}
h2 {
    letter-spacing: -0.03em;
}
}

/* ══════════════════════════════════════
   TENDY HEADER OVERRIDES
   Targets GeneratePress — adjust class
   names if using a different theme
   ══════════════════════════════════════ */

/* ── Header wrap ──────────────────── */
.site-header,
#site-header {
  position: sticky;
  top: 0;
  z-index: 1000;
  background: rgba(255, 255, 255, 0.97) !important;
  border-bottom: 1px solid var(--border);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  height: 72px;
  display: flex;
  align-items: center;
  padding: 0 5%;
  transition: box-shadow 0.2s ease;
}

/* ── Logo ─────────────────────────── */
.site-branding img,
.custom-logo {
  height: 36px !important;
  width: auto !important;
}

/* ── Nav links ────────────────────── */
.main-navigation a,
.primary-navigation a {
  font-family: var(--font-body) !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  color: var(--muted) !important;
  padding: 8px 14px !important;
  border-radius: 8px !important;
  transition: all 0.15s ease !important;
  text-decoration: none !important;
}

.main-navigation a:hover,
.primary-navigation a:hover,
.main-navigation .current-menu-item > a,
.primary-navigation .current-menu-item > a {
  color: var(--ink) !important;
  background: var(--slate) !important;
}

/* ── CTA button ───────────────────── */
.header-button a,
.wp-block-button__link {
  font-family: var(--font-body) !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  color: #fff !important;
  background: var(--teal) !important;
  border: none !important;
  border-radius: 8px !important;
  padding: 10px 22px !important;
  transition: all 0.15s ease !important;
  text-decoration: none !important;
}

.header-button a:hover {
  background: var(--teal-d) !important;
  transform: translateY(-1px) !important;
}