/* =========================================================
   ReviewsCart — Design Tokens
   ========================================================= */
:root{
  --ink:#14171F;
  --ink-soft:#3A3F4B;
  --paper:#FBF7F1;
  --surface:#FFFFFF;
  --brand:#E8720C;
  --brand-dark:#C25A02;
  --brand-light:#FFE9D2;
  --brand-tint:#FFF4E8;
  --gold:#F5B301;
  --success:#1F9D66;
  --muted:#6B7280;
  --border:#ECE6DC;
  --border-dark:#262B36;

  --font-display:'Space Grotesk', ui-sans-serif, system-ui, sans-serif;
  --font-body:'Inter', ui-sans-serif, system-ui, sans-serif;

  --radius-sm:10px;
  --radius-md:16px;
  --radius-lg:26px;
  --shadow-sm:0 2px 10px rgba(20,23,31,.06);
  --shadow-md:0 12px 32px rgba(20,23,31,.10);
  --shadow-brand:0 14px 30px rgba(232,114,12,.28);

  --container:1180px;
  --header-h:78px;
}

/* =========================================================
   Reset
   ========================================================= */
*,*::before,*::after{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  margin:0;
  font-family:var(--font-body);
  color:var(--ink);
  background:var(--paper);
  -webkit-font-smoothing:antialiased;
  line-height:1.6;
}
img{max-width:100%;display:block;}
a{color:inherit;text-decoration:none;}
ul{margin:0;padding:0;list-style:none;}
button{font:inherit;cursor:pointer;}
h1,h2,h3,h4{font-family:var(--font-display);font-weight:600;line-height:1.15;margin:0 0 .5em;color:var(--ink);}
p{margin:0 0 1em;}
.screen-reader-text{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px);}
.skip-link{position:absolute;left:-999px;top:0;background:var(--ink);color:#fff;padding:.75em 1.25em;z-index:9999;border-radius:0 0 8px 0;}
.skip-link:focus{left:0;}
:focus-visible{outline:3px solid var(--brand);outline-offset:2px;}
@media (prefers-reduced-motion: reduce){
  *,*::before,*::after{animation-duration:.001ms !important;animation-iteration-count:1 !important;transition-duration:.001ms !important;scroll-behavior:auto !important;}
}

.container{max-width:var(--container);margin:0 auto;padding:0 24px;}

/* =========================================================
   Buttons
   ========================================================= */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  font-family:var(--font-body);font-weight:600;font-size:15px;
  padding:14px 26px;border-radius:999px;border:2px solid transparent;
  transition:transform .18s ease, box-shadow .18s ease, background .18s ease, color .18s ease;
  white-space:nowrap;
}
.btn--brand{background:var(--brand);color:#fff;box-shadow:var(--shadow-brand);}
.btn--brand:hover{background:var(--brand-dark);transform:translateY(-2px);}
.btn--ghost{background:transparent;color:var(--ink);border-color:var(--border);}
.btn--ghost:hover{border-color:var(--brand);color:var(--brand-dark);}
.btn--outline-light{background:transparent;color:#fff;border-color:rgba(255,255,255,.4);}
.btn--outline-light:hover{border-color:#fff;}
.btn--sm{padding:10px 18px;font-size:14px;}
.btn--block{width:100%;}

/* =========================================================
   Icons (inline CSS mask shapes — no icon font dependency)
   ========================================================= */
.icon{width:18px;height:18px;display:inline-block;background:currentColor;flex:none;
  -webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-position:center;mask-position:center;-webkit-mask-size:contain;mask-size:contain;}
.icon--phone{-webkit-mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M6.6 10.8c1.4 2.8 3.8 5.2 6.6 6.6l2.2-2.2c.3-.3.7-.4 1-.2 1.1.4 2.3.6 3.5.6.6 0 1.1.5 1.1 1.1V20c0 .6-.5 1-1.1 1C10.9 21 3 13.1 3 3.1 3 2.5 3.5 2 4.1 2H7.3c.6 0 1.1.5 1.1 1.1 0 1.2.2 2.4.6 3.5.1.4 0 .8-.2 1L6.6 10.8z'/></svg>");mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M6.6 10.8c1.4 2.8 3.8 5.2 6.6 6.6l2.2-2.2c.3-.3.7-.4 1-.2 1.1.4 2.3.6 3.5.6.6 0 1.1.5 1.1 1.1V20c0 .6-.5 1-1.1 1C10.9 21 3 13.1 3 3.1 3 2.5 3.5 2 4.1 2H7.3c.6 0 1.1.5 1.1 1.1 0 1.2.2 2.4.6 3.5.1.4 0 .8-.2 1L6.6 10.8z'/></svg>");}
.icon--whatsapp{-webkit-mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M20.5 3.5A11 11 0 0 0 3 17.4L2 22l4.7-1.2A11 11 0 1 0 20.5 3.5zM12 20.1c-1.7 0-3.3-.5-4.7-1.3l-.3-.2-3 .8.8-2.9-.2-.3A9 9 0 1 1 12 20.1zm4.9-6.5c-.3-.1-1.6-.8-1.8-.9-.2-.1-.4-.1-.6.1-.2.3-.7.9-.8 1-.2.2-.3.2-.5.1-1.5-.7-2.5-1.3-3.4-3-.3-.4.3-.4.7-1.3.1-.2.1-.4 0-.5-.1-.1-.6-1.5-.8-2-.2-.5-.4-.4-.6-.4h-.5c-.2 0-.5.1-.7.3-.2.3-1 1-1 2.4s1 2.8 1.1 3c.1.2 2 3.1 4.9 4.3.7.3 1.2.5 1.6.6.7.2 1.3.2 1.8.1.5-.1 1.6-.6 1.8-1.3.2-.6.2-1.1.2-1.2-.1-.2-.3-.2-.5-.3z'/></svg>");mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M20.5 3.5A11 11 0 0 0 3 17.4L2 22l4.7-1.2A11 11 0 1 0 20.5 3.5zM12 20.1c-1.7 0-3.3-.5-4.7-1.3l-.3-.2-3 .8.8-2.9-.2-.3A9 9 0 1 1 12 20.1zm4.9-6.5c-.3-.1-1.6-.8-1.8-.9-.2-.1-.4-.1-.6.1-.2.3-.7.9-.8 1-.2.2-.3.2-.5.1-1.5-.7-2.5-1.3-3.4-3-.3-.4.3-.4.7-1.3.1-.2.1-.4 0-.5-.1-.1-.6-1.5-.8-2-.2-.5-.4-.4-.6-.4h-.5c-.2 0-.5.1-.7.3-.2.3-1 1-1 2.4s1 2.8 1.1 3c.1.2 2 3.1 4.9 4.3.7.3 1.2.5 1.6.6.7.2 1.3.2 1.8.1.5-.1 1.6-.6 1.8-1.3.2-.6.2-1.1.2-1.2-.1-.2-.3-.2-.5-.3z'/></svg>");}
.icon--check{-webkit-mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M9 16.2 4.8 12l-1.4 1.4L9 19 21 7l-1.4-1.4z'/></svg>");mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M9 16.2 4.8 12l-1.4 1.4L9 19 21 7l-1.4-1.4z'/></svg>");}
.icon--arrow{-webkit-mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M5 12h13M13 6l6 6-6 6'/></svg>");mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M5 12h13M13 6l6 6-6 6'/></svg>");}
.icon--star{-webkit-mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M12 2l3.09 6.26L22 9.27l-5 4.87 1.18 6.88L12 17.77l-6.18 3.25L7 14.14 2 9.27l6.91-1.01L12 2z'/></svg>");mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M12 2l3.09 6.26L22 9.27l-5 4.87 1.18 6.88L12 17.77l-6.18 3.25L7 14.14 2 9.27l6.91-1.01L12 2z'/></svg>");}
.icon--facebook{-webkit-mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M13.5 21v-7.9h2.6l.4-3h-3v-1.9c0-.9.2-1.5 1.5-1.5h1.6V3.9C15.9 3.8 15 3.7 14 3.7c-2.4 0-4 1.5-4 4.1v2.3H7.4v3H10V21h3.5z'/></svg>");mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M13.5 21v-7.9h2.6l.4-3h-3v-1.9c0-.9.2-1.5 1.5-1.5h1.6V3.9C15.9 3.8 15 3.7 14 3.7c-2.4 0-4 1.5-4 4.1v2.3H7.4v3H10V21h3.5z'/></svg>");}
.icon--instagram{-webkit-mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M8 3h8a5 5 0 0 1 5 5v8a5 5 0 0 1-5 5H8a5 5 0 0 1-5-5V8a5 5 0 0 1 5-5zm0 2a3 3 0 0 0-3 3v8a3 3 0 0 0 3 3h8a3 3 0 0 0 3-3V8a3 3 0 0 0-3-3H8zm4 3.5a4.5 4.5 0 1 1 0 9 4.5 4.5 0 0 1 0-9zm0 2a2.5 2.5 0 1 0 0 5 2.5 2.5 0 0 0 0-5zM17.8 6.2a1.1 1.1 0 1 1 0 2.2 1.1 1.1 0 0 1 0-2.2z'/></svg>");mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M8 3h8a5 5 0 0 1 5 5v8a5 5 0 0 1-5 5H8a5 5 0 0 1-5-5V8a5 5 0 0 1 5-5zm0 2a3 3 0 0 0-3 3v8a3 3 0 0 0 3 3h8a3 3 0 0 0 3-3V8a3 3 0 0 0-3-3H8zm4 3.5a4.5 4.5 0 1 1 0 9 4.5 4.5 0 0 1 0-9zm0 2a2.5 2.5 0 1 0 0 5 2.5 2.5 0 0 0 0-5zM17.8 6.2a1.1 1.1 0 1 1 0 2.2 1.1 1.1 0 0 1 0-2.2z'/></svg>");}
.icon--linkedin{-webkit-mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M4.98 3.5a2.5 2.5 0 1 1 0 5 2.5 2.5 0 0 1 0-5zM3 9h4v12H3zM9 9h3.8v1.7h.05c.53-1 1.83-2.05 3.77-2.05 4.03 0 4.78 2.65 4.78 6.1V21h-4v-5.4c0-1.29-.02-2.95-1.8-2.95-1.8 0-2.08 1.4-2.08 2.86V21H9z'/></svg>");mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M4.98 3.5a2.5 2.5 0 1 1 0 5 2.5 2.5 0 0 1 0-5zM3 9h4v12H3zM9 9h3.8v1.7h.05c.53-1 1.83-2.05 3.77-2.05 4.03 0 4.78 2.65 4.78 6.1V21h-4v-5.4c0-1.29-.02-2.95-1.8-2.95-1.8 0-2.08 1.4-2.08 2.86V21H9z'/></svg>");}
.icon--twitter{-webkit-mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M18.9 3H22l-7.3 8.3L23 21h-6.8l-5.3-6.5L4.8 21H1.7l7.8-8.9L1 3h7l4.8 5.9L18.9 3zm-1.2 16h1.9L7.5 5H5.4L17.7 19z'/></svg>");mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M18.9 3H22l-7.3 8.3L23 21h-6.8l-5.3-6.5L4.8 21H1.7l7.8-8.9L1 3h7l4.8 5.9L18.9 3zm-1.2 16h1.9L7.5 5H5.4L17.7 19z'/></svg>");}
.icon--facebook{-webkit-mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M22 12a10 10 0 1 0-11.6 9.9v-7H7.9V12h2.5V9.8c0-2.5 1.5-3.9 3.8-3.9 1.1 0 2.2.2 2.2.2v2.4h-1.3c-1.2 0-1.6.8-1.6 1.6V12h2.8l-.4 2.9h-2.4v7A10 10 0 0 0 22 12z'/></svg>");mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M22 12a10 10 0 1 0-11.6 9.9v-7H7.9V12h2.5V9.8c0-2.5 1.5-3.9 3.8-3.9 1.1 0 2.2.2 2.2.2v2.4h-1.3c-1.2 0-1.6.8-1.6 1.6V12h2.8l-.4 2.9h-2.4v7A10 10 0 0 0 22 12z'/></svg>");}
.icon--instagram{-webkit-mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M12 2.2c2.7 0 3 0 4 .1 1 .1 1.7.2 2.3.5.6.2 1.1.6 1.6 1.1.5.5.8.9 1.1 1.6.2.6.4 1.3.5 2.3.1 1 .1 1.3.1 4s0 3-.1 4c-.1 1-.2 1.7-.5 2.3-.2.6-.6 1.1-1.1 1.6-.5.5-.9.8-1.6 1.1-.6.2-1.3.4-2.3.5-1 .1-1.3.1-4 .1s-3 0-4-.1c-1-.1-1.7-.2-2.3-.5-.6-.2-1.1-.6-1.6-1.1-.5-.5-.8-.9-1.1-1.6-.2-.6-.4-1.3-.5-2.3-.1-1-.1-1.3-.1-4s0-3 .1-4c.1-1 .2-1.7.5-2.3.2-.6.6-1.1 1.1-1.6.5-.5.9-.8 1.6-1.1.6-.2 1.3-.4 2.3-.5 1-.1 1.3-.1 4-.1zM12 7a5 5 0 1 0 0 10 5 5 0 0 0 0-10zm0 2a3 3 0 1 1 0 6 3 3 0 0 1 0-6zm5.2-3.4a1.2 1.2 0 1 0 0 2.4 1.2 1.2 0 0 0 0-2.4z'/></svg>");mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M12 2.2c2.7 0 3 0 4 .1 1 .1 1.7.2 2.3.5.6.2 1.1.6 1.6 1.1.5.5.8.9 1.1 1.6.2.6.4 1.3.5 2.3.1 1 .1 1.3.1 4s0 3-.1 4c-.1 1-.2 1.7-.5 2.3-.2.6-.6 1.1-1.1 1.6-.5.5-.9.8-1.6 1.1-.6.2-1.3.4-2.3.5-1 .1-1.3.1-4 .1s-3 0-4-.1c-1-.1-1.7-.2-2.3-.5-.6-.2-1.1-.6-1.6-1.1-.5-.5-.8-.9-1.1-1.6-.2-.6-.4-1.3-.5-2.3-.1-1-.1-1.3-.1-4s0-3 .1-4c.1-1 .2-1.7.5-2.3.2-.6.6-1.1 1.1-1.6.5-.5.9-.8 1.6-1.1.6-.2 1.3-.4 2.3-.5 1-.1 1.3-.1 4-.1zM12 7a5 5 0 1 0 0 10 5 5 0 0 0 0-10zm0 2a3 3 0 1 1 0 6 3 3 0 0 1 0-6zm5.2-3.4a1.2 1.2 0 1 0 0 2.4 1.2 1.2 0 0 0 0-2.4z'/></svg>");}
.icon--linkedin{-webkit-mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M6.9 8.4H3.6V20h3.3V8.4zM5.3 3.4a1.9 1.9 0 1 0 0 3.8 1.9 1.9 0 0 0 0-3.8zM20.4 20h-3.3v-6.1c0-1.5-.5-2.5-1.8-2.5-1 0-1.6.7-1.9 1.3-.1.2-.1.6-.1.9V20h-3.3s.1-10.6 0-11.6h3.3v1.7c.4-.7 1.2-1.6 3-1.6 2.2 0 3.8 1.4 3.8 4.4V20z'/></svg>");mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M6.9 8.4H3.6V20h3.3V8.4zM5.3 3.4a1.9 1.9 0 1 0 0 3.8 1.9 1.9 0 0 0 0-3.8zM20.4 20h-3.3v-6.1c0-1.5-.5-2.5-1.8-2.5-1 0-1.6.7-1.9 1.3-.1.2-.1.6-.1.9V20h-3.3s.1-10.6 0-11.6h3.3v1.7c.4-.7 1.2-1.6 3-1.6 2.2 0 3.8 1.4 3.8 4.4V20z'/></svg>");}
.icon--twitter{-webkit-mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M18.9 3H21l-6.3 7.2L22.5 21h-6.6l-4.6-6-5.3 6H3l6.7-7.7L2.7 3h6.7l4.2 5.5L18.9 3zm-1.2 16h1.8L8.4 5H6.5l11.2 14z'/></svg>");mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M18.9 3H21l-6.3 7.2L22.5 21h-6.6l-4.6-6-5.3 6H3l6.7-7.7L2.7 3h6.7l4.2 5.5L18.9 3zm-1.2 16h1.8L8.4 5H6.5l11.2 14z'/></svg>");}
.icon--pin{-webkit-mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M12 2a7 7 0 0 0-7 7c0 5.2 7 13 7 13s7-7.8 7-13a7 7 0 0 0-7-7zm0 9.7A2.7 2.7 0 1 1 12 6.3a2.7 2.7 0 0 1 0 5.4z'/></svg>");mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M12 2a7 7 0 0 0-7 7c0 5.2 7 13 7 13s7-7.8 7-13a7 7 0 0 0-7-7zm0 9.7A2.7 2.7 0 1 1 12 6.3a2.7 2.7 0 0 1 0 5.4z'/></svg>");}
.icon--mail{-webkit-mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M4 4h16a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2zm0 2v.01L12 12l8-5.99V6l-8 6-8-6zm0 3.4V18h16V9.4l-8 6-8-6z'/></svg>");mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M4 4h16a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2zm0 2v.01L12 12l8-5.99V6l-8 6-8-6zm0 3.4V18h16V9.4l-8 6-8-6z'/></svg>");}

/* =========================================================
   Header
   ========================================================= */
.site-header{
  position:sticky;top:0;z-index:100;height:var(--header-h);
  display:flex;align-items:center;
  background:rgba(251,247,241,.82);backdrop-filter:blur(14px);
  border-bottom:1px solid var(--border);
  transition:box-shadow .25s ease;
}
.site-header.is-scrolled{box-shadow:var(--shadow-sm);}
.site-header__inner{display:flex;align-items:center;justify-content:space-between;gap:20px;width:100%;}
.site-branding,.site-logo{display:flex;align-items:center;gap:10px;}
.site-logo img{border-radius:8px;}
.site-logo__text{font-family:var(--font-display);font-weight:700;font-size:20px;letter-spacing:-.02em;}
.custom-logo-link img{max-height:44px;width:auto;}

.primary-nav__list{display:flex;flex-wrap:wrap;align-items:center;gap:30px;}
.primary-nav__list a{font-weight:600;font-size:15px;color:var(--ink-soft);position:relative;padding:6px 0;}
.primary-nav__list a:hover{color:var(--brand-dark);}
.primary-nav__list li.current-menu-item > a{color:var(--brand-dark);}

.site-header__actions{display:flex;align-items:center;gap:10px;}
.header-call span:last-child{display:none;}
@media (min-width:1100px){ .header-call span:last-child{display:inline;} }

.menu-toggle{display:none;flex-direction:column;gap:5px;background:none;border:0;padding:8px;}
.menu-toggle span{width:22px;height:2px;background:var(--ink);border-radius:2px;transition:transform .2s ease, opacity .2s ease;}
.menu-toggle[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg);}
.menu-toggle[aria-expanded="true"] span:nth-child(2){opacity:0;}
.menu-toggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}

@media (max-width:960px){
  .primary-nav{position:fixed;inset:var(--header-h) 0 0 0;background:var(--paper);padding:30px 24px;
    transform:translateY(-8px);opacity:0;pointer-events:none;transition:opacity .2s ease, transform .2s ease;overflow-y:auto;}
  .primary-nav.is-open{opacity:1;transform:translateY(0);pointer-events:auto;}
  .primary-nav__list{flex-direction:column;align-items:flex-start;gap:22px;}
  .primary-nav__list a{font-size:20px;}
  .menu-toggle{display:flex;}
  .header-call{display:none;}
}

/* =========================================================
   Layout helpers
   ========================================================= */
.section{padding:96px 0;}
.section--sm{padding:64px 0;}
.section--alt{background:var(--surface);}
.section--dark{background:var(--ink);color:#fff;}
.section--dark h2,.section--dark h3{color:#fff;}
.section-head{max-width:640px;margin:0 auto 56px;text-align:center;}
.section-head.is-left{margin-left:0;text-align:left;}
.eyebrow{
  display:inline-flex;align-items:center;gap:8px;
  font-family:var(--font-body);font-weight:700;font-size:13px;letter-spacing:.08em;text-transform:uppercase;
  color:var(--brand-dark);background:var(--brand-tint);padding:7px 16px;border-radius:999px;margin-bottom:18px;
}
.eyebrow::before{content:'';width:6px;height:6px;border-radius:50%;background:var(--brand);}
.section h2{font-size:clamp(28px,3.4vw,42px);}
.section-sub{color:var(--muted);font-size:17px;}

/* =========================================================
   Hero
   ========================================================= */
section.hero{
  position:relative !important;overflow:hidden !important;
  padding:76px 0 56px !important;
  background:
    radial-gradient(ellipse 900px 500px at 85% -10%, rgba(232,114,12,.30), transparent 60%),
    radial-gradient(ellipse 500px 380px at 4% 105%, rgba(31,157,102,.16), transparent 60%),
    var(--ink) !important;
}
.hero::before{
  content:'';position:absolute;inset:0;pointer-events:none;opacity:.5;
  background-image:radial-gradient(circle, rgba(255,255,255,.12) 1.4px, transparent 1.4px);
  background-size:24px 24px;
  -webkit-mask-image:linear-gradient(180deg, rgba(0,0,0,.5), transparent 70%);
  mask-image:linear-gradient(180deg, rgba(0,0,0,.5), transparent 70%);
}
.hero > .container{position:relative;z-index:1;}
.hero__inner{display:grid;grid-template-columns:1.05fr .95fr;gap:56px;align-items:center;}
.hero__eyebrow{margin-bottom:22px;}
.hero h1{font-size:clamp(34px,4.6vw,58px);letter-spacing:-.02em;color:#fff;}
.hero h1 .hl{color:var(--gold);position:relative;white-space:nowrap;}
.hero__lead{font-size:19px;color:rgba(255,255,255,.78);max-width:520px;}
.hero__ctas{display:flex;flex-wrap:wrap;gap:14px;margin:30px 0 40px;}
.hero .btn--ghost{border-color:rgba(255,255,255,.3);color:#fff;}
.hero .btn--ghost:hover{border-color:#fff;background:rgba(255,255,255,.08);}
.hero__proof{display:flex;flex-wrap:wrap;gap:34px;}
.hero__proof-item{display:flex;flex-direction:column;}
.hero__proof-item strong{font-family:var(--font-display);font-size:26px;color:#fff;}
.hero__proof-item strong .odometer{display:inline-block;}
.hero__proof-item span{font-size:13px;color:rgba(255,255,255,.6);}

/* Signature element: animated rating gauge */
.hero__visual{position:relative;display:flex;align-items:center;justify-content:center;}
.gauge-card{
  position:relative;background:var(--surface);border-radius:var(--radius-lg);
  box-shadow:var(--shadow-md);padding:34px 30px 28px;width:100%;max-width:400px;
  border:1px solid var(--border);
}
.gauge-card__label{font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);text-align:center;margin-bottom:8px;}
.gauge{position:relative;width:100%;max-width:300px;margin:0 auto;}
.gauge svg{width:100%;height:auto;display:block;}
.gauge-track{fill:none;stroke:var(--border);stroke-width:14;stroke-linecap:round;}
.gauge-fill{fill:none;stroke:url(#rc-gauge-gradient);stroke-width:14;stroke-linecap:round;
  stroke-dasharray:251.2;stroke-dashoffset:251.2;transition:stroke-dashoffset 1.6s cubic-bezier(.16,.84,.44,1);}
.gauge-center{position:absolute;left:50%;bottom:6px;transform:translateX(-50%);text-align:center;}
.gauge-center strong{display:block;font-family:var(--font-display);font-size:40px;color:var(--ink);line-height:1;}
.gauge-center .rc-stars{margin-top:6px;}
.gauge-card__foot{display:flex;justify-content:space-between;margin-top:18px;padding-top:18px;border-top:1px dashed var(--border);font-size:13px;color:var(--muted);}
.gauge-card__foot b{color:var(--ink);font-family:var(--font-display);}

.float-badge{position:absolute;background:#fff;border-radius:16px;box-shadow:var(--shadow-md);padding:12px 16px;display:flex;align-items:center;gap:10px;
  font-size:13px;font-weight:700;animation:rc-float 5s ease-in-out infinite;border:1px solid var(--border);}
.float-badge .icon{color:var(--success);}
.float-badge--1{top:-6px;left:-24px;animation-delay:.2s;}
.float-badge--2{bottom:6px;right:-18px;animation-delay:1.2s;}
@keyframes rc-float{0%,100%{transform:translateY(0);}50%{transform:translateY(-10px);}}
@media (max-width:720px){.float-badge{display:none;}}

.rc-stars{display:inline-flex;gap:2px;color:var(--border);}
.rc-star{fill:currentColor;}
.rc-star.is-filled{color:var(--gold);}

@media (max-width:960px){
  .hero__inner{grid-template-columns:1fr;}
  .hero__visual{order:-1;max-width:360px;margin:0 auto;}
}

/* =========================================================
   Trust marquee
   ========================================================= */
.trust-strip{padding:34px 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border);background:var(--surface);overflow:hidden;}
.trust-strip__label{text-align:center;font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-bottom:18px;}
.marquee{display:flex;width:max-content;animation:rc-marquee 28s linear infinite;gap:52px;}
.marquee:hover{animation-play-state:paused;}
.marquee__group{display:flex;gap:52px;align-items:center;}
.marquee__item{display:flex;align-items:center;gap:10px;font-weight:700;color:var(--ink-soft);white-space:nowrap;font-size:15px;}
.marquee__item .icon{color:var(--brand);width:20px;height:20px;}
@keyframes rc-marquee{from{transform:translateX(0);}to{transform:translateX(-50%);}}

/* =========================================================
   Services
   ========================================================= */
.services-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:28px;}
.service-card{
  background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);
  padding:38px 34px;box-shadow:var(--shadow-sm);transition:transform .22s ease, box-shadow .22s ease;
  display:flex;flex-direction:column;
}
.service-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-md);}
.service-card__head{display:flex;align-items:center;gap:18px;margin-bottom:22px;}
.service-card__icon{width:58px;height:58px;border-radius:16px;display:flex;align-items:center;justify-content:center;margin-bottom:0;color:#fff;flex:none;}
.service-card--a .service-card__icon{background:linear-gradient(135deg,var(--brand),var(--brand-dark));}
.service-card--b .service-card__icon{background:linear-gradient(135deg,#1F9D66,#12704A);}
.service-card__icon .icon{width:28px;height:28px;}
.service-card__head h3{margin:0;}
.service-card h3{font-size:24px;}
.service-card p{color:var(--ink-soft);}
.service-card__list{margin:18px 0 26px;display:flex;flex-direction:column;gap:10px;}
.service-card__list li{display:flex;align-items:flex-start;gap:10px;font-size:14.5px;color:var(--ink-soft);}
.service-card__list .icon{color:var(--success);margin-top:3px;}
.service-card__link{margin-top:auto;display:inline-flex;align-items:center;gap:8px;font-weight:700;color:var(--brand-dark);}
.service-card__link .icon{width:16px;height:16px;transition:transform .18s ease;}
.service-card__link:hover .icon{transform:translateX(4px);}
@media (max-width:820px){.services-grid{grid-template-columns:1fr;}}

/* =========================================================
   How it works (timeline)
   ========================================================= */
.timeline{display:grid;grid-template-columns:repeat(4,1fr);gap:26px;counter-reset:step;}
.timeline__step{position:relative;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:30px 24px;}
.timeline__num{font-family:var(--font-display);font-size:15px;font-weight:700;color:var(--brand);
  width:36px;height:36px;border-radius:50%;border:2px solid var(--brand-light);display:flex;align-items:center;justify-content:center;margin-bottom:18px;}
.timeline__step h3{font-size:18px;margin-bottom:8px;}
.timeline__step p{color:var(--muted);font-size:14.5px;margin:0;}
.timeline__connector{display:none;}
@media (min-width:820px){
  .timeline{position:relative;}
  .timeline::before{content:'';position:absolute;top:36px;left:12%;right:12%;height:2px;background:var(--border);z-index:0;}
}
@media (max-width:820px){.timeline{grid-template-columns:1fr;}}

/* =========================================================
   Bento (why choose us)
   ========================================================= */
.bento{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;}
.bento__item{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:28px;}
.bento__item .icon-wrap{width:46px;height:46px;border-radius:12px;background:var(--brand-tint);color:var(--brand-dark);display:flex;align-items:center;justify-content:center;margin-bottom:16px;}
.bento__item h3{font-size:18px;}
.bento__item p{color:var(--muted);font-size:14.5px;margin:0;}
@media (max-width:960px){.bento{grid-template-columns:repeat(2,1fr);}}
@media (max-width:640px){.bento{grid-template-columns:1fr;}}

/* =========================================================
   Stats band
   ========================================================= */
.stats-band{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;text-align:center;}
.stats-band__item strong{display:block;font-family:var(--font-display);font-size:38px;color:#fff;}
.stats-band__item span{color:rgba(255,255,255,.65);font-size:14px;}
@media (max-width:720px){.stats-band{grid-template-columns:repeat(2,1fr);row-gap:36px;}}

/* =========================================================
   Testimonials
   ========================================================= */
.testimonials{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
.testimonial{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:28px;}
.testimonial .rc-stars{margin-bottom:14px;}
.testimonial p{color:var(--ink-soft);font-size:15px;}
.testimonial__author{display:flex;align-items:center;gap:12px;margin-top:16px;}
.testimonial__author img{width:44px;height:44px;border-radius:50%;object-fit:cover;}
.testimonial__avatar{width:44px;height:44px;border-radius:50%;background:var(--brand-tint);color:var(--brand-dark);
  display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-weight:700;font-size:14px;flex:none;}
.testimonial__author strong{display:block;font-size:14.5px;}
.testimonial__author span{font-size:13px;color:var(--muted);}
@media (max-width:960px){.testimonials{grid-template-columns:1fr;}}

/* =========================================================
   Blog cards
   ========================================================= */
.blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;}
.blog-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);overflow:hidden;box-shadow:var(--shadow-sm);transition:transform .2s ease;}
.blog-card:hover{transform:translateY(-4px);}
.blog-card__thumb{aspect-ratio:16/10;overflow:hidden;background:var(--brand-tint);}
.blog-card__thumb img{width:100%;height:100%;object-fit:cover;}
.blog-card--no-thumb{border-top:4px solid var(--brand);}
.blog-card--no-thumb .blog-card__body{padding-top:24px;}
.blog-card__badge{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--brand-dark);background:var(--brand-tint);padding:4px 10px;border-radius:999px;margin-bottom:12px;}
.blog-card__badge .icon{width:11px;height:11px;color:var(--brand-dark);}
.blog-card__body{padding:22px;}
.blog-card__meta{font-size:12.5px;color:var(--muted);text-transform:uppercase;letter-spacing:.05em;font-weight:700;margin-bottom:8px;}
.blog-card h3{font-size:18px;margin-bottom:8px;}
.blog-card h3 a:hover{color:var(--brand-dark);}
.blog-card p{color:var(--muted);font-size:14px;margin:0;}
@media (max-width:960px){.blog-grid{grid-template-columns:1fr;}}

/* =========================================================
   CTA band
   ========================================================= */
.cta-band{
  border-radius:var(--radius-lg);background:linear-gradient(135deg,var(--brand),var(--brand-dark));
  padding:56px;display:flex;align-items:center;justify-content:space-between;gap:30px;flex-wrap:wrap;color:#fff;
}
.cta-band h2{color:#fff;margin-bottom:6px;font-size:30px;}
.cta-band p{color:rgba(255,255,255,.85);margin:0;}
.cta-band__actions{display:flex;gap:14px;flex-wrap:wrap;}
.cta-band .btn--brand{background:#fff;color:var(--brand-dark);box-shadow:none;}
.cta-band .btn--brand:hover{background:var(--ink);color:#fff;}

/* =========================================================
   Footer — namespaced under .rc-footer with defensive resets
   so leftover plugin/old-theme CSS cannot bleed in.
   ========================================================= */
footer.rc-footer,
footer.rc-footer *{
  box-sizing:border-box;
}
footer.rc-footer{
  background:var(--ink) !important;
  color:rgba(255,255,255,.75) !important;
  padding:70px 0 0 !important;
  margin:0 !important;
  border:0 !important;
}
.rc-footer__grid{
  display:grid !important;
  grid-template-columns:1.4fr 1fr 1fr 1.1fr !important;
  gap:40px !important;
  padding:44px 0 50px !important;
  align-items:start !important;
}
.rc-footer__grid:has(.rc-footer__col--widgets){
  grid-template-columns:1.4fr 1fr 1fr 1.1fr 1fr !important;
}
.rc-footer__col{
  border:0 !important;
  background:none !important;
  box-shadow:none !important;
  padding:0 !important;
  margin:0 !important;
}
.rc-footer__logo{
  display:block !important;
  background:#fff !important;
  border-radius:10px !important;
  padding:6px !important;
  width:48px !important;height:32px !important;
  margin:0 0 16px !important;
  border:0 !important;
}
.rc-footer__desc{
  font-size:14.5px !important;
  line-height:1.7 !important;
  color:rgba(255,255,255,.65) !important;
  margin:0 0 18px !important;
  max-width:280px;
}
.rc-footer__social{display:flex !important;gap:10px !important;margin:0 !important;padding:0 !important;}
.rc-footer__social-link{
  width:36px !important;height:36px !important;border-radius:50% !important;
  background:rgba(255,255,255,.08) !important;
  display:flex !important;align-items:center !important;justify-content:center !important;
  color:#fff !important;border:0 !important;box-shadow:none !important;flex:none !important;
  -webkit-mask-size:18px !important;mask-size:18px !important;
  -webkit-mask-repeat:no-repeat !important;mask-repeat:no-repeat !important;
  -webkit-mask-position:center !important;mask-position:center !important;
}
.rc-footer__social-link:hover{background:var(--brand) !important;}

.rc-footer__title{
  color:#fff !important;
  font-family:var(--font-display) !important;
  font-size:15px !important;
  font-weight:600 !important;
  margin:0 0 20px !important;
  padding:0 !important;
  border:0 !important;
  background:none !important;
  display:flex !important;align-items:center !important;gap:9px !important;
}
.rc-footer__title-icon{
  width:26px !important;height:26px !important;border-radius:8px !important;flex:none !important;
  background:rgba(232,114,12,.2) !important;
  display:flex !important;align-items:center !important;justify-content:center !important;
}
.rc-footer__title-icon .icon{width:13px !important;height:13px !important;color:var(--gold) !important;}
.rc-footer__list{
  list-style:none !important;
  margin:0 !important;
  padding:0 !important;
  display:flex !important;
  flex-direction:column !important;
  gap:13px !important;
}
.rc-footer__list li{
  list-style:none !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  background:none !important;
  box-shadow:none !important;
  border-radius:0 !important;
}
.rc-footer__list a{
  display:inline-flex !important;align-items:center !important;gap:0 !important;
  font-size:14.5px !important;
  color:rgba(255,255,255,.68) !important;
  border:0 !important;
  background:none !important;
  box-shadow:none !important;
  padding:0 !important;
  margin:0 !important;
  text-decoration:none !important;
  line-height:1.4 !important;
  transition:color .18s ease, gap .18s ease !important;
}
.rc-footer__list a:hover{color:#fff !important;}
.rc-footer__list--nav a::before{
  content:'';width:5px;height:5px;border-radius:50%;background:var(--brand);flex:none;
  margin-right:10px;transition:background .18s ease;
}
.rc-footer__list--nav a:hover::before{background:var(--gold);}

.rc-footer__col--widgets .footer-widget{margin:0 0 20px;}
.rc-footer__col--widgets .footer-widget-title{color:#fff;font-size:15px;margin-bottom:14px;}

/* ---- Trust strip above the main footer grid ---- */
.rc-footer__trust{
  border-bottom:1px solid rgba(255,255,255,.08) !important;
  background:rgba(255,255,255,.02) !important;
}
.rc-footer__trust-inner{
  display:flex !important;flex-wrap:wrap !important;justify-content:center !important;
  gap:30px !important;padding:20px 0 !important;
}
.rc-footer__trust-item{
  display:flex !important;align-items:center !important;gap:9px !important;
  font-size:13px !important;font-weight:600 !important;color:rgba(255,255,255,.75) !important;
}
.rc-footer__trust-item .icon{width:15px !important;height:15px !important;color:var(--gold) !important;flex:none !important;}

/* ---- Inline contact block under the About column ---- */
.rc-footer__contact-inline{display:flex !important;flex-direction:column !important;gap:11px !important;margin:18px 0 20px !important;}
.rc-footer__contact-inline a,.rc-footer__contact-inline span{
  display:flex !important;align-items:flex-start !important;gap:10px !important;
  font-size:13.5px !important;color:rgba(255,255,255,.68) !important;line-height:1.4 !important;
}
.rc-footer__contact-inline a:hover{color:#fff !important;}
.rc-footer__contact-inline .icon{width:15px !important;height:15px !important;color:var(--brand) !important;flex:none !important;margin-top:2px !important;}

/* ---- Back to top ---- */
.rc-footer__totop{
  width:36px !important;height:36px !important;border-radius:50% !important;flex:none !important;
  background:rgba(255,255,255,.08) !important;display:flex !important;align-items:center !important;justify-content:center !important;
  color:#fff !important;transition:background .18s ease, transform .18s ease !important;
}
.rc-footer__totop:hover{background:var(--brand) !important;transform:translateY(-3px) !important;}
.rc-footer__totop .icon{width:15px !important;height:15px !important;}

.rc-footer .btn--ghost{border-color:rgba(255,255,255,.3) !important;color:#fff !important;}
.rc-footer .btn--ghost:hover{border-color:#fff !important;background:rgba(255,255,255,.08) !important;}
.rc-footer .btn .icon{width:16px;height:16px;}

.rc-footer__bottom{
  border-top:1px solid rgba(255,255,255,.1) !important;
  padding:22px 0 !important;
  margin:0 !important;
  background:none !important;
}
.rc-footer__bottom-inner{
  display:flex !important;
  justify-content:space-between !important;
  align-items:flex-start !important;
  gap:24px !important;
  flex-wrap:wrap !important;
}
.rc-footer__bottom-inner p{
  margin:0 !important;
  font-size:13px !important;
  color:rgba(255,255,255,.5) !important;
  border:0 !important;
  background:none !important;
}
.rc-footer__disclaimer{max-width:640px;text-align:right;}

@media (max-width:960px){
  .rc-footer__grid,
  .rc-footer__grid:has(.rc-footer__col--widgets){grid-template-columns:1fr 1fr !important;row-gap:40px !important;}
  .rc-footer__col--about{grid-column:1 / -1 !important;}
  .rc-footer__disclaimer{text-align:left;}
}
@media (max-width:600px){
  .rc-footer__grid,
  .rc-footer__grid:has(.rc-footer__col--widgets){grid-template-columns:1fr !important;}
  .rc-footer__col--about{grid-column:auto !important;}
  .rc-footer__bottom-inner{flex-direction:column;}
}


.floating-whatsapp{
  position:fixed;bottom:24px;right:24px;width:58px;height:58px;border-radius:50%;
  background:#25D366;color:#fff;display:flex;align-items:center;justify-content:center;
  box-shadow:0 10px 26px rgba(37,211,102,.45);z-index:60;
}
.floating-whatsapp .icon{width:28px;height:28px;}
.floating-whatsapp{animation:rc-pulse 2.6s ease-in-out infinite;}
@keyframes rc-pulse{0%,100%{transform:scale(1);}50%{transform:scale(1.07);}}

/* =========================================================
   Popup modal
   ========================================================= */
.rc-popup{position:fixed;inset:0;z-index:200;display:flex;align-items:center;justify-content:center;padding:20px;
  opacity:0;pointer-events:none;transition:opacity .25s ease;}
.rc-popup.is-open{opacity:1;pointer-events:auto;}
.rc-popup__overlay{position:absolute;inset:0;background:rgba(20,23,31,.55);backdrop-filter:blur(2px);}
.rc-popup__panel{
  position:relative;background:#fff;border-radius:var(--radius-lg);max-width:420px;width:100%;
  padding:30px 28px 28px;box-shadow:0 30px 60px rgba(0,0,0,.3);
  transform:translateY(16px) scale(.98);transition:transform .28s cubic-bezier(.16,.84,.44,1);
}
.rc-popup.is-open .rc-popup__panel{transform:translateY(0) scale(1);}
.rc-popup__close{position:absolute;top:14px;right:14px;width:32px;height:32px;border-radius:50%;border:0;background:var(--paper);font-size:20px;line-height:1;color:var(--muted);}
.rc-popup__close:hover{background:var(--brand-light);color:var(--brand-dark);}
.rc-popup__head{display:flex;gap:12px;align-items:flex-start;margin-bottom:20px;}
.rc-popup__head h3{font-size:19px;margin-bottom:2px;}
.rc-popup__head p{font-size:13.5px;color:var(--muted);margin:0;}
.rc-popup__quick-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;}
.rc-popup__action{display:flex;flex-direction:column;align-items:center;gap:6px;padding:16px 10px;border-radius:14px;border:1px solid var(--border);font-weight:700;font-size:13.5px;color:var(--ink);}
.rc-popup__action .icon{width:22px;height:22px;color:var(--brand);}
.rc-popup__action--whatsapp .icon{color:#25D366;}
.rc-popup__action:hover{border-color:var(--brand);background:var(--brand-tint);}
.rc-popup__divider{display:flex;align-items:center;gap:10px;margin:20px 0 16px;color:var(--muted);font-size:12.5px;text-transform:uppercase;letter-spacing:.05em;}
.rc-popup__divider::before,.rc-popup__divider::after{content:'';flex:1;height:1px;background:var(--border);}

/* =========================================================
   Forms
   ========================================================= */
.rc-form__row{margin-bottom:12px;}
.rc-form input,.rc-form textarea{
  width:100%;padding:13px 15px;border-radius:12px;border:1px solid var(--border);
  font-family:var(--font-body);font-size:14.5px;background:var(--paper);color:var(--ink);
  transition:border-color .18s ease, background .18s ease;
}
.rc-form input:focus,.rc-form textarea:focus{border-color:var(--brand);background:#fff;outline:none;}
.rc-form textarea{resize:vertical;min-height:80px;}
.rc-form__status{font-size:13.5px;margin:10px 0 0;min-height:1.2em;}
.rc-form__status.is-success{color:var(--success);}
.rc-form__status.is-error{color:#D64545;}
.rc-form--cf7 .wpcf7-form-control{width:100%;padding:13px 15px;border-radius:12px;border:1px solid var(--border);margin-bottom:10px;}
.rc-form--cf7 input[type="submit"]{background:var(--brand);color:#fff;border:0;font-weight:700;border-radius:999px;padding:13px;cursor:pointer;}

/* =========================================================
   Page hero (inner pages)
   ========================================================= */
section.page-hero{
  position:relative !important;overflow:hidden !important;
  padding:72px 0 60px !important;
  text-align:center;
  background:
    radial-gradient(ellipse 640px 380px at 12% -15%, rgba(232,114,12,.30), transparent 60%),
    radial-gradient(ellipse 520px 340px at 108% 115%, rgba(31,157,102,.18), transparent 60%),
    var(--ink) !important;
}
.page-hero::before{
  content:'';position:absolute;inset:0;pointer-events:none;opacity:.5;
  background-image:radial-gradient(circle, rgba(255,255,255,.12) 1.4px, transparent 1.4px);
  background-size:22px 22px;
  -webkit-mask-image:linear-gradient(180deg, rgba(0,0,0,.55), transparent 75%);
  mask-image:linear-gradient(180deg, rgba(0,0,0,.55), transparent 75%);
}
.page-hero__decor{
  position:absolute;width:230px;height:230px;border-radius:50%;pointer-events:none;
  background:radial-gradient(circle, rgba(232,114,12,.22), transparent 70%);filter:blur(6px);
}
.page-hero__decor--1{top:-90px;left:-60px;}
.page-hero__decor--2{bottom:-100px;right:-40px;background:radial-gradient(circle, rgba(31,157,102,.22), transparent 70%);}
.page-hero > .container{position:relative;z-index:1;}
.page-hero h1{font-size:clamp(30px,4vw,46px);color:#fff;}
.page-hero p{max-width:620px;margin:0 auto;color:rgba(255,255,255,.78);font-size:17px;}
.breadcrumb{font-size:13.5px;color:rgba(255,255,255,.55);margin-bottom:16px;}
.breadcrumb a{color:#FFC385;font-weight:600;}

/* ---- Split hero variant used on the two service pages: dark background with
   light text, and a light "floating" illustration card for contrast — text +
   a custom on-brand illustration standing in for a "background image related
   to the service", built entirely in CSS/SVG (no stock photography, so
   there's no licensing risk in a client-facing theme). ---- */
section.service-hero{
  position:relative !important;overflow:hidden !important;text-align:left;
  padding:72px 0 84px !important;
  background:
    radial-gradient(ellipse 820px 480px at 88% 0%, rgba(232,114,12,.30), transparent 62%),
    radial-gradient(ellipse 500px 380px at 6% 100%, rgba(31,157,102,.16), transparent 60%),
    var(--ink) !important;
}
.service-hero::before{
  content:'';position:absolute;inset:0;pointer-events:none;opacity:.5;
  background-image:radial-gradient(circle, rgba(255,255,255,.12) 1.4px, transparent 1.4px);
  background-size:24px 24px;
  -webkit-mask-image:linear-gradient(180deg, rgba(0,0,0,.5), transparent 70%);
  mask-image:linear-gradient(180deg, rgba(0,0,0,.5), transparent 70%);
}
.service-hero > .container{position:relative;z-index:1;}
.service-hero__inner{display:grid;grid-template-columns:1.1fr .9fr;gap:52px;align-items:center;}
.service-hero .breadcrumb,.service-hero p{margin-left:0;margin-right:0;}
.service-hero .breadcrumb{color:rgba(255,255,255,.55);}
.service-hero .breadcrumb a{color:#FFC385;}
.service-hero h1{font-size:clamp(30px,4vw,46px);color:#fff;}
.service-hero p{color:rgba(255,255,255,.78);}
.service-hero .btn--ghost{border-color:rgba(255,255,255,.3);color:#fff;}
.service-hero .btn--ghost:hover{border-color:#fff;background:rgba(255,255,255,.08);}
/* Light "floating" illustration cards keep their surface color for strong
   contrast against the dark hero — reinforced with a soft brand-colored glow. */
.service-hero .profile-mock,.service-hero .trust-mock{
  box-shadow:0 24px 60px rgba(0,0,0,.35), 0 0 0 1px rgba(255,255,255,.06);
}
@media (max-width:900px){
  .service-hero__inner{grid-template-columns:1fr;}
  .service-hero__visual{order:-1;max-width:380px;margin:0 auto;}
}

/* Google Reviews hero illustration: a "business profile card" mock */
.profile-mock{
  position:relative;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);
  box-shadow:var(--shadow-md);padding:26px 24px;max-width:380px;margin:0 auto;
}
.profile-mock__top{display:flex;align-items:center;gap:12px;margin-bottom:16px;}
.profile-mock__pin{width:46px;height:46px;border-radius:14px;background:linear-gradient(135deg,var(--brand),var(--brand-dark));display:flex;align-items:center;justify-content:center;flex:none;}
.profile-mock__pin .icon{width:24px;height:24px;color:#fff;}
.profile-mock__name{font-family:var(--font-display);font-weight:700;font-size:16px;color:var(--ink);}
.profile-mock__sub{font-size:12.5px;color:var(--muted);}
.profile-mock__rating{display:flex;align-items:center;gap:10px;padding:14px 0;border-top:1px dashed var(--border);border-bottom:1px dashed var(--border);margin-bottom:16px;}
.profile-mock__rating strong{font-family:var(--font-display);font-size:22px;color:var(--ink);}
.profile-mock__rating span{font-size:12.5px;color:var(--muted);}
.profile-mock__reviewers{display:flex;align-items:center;gap:-6px;}
.profile-mock__avatar{
  width:32px;height:32px;border-radius:50%;background:var(--brand-tint);color:var(--brand-dark);
  display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;
  border:2px solid var(--surface);margin-left:-8px;font-family:var(--font-display);
}
.profile-mock__avatar:first-child{margin-left:0;}
.profile-mock__reviewers-label{font-size:12.5px;color:var(--muted);margin-left:10px;}
.profile-mock__badge{
  position:absolute;top:-14px;right:20px;background:var(--success);color:#fff;font-size:11.5px;font-weight:700;
  padding:6px 14px;border-radius:999px;display:flex;align-items:center;gap:6px;box-shadow:var(--shadow-sm);
}
.profile-mock__badge .icon{width:13px;height:13px;color:#fff;}

/* Trustpilot Reviews hero illustration: a "trust score card" mock */
.trust-mock{
  position:relative;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);
  box-shadow:var(--shadow-md);padding:28px 26px;max-width:380px;margin:0 auto;
}
.trust-mock__head{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px;}
.trust-mock__label{font-size:12.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);}
.trust-mock__shield{width:34px;height:34px;border-radius:10px;background:linear-gradient(135deg,#1F9D66,#12704A);display:flex;align-items:center;justify-content:center;}
.trust-mock__shield .icon{width:18px;height:18px;color:#fff;}
.trust-mock__score{display:flex;align-items:baseline;gap:8px;margin-bottom:6px;}
.trust-mock__score strong{font-family:var(--font-display);font-size:44px;color:var(--ink);line-height:1;}
.trust-mock__score span{font-size:13px;color:var(--muted);}
.trust-mock__tag{display:inline-block;font-size:12px;font-weight:700;color:var(--success);background:rgba(31,157,102,.1);padding:4px 12px;border-radius:999px;margin-bottom:18px;}
.trust-mock__bars{display:flex;flex-direction:column;gap:8px;}
.trust-mock__bar-row{display:flex;align-items:center;gap:10px;font-size:12px;color:var(--muted);}
.trust-mock__bar-track{flex:1;height:6px;border-radius:999px;background:var(--border);overflow:hidden;display:block;}
.trust-mock__bar-fill{display:block;height:100%;border-radius:999px;background:var(--gold);}

/* =========================================================
   Two-column content blocks (service pages)
   ========================================================= */
.split{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;}
.split.is-reverse .split__media{order:2;}
.split__media{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:34px;box-shadow:var(--shadow-sm);}
.split__list{display:flex;flex-direction:column;gap:16px;margin-top:22px;}
.split__list li{display:flex;gap:12px;align-items:flex-start;}
.split__list .icon-wrap{width:30px;height:30px;border-radius:9px;background:var(--brand-tint);color:var(--brand-dark);display:flex;align-items:center;justify-content:center;flex:none;}
@media (max-width:900px){.split{grid-template-columns:1fr;}.split.is-reverse .split__media{order:0;}}

.pricing-note{background:var(--surface);border:1px dashed var(--border);border-radius:var(--radius-md);padding:22px 26px;font-size:14.5px;color:var(--ink-soft);}

/* ---- Mini pricing preview card used in the "How it helps" split section on
   the Google Reviews / Trustpilot Reviews pages — a compact plan summary with
   a direct WhatsApp CTA, so pricing is visible without scrolling to the full
   pricing grid further down the page. ---- */
.mini-pricing-card{
  background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);
  box-shadow:var(--shadow-md);padding:30px 28px;max-width:400px;margin:0 auto;
}
.mini-pricing-card__label{font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-bottom:16px;text-align:center;}
.mini-pricing-card__row{
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  padding:14px 16px;border-radius:12px;margin-bottom:8px;
}
.mini-pricing-card__row:last-of-type{margin-bottom:0;}
.mini-pricing-card__row.is-featured{background:var(--brand-tint);}
.mini-pricing-card__name{font-family:var(--font-display);font-weight:700;font-size:15.5px;color:var(--ink);display:flex;align-items:center;gap:8px;}
.mini-pricing-card__tag{font-size:12.5px;color:var(--muted);text-align:right;}
.mini-pricing-card__badge{
  font-size:10.5px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;
  background:var(--brand);color:#fff;padding:3px 9px;border-radius:999px;
}

/* ---- Pricing tabs (Google Reviews / Trustpilot Reviews toggle) ---- */
.pricing-tabs__nav{display:flex;justify-content:center;gap:8px;margin-bottom:36px;flex-wrap:wrap;}
.pricing-tabs__btn{
  padding:12px 26px;border-radius:999px;border:1.5px solid var(--border);background:var(--surface);
  font-weight:700;font-size:14.5px;color:var(--ink-soft);transition:all .18s ease;
}
.pricing-tabs__btn.is-active{background:var(--brand);border-color:var(--brand);color:#fff;box-shadow:var(--shadow-brand);}
.pricing-tabs__panel{display:none;}
.pricing-tabs__panel.is-active{display:block;animation:rc-fade-in .35s ease;}
@keyframes rc-fade-in{from{opacity:0;transform:translateY(6px);}to{opacity:1;transform:translateY(0);}}

/* =========================================================
   Pricing / package tiers
   ========================================================= */
.pricing-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;align-items:stretch;}
.pricing-card{
  background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);
  padding:24px 22px 22px;display:flex;flex-direction:column;box-shadow:var(--shadow-sm);
  position:relative;transition:transform .2s ease, box-shadow .2s ease;
}
.pricing-card::before{
  content:'';position:absolute;top:0;left:0;right:0;height:4px;
  border-radius:var(--radius-md) var(--radius-md) 0 0;
  background:linear-gradient(90deg,var(--border),var(--border));
}
.pricing-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-md);}
.pricing-card--featured{border-color:var(--brand);box-shadow:var(--shadow-md);}
.pricing-card--featured::before{background:linear-gradient(90deg,var(--gold),var(--brand));}
.pricing-card--featured:hover{transform:translateY(-6px);}
.pricing-card__badge{
  position:absolute;top:-12px;left:50%;transform:translateX(-50%);z-index:2;
  background:linear-gradient(90deg,var(--brand),var(--brand-dark));color:#fff;font-size:10.5px;font-weight:700;
  letter-spacing:.04em;text-transform:uppercase;padding:5px 13px;border-radius:999px;white-space:nowrap;
  box-shadow:var(--shadow-brand);
}
.pricing-card__icon{
  width:30px;height:30px;border-radius:9px;display:flex;align-items:center;justify-content:center;
  background:var(--brand-tint);color:var(--brand-dark);float:left;margin:1px 10px 0 0;
}
.pricing-card--featured .pricing-card__icon{background:linear-gradient(135deg,var(--brand),var(--brand-dark));color:#fff;}
.pricing-card__icon .icon{width:14px;height:14px;}
.pricing-card h3{font-size:18px;line-height:30px;margin:0;}
.pricing-card__tagline{clear:both;color:var(--muted);font-size:13px;margin:8px 0 16px;min-height:2.4em;line-height:1.4;}
.pricing-card__list{display:flex;flex-direction:column;gap:9px;margin-bottom:20px;flex:1;}
.pricing-card__list li{display:flex;align-items:flex-start;gap:8px;font-size:13px;color:var(--ink-soft);line-height:1.35;}
.pricing-card__list .icon{color:var(--success);margin-top:3px;flex:none;width:15px;height:15px;}
/* Professional solid CTA on every tier — featured stays brand orange,
   the other two use a solid dark button instead of a plain outline. */
.pricing-card .btn{padding:11px 20px;font-size:13.5px;}
.pricing-card .btn--ghost{background:var(--ink);color:#fff;border-color:var(--ink);}
.pricing-card .btn--ghost:hover{background:#000;border-color:#000;}
@media (max-width:960px){.pricing-grid{grid-template-columns:1fr;}.pricing-card--featured:hover{transform:translateY(-4px);}}

/* ---- Plan Finder — a legitimate configurator: recommends a service tier
   based on business size / request volume. No per-item quantity, no price-
   per-unit, no checkout — just a guided recommendation toward "Get a Quote". ---- */
.plan-finder{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:34px 32px;box-shadow:var(--shadow-sm);max-width:820px;margin:0 auto 56px;}
.plan-finder__head{text-align:center;margin-bottom:26px;}
.plan-finder__head h3{font-size:20px;margin-bottom:6px;}
.plan-finder__head p{color:var(--muted);font-size:14px;margin:0;}
.plan-finder__row{margin-bottom:22px;}
.plan-finder__row label.plan-finder__q{display:block;font-weight:700;font-size:14px;margin-bottom:12px;}
.plan-finder__options{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;}
.plan-finder__option{position:relative;}
.plan-finder__option input{position:absolute;opacity:0;pointer-events:none;}
.plan-finder__option span{
  display:block;text-align:center;padding:12px 10px;border-radius:12px;border:1.5px solid var(--border);
  font-size:13.5px;font-weight:600;color:var(--ink-soft);cursor:pointer;transition:border-color .15s ease, background .15s ease, color .15s ease;
}
.plan-finder__option input:checked + span{border-color:var(--brand);background:var(--brand-tint);color:var(--brand-dark);}
.plan-finder__result{
  display:none;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;
  background:var(--brand-tint);border-radius:var(--radius-md);padding:20px 24px;margin-top:8px;
}
.plan-finder__result.is-visible{display:flex;}
.plan-finder__result-text{font-size:14.5px;color:var(--ink);}
.plan-finder__result-text strong{font-family:var(--font-display);color:var(--brand-dark);}
@media (max-width:640px){.plan-finder__options{grid-template-columns:1fr;}}

/* =========================================================
   FAQ accordion
   ========================================================= */
.faq-list{max-width:800px;margin:0 auto;display:flex;flex-direction:column;gap:14px;}
.faq-item{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);overflow:hidden;}
.faq-item summary{cursor:pointer;list-style:none;padding:20px 24px;font-weight:600;font-size:15.5px;display:flex;justify-content:space-between;align-items:center;gap:16px;}
.faq-item summary::-webkit-details-marker{display:none;}
.faq-item summary::after{content:'+';font-size:22px;font-weight:400;color:var(--brand);flex:none;line-height:1;}
.faq-item[open] summary::after{content:'\2212';}
.faq-item__body{padding:0 24px 20px;color:var(--ink-soft);font-size:14.5px;}

/* =========================================================
   Topic chips (blog)
   ========================================================= */
.topic-chips{display:flex;flex-wrap:wrap;margin:-5px;margin-bottom:10px;}
.topic-chips a{margin:5px;padding:8px 16px;border-radius:999px;border:1px solid var(--border);font-size:13.5px;font-weight:600;color:var(--ink-soft);background:var(--surface);}
.topic-chips a:hover{border-color:var(--brand);color:var(--brand-dark);}

/* =========================================================
   Comparison table (DIY vs ReviewsCart)
   ========================================================= */
.compare-table{width:100%;border-collapse:collapse;background:var(--surface);border-radius:var(--radius-md);overflow:hidden;box-shadow:var(--shadow-sm);}
.compare-table th,.compare-table td{padding:16px 20px;text-align:left;font-size:14.5px;border-bottom:1px solid var(--border);}
.compare-table th{font-family:var(--font-display);font-weight:600;background:var(--paper);}
.compare-table td:not(:first-child),.compare-table th:not(:first-child){text-align:center;}
.compare-table tr:last-child td{border-bottom:0;}
.compare-table .icon--check{color:var(--success);}
.compare-table .cell-no{color:var(--muted);}
.compare-table .col-highlight{background:var(--brand-tint);}

/* =========================================================
   Blog single post — content box (matches sidebar widget card
   treatment so the two columns feel visually consistent)
   ========================================================= */
.post-box{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow:hidden;}
.post-box__thumb{width:100%;aspect-ratio:16/8;overflow:hidden;background:var(--brand-tint);}
.post-box__thumb img{width:100%;height:100%;object-fit:cover;display:block;margin:0;}
.post-box__content{padding:40px 44px 44px;}
.post-box__tags{margin-top:34px;padding-top:24px;border-top:1px solid var(--border);display:flex;align-items:center;gap:10px;flex-wrap:wrap;}
.post-box__tags-label{font-size:13px;font-weight:700;color:var(--muted);}
@media (max-width:640px){.post-box__content{padding:28px 22px 32px;}}

.related-posts{margin-top:56px;}
.related-posts h2{font-size:22px;margin-bottom:26px;}

/* =========================================================
   Blog single / archive
   ========================================================= */
.content-layout{display:grid;grid-template-columns:2.2fr 1fr;gap:50px;align-items:start;}
@media (max-width:900px){.content-layout{grid-template-columns:1fr;}}
.post-list{display:flex;flex-direction:column;gap:34px;}
.post-list article{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:28px;}
.post-list h2{font-size:22px;}
.post-meta{font-size:12.5px;color:var(--muted);text-transform:uppercase;letter-spacing:.05em;font-weight:700;margin-bottom:10px;}
.pagination{display:flex;gap:10px;margin-top:20px;}
.pagination a,.pagination span{padding:10px 16px;border:1px solid var(--border);border-radius:10px;font-weight:600;font-size:14px;}
.pagination .current{background:var(--brand);color:#fff;border-color:var(--brand);}

.entry-content{font-size:16.5px;color:var(--ink-soft);}
.entry-content h2{margin-top:1.6em;}
.entry-content p{margin-bottom:1.3em;}
.entry-content img{border-radius:var(--radius-md);}
.entry-content ul,.entry-content ol{margin:0 0 1.3em;padding-left:1.4em;}
.entry-content ul{list-style:disc;}
.entry-content ol{list-style:decimal;}

.blog-content-box{
  background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);
  padding:40px 44px;box-shadow:var(--shadow-sm);
}
.blog-content-box .entry-content > *:last-child{margin-bottom:0;}
.blog-content-box__tags{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:34px;padding-top:26px;border-top:1px solid var(--border);}
.blog-content-box__tags strong{font-size:13.5px;color:var(--ink-soft);margin-right:4px;}
.author-box{
  display:flex;align-items:center;gap:16px;margin-top:30px;padding-top:26px;border-top:1px solid var(--border);
}
.author-box__avatar{
  width:52px;height:52px;border-radius:50%;background:var(--brand-tint);color:var(--brand-dark);
  display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-weight:700;font-size:17px;flex:none;
}
.author-box__name{font-family:var(--font-display);font-weight:700;font-size:15px;color:var(--ink);}
.author-box__role{font-size:13px;color:var(--muted);}
@media (max-width:640px){.blog-content-box{padding:28px 24px;}}

.related-posts{margin-top:44px;}
.related-posts h3{font-size:20px;margin-bottom:20px;}
.related-posts__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}
@media (max-width:820px){.related-posts__grid{grid-template-columns:1fr;}}

.widget{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:22px;margin-bottom:22px;}
.widget-title{font-size:15px;}

/* Sticky sidebar on blog listing + single post pages (desktop only — on
   narrower screens the layout stacks to one column, where sticky doesn't
   make sense). */
@media (min-width:901px){
  .rc-sticky-aside{position:sticky;top:calc(var(--header-h) + 24px);}
}

.widget-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px;}
.widget-list li{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 0;border-bottom:1px solid var(--border);}
.widget-list li:last-child{border-bottom:0;padding-bottom:0;}
.widget-list a{font-size:14px;font-weight:600;color:var(--ink-soft);}
.widget-list a:hover{color:var(--brand-dark);}
.widget-list__count{font-size:12px;font-weight:700;color:var(--muted);background:var(--paper);padding:2px 9px;border-radius:999px;flex:none;}

.widget-post-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:16px;}
.widget-post-list li{display:flex;align-items:center;gap:12px;}
.widget-post-list__thumb{
  width:56px;height:56px;border-radius:10px;overflow:hidden;flex:none;
  background:linear-gradient(135deg,var(--brand-tint),var(--paper));
  display:flex;align-items:center;justify-content:center;
}
.widget-post-list__thumb img{width:100%;height:100%;object-fit:cover;}
.widget-post-list__thumb .icon{width:20px;height:20px;color:var(--brand);opacity:.6;}
.widget-post-list__title{display:block;font-size:13.5px;font-weight:600;color:var(--ink);line-height:1.35;margin-bottom:4px;}
.widget-post-list__title:hover{color:var(--brand-dark);}
.widget-post-list__date{font-size:11.5px;color:var(--muted);}

/* =========================================================
   404
   ========================================================= */
.error-404{text-align:center;padding:110px 0;}
.error-404 h1{font-size:clamp(60px,10vw,120px);color:var(--brand-light);margin-bottom:0;}

/* =========================================================
   Reveal-on-scroll
   ========================================================= */
.reveal{opacity:0;transform:translateY(18px);transition:opacity .6s ease, transform .6s ease;}
.reveal.is-visible{opacity:1;transform:translateY(0);}
