/* RenoQuantix homepage — single source of visual truth.
   No legacy override stack, no !important patches. */

.scheme-b-responsive-semantic { display:block; width:100%; }

body.home-scheme-b-exact { background:#f6f3ec; }
body.home-scheme-b-exact .b-hero .container,
body.home-scheme-b-exact .b-popular.container {
  width:min(calc(100% - 64px),1286px);
  max-width:1286px;
  margin-inline:auto;
}

.b-hero {
  background:#f7f3e8;
  border-bottom:1px solid #e6e0d4;
  overflow:hidden;
}
.b-hero-grid {
  min-height:530px;
  display:grid;
  grid-template-columns:740px 546px;
  gap:0;
  padding:0;
  position:relative;
  align-items:start;
}
.b-hero-grid::before {
  content:"";
  position:absolute;
  inset:0;
  background:
    repeating-linear-gradient(0deg,rgba(65,83,73,.042) 0 1px,transparent 1px 24px),
    repeating-linear-gradient(90deg,rgba(65,83,73,.042) 0 1px,transparent 1px 24px);
  pointer-events:none;
}
.b-hero-copy {
  min-width:0;
  position:relative;
  z-index:2;
  align-self:start;
  padding:54px 0 0;
}
.b-kicker {
  font-size:1.30rem;
  line-height:1.1;
  letter-spacing:.038em;
  margin:0 0 36px;
  font-weight:900;
  color:#111514;
}
.b-hero h1 {
  font-size:5.25rem;
  line-height:.90;
  letter-spacing:-.058em;
  margin:0 0 40px;
  max-width:820px;
  color:#111514;
}
.b-hero-copy > p:not(.b-kicker) {
  max-width:790px;
  font-size:1.60rem;
  line-height:1.28;
  margin:0 0 32px;
  color:#202521;
}
.b-search {
  width:810px;
  max-width:100%;
  height:80px;
  display:grid;
  grid-template-columns:minmax(0,1fr) 80px;
  border-radius:8px;
  background:#fff;
  border:1px solid #daddd7;
  box-shadow:0 5px 14px rgba(31,41,35,.10);
  overflow:hidden;
}
.b-search input {
  border:0;
  outline:0;
  background:transparent;
  padding:0 19px;
  font-size:1.48rem;
  color:#303632;
}
.b-search button {
  min-width:80px;
  border:0;
  border-radius:0;
  background:#1f6b55;
  color:#fff;
  display:grid;
  place-items:center;
}
.b-search button .rq-icon {
  width:29px;
  height:29px;
  stroke-width:2;
}
.b-hero-visual {
  width:546px;
  min-width:546px;
  margin-top:43px;
  position:relative;
  z-index:1;
  align-self:start;
  display:flex;
  align-items:flex-start;
  justify-content:flex-end;
  overflow:visible;
}
.b-hero-original-art {
  display:block;
  width:546px;
  height:auto;
  object-fit:contain;
  object-position:right top;
}

.b-trust-strip {
  min-height:136px;
  display:grid;
  grid-template-columns:200px 190px 265px 210px;
  column-gap:20px;
  align-items:center;
  justify-content:start;
  padding:0 0 0 15px;
  position:relative;
  z-index:3;
}
.b-trust-strip > div {
  display:flex;
  align-items:center;
  gap:11px;
  min-width:0;
}
.b-benefit-icon {
  width:64px;
  height:62px;
  flex:0 0 64px;
  color:#1768b5;
  display:grid;
  place-items:center;
}
.b-benefit-icon .rq-icon {
  width:54px;
  height:56px;
  stroke-width:1.9;
}
.b-trust-strip strong {
  font-size:1.46rem;
  line-height:1.08;
  color:#111514;
  font-weight:780;
}

.b-popular {
  padding-top:28px;
  padding-bottom:38px;
}
.b-section-head {
  display:flex;
  align-items:end;
  justify-content:space-between;
  margin-bottom:21px;
}
.b-section-head h2 {
  font-size:3.45rem;
  line-height:1;
  letter-spacing:-.045em;
  margin:0;
  color:#101312;
}
.b-section-head a {
  font-size:1.18rem;
  line-height:1;
  font-weight:700;
  color:#175ea8;
  text-decoration:none;
  padding-bottom:5px;
}
.b-tool-grid {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  column-gap:25px;
  row-gap:24px;
}
.b-tool-card {
  display:block;
  border:1px solid #d7dbd6;
  border-radius:11px;
  overflow:hidden;
  background:#fff;
  text-decoration:none;
  color:#111514;
  box-shadow:0 1px 2px rgba(21,32,26,.035);
  min-width:0;
}
.b-tool-image {
  width:100%;
  height:190px;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
  background:linear-gradient(180deg,#f8f6ef 0%,#f3efe6 100%);
  border-bottom:1px solid #ece9e1;
}
.b-tool-image img {
  display:block;
  width:100%;
  height:100%;
  object-fit:contain;
  object-position:center;
  box-sizing:border-box;
  margin:0;
  border:0;
  background:transparent;
}
.b-tool-copy {
  padding:12px 13px 14px;
  min-height:88px;
  background:#fff;
}
.b-tool-copy h3 {
  font-size:1.72rem;
  line-height:1.06;
  margin:0 0 5px;
  font-weight:850;
  letter-spacing:-.02em;
  color:#101312;
}
.b-tool-copy p {
  font-size:1.16rem;
  line-height:1.18;
  margin:0;
  color:#4d5550;
}

body.home-scheme-b-exact .site-footer {
  margin-top:0;
}

@media (min-width:821px) and (max-width:1099px) {
  body.home-scheme-b-exact .b-hero .container,
  body.home-scheme-b-exact .b-popular.container {
    width:min(calc(100% - 40px),960px);
  }
              
  .b-hero-grid { min-height:390px; grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr); }
  .b-hero-copy { padding:32px 0 22px; }
  .b-kicker { font-size:.82rem; margin-bottom:10px; }
  .b-hero h1 { font-size:4.2rem; line-height:.92; margin-bottom:16px; }
  .b-hero-copy > p:not(.b-kicker) { font-size:1rem; max-width:560px; margin-bottom:17px; }
  .b-search { height:54px; width:590px; grid-template-columns:minmax(0,1fr) 56px; }
  .b-search button { min-width:56px; }
  .b-hero-visual { width:auto; min-width:0; margin-top:0; align-self:center; }
  .b-hero-original-art { width:100%; max-width:430px; margin-left:auto; }
  .b-trust-strip { min-height:78px; grid-template-columns:repeat(4,minmax(0,1fr)); padding:10px 0 14px; gap:14px; }
  .b-benefit-icon { width:34px; height:34px; flex-basis:34px; }
  .b-benefit-icon .rq-icon { width:29px; height:29px; }
  .b-trust-strip strong { font-size:.83rem; }
  .b-popular { padding-top:18px; }
  .b-section-head h2 { font-size:2rem; }
  .b-tool-grid { grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }
  .b-tool-image { height:148px; }
  .b-tool-copy { min-height:66px; padding:9px 10px; }
  .b-tool-copy h3 { font-size:.88rem; }
  .b-tool-copy p { font-size:.69rem; }
  }

@media (max-width:820px) {
  body.home-scheme-b-exact .b-hero .container,
  body.home-scheme-b-exact .b-popular.container {
    width:min(calc(100% - 32px),var(--max-width));
  }
      
  .b-hero-grid { grid-template-columns:1fr; min-height:auto; padding-top:16px; }
  .b-hero-copy { padding:22px 0 4px; }
  .b-kicker { margin-bottom:12px; }
  .b-hero h1 { font-size:clamp(2.65rem,10vw,4rem); margin-bottom:16px; }
  .b-hero-copy > p:not(.b-kicker) { font-size:.98rem; margin-bottom:18px; }
  .b-search { width:100%; max-width:100%; height:50px; grid-template-columns:minmax(0,1fr) 52px; }
  .b-search button { min-width:52px; }
  .b-hero-visual { width:min(100%,430px); min-width:0; margin:12px auto 0; }
  .b-hero-original-art { width:100%; }
  .b-trust-strip { grid-template-columns:1fr 1fr; min-height:auto; padding:12px 0 16px; gap:12px 16px; }
  .b-benefit-icon { width:34px; height:34px; flex-basis:34px; }
  .b-benefit-icon .rq-icon { width:29px; height:29px; }
  .b-trust-strip strong { font-size:.75rem; }
  .b-tool-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
  .b-tool-image { height:auto; aspect-ratio:560/320; }
  .b-tool-copy { min-height:62px; padding:9px; }
  .b-tool-copy h3 { font-size:.84rem; }
  .b-tool-copy p { font-size:.69rem; }
  }

@media (max-width:560px) {
  .b-hero-grid { gap:8px; }
  .b-hero h1 { font-size:2.75rem; }
  .b-hero-copy > p:not(.b-kicker) { font-size:.96rem; }
  .b-hero-visual { width:min(100%,340px); }
  .b-tool-grid { grid-template-columns:1fr 1fr; gap:9px; }
  .b-section-head h2 { font-size:1.55rem; }
  .b-section-head a { font-size:.78rem; }
}
