
/* ==========================================================
   NET3MAX
   RH ROPA INDUSTRIAL
   PREMIUM V4 — WORLD-CLASS COMMERCIAL CATALOG

   PRINCIPLE:
   Premium = proportion + typography + imagery +
             hierarchy + restraint + efficiency
   ========================================================== */

:root {
  --blue:#2269A5;
  --blue-dark:#174F7D;
  --red:#C24436;
  --ink:#1D2226;
  --text:#495159;
  --muted:#747D84;
  --line:#E2E6E9;
  --soft:#F5F7F8;
  --soft-blue:#EEF4F8;
  --white:#FFFFFF;

  --shell:1240px;
  --header:72px;

  --radius-s:10px;
  --radius-m:16px;
  --radius-l:22px;

  --shadow:
    0 14px 36px rgba(20,32,41,.08);

  --ease:
    200ms ease;
}


/* RESET */

*,
*::before,
*::after {
  box-sizing:border-box;
}

html {
  scroll-behavior:smooth;
}

body {
  margin:0;
  color:var(--ink);
  background:var(--white);
  font-family:
    Inter,
    ui-sans-serif,
    system-ui,
    -apple-system,
    BlinkMacSystemFont,
    "Segoe UI",
    sans-serif;
  font-size:16px;
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
}

img {
  display:block;
  max-width:100%;
}

a {
  color:inherit;
}

button,
a {
  -webkit-tap-highlight-color:transparent;
}

button,
summary {
  font:inherit;
}

:focus-visible {
  outline:3px solid #78BCE6;
  outline-offset:3px;
}

.skip-link {
  position:fixed;
  top:8px;
  left:8px;
  z-index:999;
  transform:translateY(-160%);
  padding:.7rem 1rem;
  background:#fff;
  color:#111;
  border-radius:8px;
}

.skip-link:focus {
  transform:none;
}


/* SHELL */

.shell {
  width:min(
    calc(100% - 48px),
    var(--shell)
  );
  margin-inline:auto;
}


/* TYPOGRAPHY */

h1,
h2,
h3,
p {
  margin-top:0;
}

h1,
h2,
h3 {
  letter-spacing:-.035em;
}

h1 {
  font-size:clamp(
    3.25rem,
    5vw,
    4.125rem
  );
  line-height:1.02;
}

h2 {
  font-size:clamp(
    2.1rem,
    3.6vw,
    2.625rem
  );
  line-height:1.08;
}

h3 {
  font-size:1.35rem;
  line-height:1.18;
}

.kicker {
  display:block;
  margin-bottom:.65rem;
  color:var(--blue);
  font-size:.72rem;
  line-height:1.2;
  font-weight:800;
  letter-spacing:.13em;
  text-transform:uppercase;
}

.kicker-light {
  color:#A7D7F5;
}


/* HEADER */

.site-header {
  position:sticky;
  top:0;
  z-index:100;
  height:var(--header);
  background:rgba(255,255,255,.97);
  border-bottom:1px solid rgba(29,34,38,.08);
  backdrop-filter:blur(12px);
}

.header-inner {
  height:100%;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:2rem;
}

.brand {
  display:inline-flex;
  align-items:center;
  flex:0 0 auto;
}

.brand img {
  width:auto;
  height:48px;
}

.desktop-nav {
  display:flex;
  align-items:center;
  gap:1.55rem;
}

.nav-link {
  position:relative;
  text-decoration:none;
  font-size:.92rem;
  font-weight:650;
  color:#293036;
  transition:color var(--ease);
}

.nav-link:hover,
.nav-link.is-active {
  color:var(--blue);
}

.nav-link.is-active::after {
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:-10px;
  height:2px;
  background:var(--blue);
}

.mobile-nav {
  display:none;
}


/* BUTTONS */

.btn {
  min-height:46px;
  padding:.72rem 1.25rem;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:.5rem;
  border:1px solid transparent;
  border-radius:999px;
  text-decoration:none;
  font-size:.92rem;
  font-weight:750;
  transition:
    transform var(--ease),
    background var(--ease),
    border-color var(--ease);
}

.btn:hover {
  transform:translateY(-1px);
}

.btn-small {
  min-height:42px;
  padding:.6rem 1.2rem;
}

.btn-primary {
  background:var(--blue);
  color:#fff;
}

.btn-primary:hover {
  background:var(--blue-dark);
}

.btn-red {
  background:var(--red);
  color:#fff;
}

.btn-outline {
  border-color:#C7D0D6;
  color:var(--ink);
}

.btn-outline:hover {
  border-color:var(--blue);
  color:var(--blue);
}

.btn-glass {
  color:#fff;
  background:rgba(255,255,255,.12);
  border-color:rgba(255,255,255,.48);
  backdrop-filter:blur(10px);
}

.btn-outline-light {
  color:#fff;
  border-color:rgba(255,255,255,.45);
}


/* HERO */

.hero {
  position:relative;
  min-height:540px;
  height:min(
    60vh,
    600px
  );
  overflow:hidden;
  background:#182027;
}

.hero-media,
.hero-slide {
  position:absolute;
  inset:0;
}

.hero-slide {
  opacity:0;
  transition:opacity 500ms ease;
}

.hero-slide.is-active {
  opacity:1;
}

.hero-image {
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
}

.hero-overlay {
  position:absolute;
  inset:0;
  background:
    linear-gradient(
      90deg,
      rgba(13,20,25,.84) 0%,
      rgba(13,20,25,.66) 39%,
      rgba(13,20,25,.15) 76%,
      rgba(13,20,25,.05) 100%
    );
}

.hero-content {
  position:relative;
  z-index:3;
  height:100%;
  display:flex;
  align-items:center;
}

.hero-copy {
  max-width:670px;
  color:#fff;
}

.hero-copy h1 {
  margin-bottom:1.35rem;
  max-width:700px;
  color:#fff;
}

.hero-copy h1 span {
  color:#75BDEA;
}

.hero-copy p {
  max-width:590px;
  margin-bottom:1.8rem;
  color:rgba(255,255,255,.9);
  font-size:1.08rem;
  line-height:1.65;
}

.hero-actions {
  display:flex;
  flex-wrap:wrap;
  gap:.75rem;
}

.hero-dots {
  position:absolute;
  left:24px;
  bottom:22px;
  display:flex;
  gap:8px;
}

.hero-dot {
  width:24px;
  height:4px;
  padding:0;
  border:0;
  border-radius:99px;
  background:rgba(255,255,255,.42);
  cursor:pointer;
}

.hero-dot.is-active {
  width:40px;
  background:#fff;
}


/* PROOF BAR */

.proof-bar {
  border-bottom:1px solid var(--line);
  background:#fff;
}

.proof-grid {
  min-height:88px;
  display:grid;
  grid-template-columns:repeat(3,1fr);
}

.proof-grid > div {
  padding:1.25rem 2rem;
  display:flex;
  flex-direction:column;
  justify-content:center;
  border-right:1px solid var(--line);
}

.proof-grid > div:first-child {
  padding-left:0;
}

.proof-grid > div:last-child {
  border-right:0;
}

.proof-grid strong {
  font-size:.98rem;
}

.proof-grid span {
  margin-top:.15rem;
  color:var(--muted);
  font-size:.82rem;
}


/* SECTIONS */

.section {
  padding:68px 0;
}

.section-heading {
  margin-bottom:32px;
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:3rem;
}

.section-heading h2 {
  margin-bottom:0;
}

.section-heading p {
  max-width:430px;
  margin-bottom:.2rem;
  color:var(--text);
}

.compact-heading {
  margin-bottom:28px;
}


/* BUSINESS LINES */

.business-section {
  background:#fff;
}

.business-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:24px;
}

.business-card {
  min-height:390px;
  display:grid;
  grid-template-columns:1.08fr .92fr;
  overflow:hidden;
  text-decoration:none;
  border:1px solid var(--line);
  border-radius:var(--radius-l);
  background:#fff;
  transition:
    transform var(--ease),
    box-shadow var(--ease);
}

.business-card:hover {
  transform:translateY(-3px);
  box-shadow:var(--shadow);
}

.business-photo {
  min-height:390px;
  overflow:hidden;
  background:var(--soft);
}

.business-photo img {
  width:100%;
  height:100%;
  object-fit:contain;
  padding:20px;
  transition:transform var(--ease);
}

.business-card:hover
.business-photo img {
  transform:scale(1.025);
}

.business-content {
  padding:34px 28px;
  display:flex;
  flex-direction:column;
  justify-content:center;
}

.business-content h3 {
  margin-bottom:.8rem;
  font-size:1.75rem;
}

.business-content p {
  color:var(--text);
  font-size:.94rem;
}

.business-content strong {
  margin-top:auto;
  padding-top:1rem;
  color:var(--blue);
  font-size:.9rem;
}


/* PRODUCTS */

.products-section {
  background:var(--soft);
}

.product-grid {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:26px 20px;
}

.product-card {
  min-width:0;
}

.product-image {
  aspect-ratio:4/5;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
  border:1px solid var(--line);
  border-radius:var(--radius-m);
  background:#fff;
}

.product-image img {
  width:100%;
  height:100%;
  padding:18px;
  object-fit:contain;
  transition:transform var(--ease);
}

.product-card:hover
.product-image img {
  transform:scale(1.04);
}

.product-meta {
  padding:.9rem .1rem 0;
}

.product-meta > span {
  color:var(--muted);
  font-size:.74rem;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.06em;
}

.product-meta h3 {
  margin:.35rem 0 .4rem;
  font-size:1.08rem;
}

.product-meta h3 a {
  text-decoration:none;
}

.product-meta h3 a:hover {
  color:var(--blue);
}

.text-link {
  display:inline-flex;
  align-items:center;
  gap:.45rem;
  color:var(--blue);
  text-decoration:none;
  font-size:.86rem;
  font-weight:750;
}

.text-link span {
  transition:transform var(--ease);
}

.text-link:hover span {
  transform:translateX(3px);
}


/* ABOUT PREVIEW */

.about-preview {
  background:#fff;
}

.about-grid {
  display:grid;
  grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);
  gap:56px;
  align-items:center;
}

.about-photo {
  height:410px;
  overflow:hidden;
  border-radius:var(--radius-l);
  background:var(--soft);
}

.about-photo img {
  width:100%;
  height:100%;
  object-fit:cover;
}

.about-copy {
  max-width:570px;
}

.about-copy p {
  color:var(--text);
  font-size:1rem;
}

.about-copy h2 {
  margin-bottom:1.2rem;
}


/* QUOTE STRIP */

.quote-strip {
  padding:44px 0;
  color:#fff;
  background:var(--ink);
}

.quote-strip-inner {
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:3rem;
  align-items:center;
}

.quote-strip h2 {
  max-width:700px;
  margin:0;
  color:#fff;
  font-size:clamp(
    1.9rem,
    3vw,
    2.45rem
  );
}

.quote-actions {
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-end;
  gap:.65rem;
}


/* CATEGORY */

.category-intro {
  padding:46px 0 32px;
  border-bottom:1px solid var(--line);
}

.category-intro-grid {
  min-height:260px;
  display:grid;
  grid-template-columns:minmax(0,1fr) 340px;
  gap:56px;
  align-items:center;
}

.category-copy {
  max-width:650px;
}

.category-copy h1 {
  margin:.5rem 0 .8rem;
}

.category-copy p {
  max-width:520px;
  margin-bottom:1rem;
  color:var(--text);
}

.category-count {
  display:inline-flex;
  padding:.42rem .72rem;
  border-radius:999px;
  color:var(--blue-dark);
  background:var(--soft-blue);
  font-size:.78rem;
  font-weight:750;
}

.category-image {
  height:240px;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
  border-radius:var(--radius-m);
  background:var(--soft);
}

.category-image img {
  width:100%;
  height:100%;
  padding:14px;
  object-fit:contain;
}

.category-products {
  padding-top:50px;
}

.breadcrumbs {
  margin-bottom:24px;
  display:flex;
  flex-wrap:wrap;
  gap:.45rem;
  color:var(--muted);
  font-size:.8rem;
}

.breadcrumbs a {
  color:var(--blue);
}


/* PRODUCT DETAIL */

.product-detail {
  padding:34px 0 62px;
}

.product-detail-grid {
  display:grid;
  grid-template-columns:minmax(0,1.15fr) minmax(360px,.85fr);
  gap:64px;
  align-items:start;
}

.gallery-main {
  min-height:540px;
  height:min(63vh,620px);
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
  border-radius:var(--radius-l);
  background:var(--soft);
}

.gallery-main img {
  width:100%;
  height:100%;
  padding:28px;
  object-fit:contain;
}

.gallery-thumbs {
  margin-top:12px;
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}

.gallery-thumb {
  width:72px;
  height:72px;
  padding:5px;
  overflow:hidden;
  cursor:pointer;
  border:1px solid var(--line);
  border-radius:10px;
  background:#fff;
}

.gallery-thumb.is-active {
  border-color:var(--blue);
  box-shadow:
    0 0 0 2px rgba(34,105,165,.12);
}

.gallery-thumb img {
  width:100%;
  height:100%;
  object-fit:contain;
}

.gallery small {
  display:block;
  margin-top:.7rem;
  color:var(--muted);
}

.product-info {
  position:sticky;
  top:104px;
  padding-top:12px;
}

.product-info h1 {
  margin:.5rem 0 1.2rem;
}

.product-description {
  max-width:520px;
  color:var(--text);
  font-size:1rem;
  line-height:1.7;
}

.product-actions {
  margin:1.6rem 0;
  display:flex;
  flex-wrap:wrap;
  gap:.7rem;
}

.product-contact {
  margin-top:1.8rem;
  border-top:1px solid var(--line);
}

.product-contact > div {
  padding:.85rem 0;
  display:grid;
  grid-template-columns:100px 1fr;
  gap:1rem;
  border-bottom:1px solid var(--line);
  font-size:.88rem;
}

.product-contact strong {
  color:var(--muted);
}

.product-contact a {
  color:var(--blue);
}

.related-section {
  padding:54px 0 62px;
  background:var(--soft);
}

.related-grid {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:20px;
}


/* STANDARD PAGES */

.standard-hero {
  padding:58px 0 64px;
}

.standard-hero-grid {
  display:grid;
  grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);
  gap:72px;
  align-items:start;
}

.standard-hero h1 {
  max-width:520px;
}

.standard-copy {
  max-width:680px;
  color:var(--text);
}

.standard-copy p:last-child {
  margin-bottom:0;
}

.standard-lead {
  max-width:540px;
  color:var(--text);
  font-size:1.05rem;
}

.proof-bar-light {
  border-top:1px solid var(--line);
  background:var(--soft);
}

.contact-panel {
  overflow:hidden;
  border:1px solid var(--line);
  border-radius:var(--radius-m);
  background:#fff;
}

.contact-row {
  padding:1rem 1.2rem;
  display:grid;
  grid-template-columns:110px 1fr;
  gap:1rem;
  text-decoration:none;
  border-bottom:1px solid var(--line);
}

.contact-row:last-child {
  border-bottom:0;
}

.contact-row span {
  color:var(--muted);
  font-size:.85rem;
}

.contact-row strong {
  font-size:.9rem;
}


/* QUOTE PAGE */

.quote-page {
  padding:64px 0 74px;
}

.quote-page-grid {
  display:grid;
  grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);
  gap:70px;
  align-items:start;
}

.quote-page h1 {
  max-width:620px;
}

.quote-page p {
  max-width:500px;
  color:var(--text);
}

.quote-channel-grid {
  display:grid;
  gap:12px;
}

.quote-channel {
  padding:1.2rem 1.4rem;
  display:grid;
  grid-template-columns:90px 1fr auto;
  gap:1rem;
  align-items:center;
  text-decoration:none;
  border:1px solid var(--line);
  border-radius:var(--radius-m);
  background:#fff;
  transition:
    transform var(--ease),
    border-color var(--ease);
}

.quote-channel:hover {
  transform:translateY(-2px);
  border-color:#B8C7D1;
}

.quote-channel span {
  color:var(--muted);
  font-size:.8rem;
}

.quote-channel strong {
  color:var(--ink);
}

.quote-channel small {
  color:var(--blue);
  font-weight:700;
}

.quote-channel.primary {
  color:#fff;
  background:var(--blue);
  border-color:var(--blue);
}

.quote-channel.primary span,
.quote-channel.primary strong,
.quote-channel.primary small {
  color:#fff;
}


/* FOOTER */

.site-footer {
  padding:42px 0 18px;
  color:rgba(255,255,255,.77);
  background:#20262B;
}

.footer-grid {
  display:grid;
  grid-template-columns:1.35fr .65fr 1fr;
  gap:54px;
}

.footer-brand .brand img {
  height:56px;
}

.footer-brand p {
  max-width:300px;
  margin:.8rem 0 0;
  font-size:.86rem;
}

.footer-links,
.footer-contact {
  display:flex;
  flex-direction:column;
  gap:.5rem;
}

.footer-links a,
.footer-contact a {
  color:#fff;
  font-size:.85rem;
}

.footer-contact span {
  max-width:340px;
  font-size:.82rem;
}

.footer-bottom {
  margin-top:30px;
  padding-top:16px;
  display:flex;
  justify-content:space-between;
  gap:2rem;
  border-top:1px solid rgba(255,255,255,.12);
  font-size:.76rem;
}

.footer-bottom a {
  color:#fff;
}


/* MOBILE CONVERSION BAR */

.mobile-quote-bar {
  display:none;
}


/* RESPONSIVE */

@media (max-width:1100px) {

  .desktop-nav {
    display:none;
  }

  .mobile-nav {
    position:relative;
    display:block;
  }

  .mobile-nav summary {
    width:44px;
    height:44px;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:5px;
    cursor:pointer;
    list-style:none;
  }

  .mobile-nav summary::-webkit-details-marker {
    display:none;
  }

  .mobile-nav summary span {
    width:22px;
    height:2px;
    background:var(--ink);
  }

  .mobile-nav nav {
    position:absolute;
    top:52px;
    right:0;
    width:min(320px,calc(100vw - 32px));
    padding:14px;
    display:flex;
    flex-direction:column;
    gap:4px;
    border:1px solid var(--line);
    border-radius:var(--radius-m);
    background:#fff;
    box-shadow:var(--shadow);
  }

  .mobile-nav .nav-link {
    padding:.75rem .8rem;
  }

  .nav-link.is-active::after {
    display:none;
  }

  .business-card {
    grid-template-columns:1fr;
  }

  .business-photo {
    min-height:260px;
  }

  .product-grid,
  .related-grid {
    grid-template-columns:repeat(3,minmax(0,1fr));
  }

}


@media (max-width:840px) {

  :root {
    --header:68px;
  }

  .shell {
    width:min(
      calc(100% - 32px),
      var(--shell)
    );
  }

  .brand img {
    height:44px;
  }

  .hero {
    min-height:500px;
    height:560px;
  }

  .hero-overlay {
    background:
      linear-gradient(
        90deg,
        rgba(13,20,25,.86),
        rgba(13,20,25,.52)
      );
  }

  .hero-copy {
    max-width:570px;
  }

  .section {
    padding:52px 0;
  }

  .section-heading {
    align-items:flex-start;
    flex-direction:column;
    gap:1rem;
  }

  .business-grid {
    grid-template-columns:1fr;
  }

  .business-card {
    min-height:320px;
    grid-template-columns:.85fr 1.15fr;
  }

  .business-photo {
    min-height:320px;
  }

  .about-grid,
  .standard-hero-grid,
  .quote-page-grid,
  .product-detail-grid {
    grid-template-columns:1fr;
    gap:36px;
  }

  .about-photo {
    height:340px;
  }

  .product-info {
    position:static;
  }

  .category-intro-grid {
    grid-template-columns:1fr 260px;
    gap:28px;
  }

  .product-grid,
  .related-grid {
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .proof-grid {
    grid-template-columns:1fr;
  }

  .proof-grid > div {
    padding:1rem 0;
    border-right:0;
    border-bottom:1px solid var(--line);
  }

  .proof-grid > div:last-child {
    border-bottom:0;
  }

  .quote-strip-inner {
    grid-template-columns:1fr;
    gap:1.4rem;
  }

  .quote-actions {
    justify-content:flex-start;
  }

  .footer-grid {
    grid-template-columns:1fr 1fr;
  }

  .footer-brand {
    grid-column:1/-1;
  }

}


@media (max-width:600px) {

  body {
    padding-bottom:62px;
  }

  h1 {
    font-size:clamp(
      2.25rem,
      11vw,
      2.75rem
    );
  }

  h2 {
    font-size:clamp(
      1.8rem,
      8vw,
      2.2rem
    );
  }

  .hero {
    height:520px;
    min-height:520px;
  }

  .hero-copy p {
    font-size:1rem;
  }

  .hero-actions .btn {
    flex:1 1 150px;
  }

  .hero-dots {
    left:16px;
  }

  .business-card {
    grid-template-columns:1fr;
  }

  .business-photo {
    min-height:240px;
  }

  .business-content {
    padding:26px 22px;
  }

  .product-grid,
  .related-grid {
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:22px 12px;
  }

  .product-image {
    border-radius:12px;
  }

  .product-image img {
    padding:10px;
  }

  .product-meta h3 {
    font-size:.96rem;
  }

  .text-link {
    font-size:.78rem;
  }

  .category-intro {
    padding:30px 0 26px;
  }

  .category-intro-grid {
    min-height:0;
    grid-template-columns:1fr;
  }

  .category-image {
    height:210px;
  }

  .category-products {
    padding-top:34px;
  }

  .product-detail {
    padding-top:24px;
  }

  .gallery-main {
    min-height:360px;
    height:420px;
  }

  .gallery-main img {
    padding:16px;
  }

  .gallery-thumb {
    width:60px;
    height:60px;
  }

  .product-contact > div,
  .contact-row {
    grid-template-columns:1fr;
    gap:.25rem;
  }

  .quote-strip {
    padding:34px 0;
  }

  .quote-actions {
    display:grid;
    grid-template-columns:1fr 1fr;
  }

  .quote-actions .btn:first-child {
    grid-column:1/-1;
  }

  .quote-channel {
    grid-template-columns:1fr;
    gap:.25rem;
  }

  .footer-grid {
    grid-template-columns:1fr;
    gap:28px;
  }

  .footer-brand {
    grid-column:auto;
  }

  .footer-bottom {
    flex-direction:column;
    gap:.5rem;
  }

  .mobile-quote-bar {
    position:fixed;
    left:0;
    right:0;
    bottom:0;
    z-index:120;
    height:62px;
    display:grid;
    grid-template-columns:1fr 1fr;
    background:#fff;
    border-top:1px solid var(--line);
    box-shadow:
      0 -8px 24px rgba(18,28,36,.10);
  }

  .mobile-quote-bar a {
    display:flex;
    align-items:center;
    justify-content:center;
    text-decoration:none;
    font-size:.9rem;
    font-weight:800;
  }

  .mobile-wa {
    color:var(--blue);
  }

  .mobile-quote {
    color:#fff;
    background:var(--blue);
  }

}


@media (max-width:390px) {

  .product-grid,
  .related-grid {
    grid-template-columns:1fr;
  }

}


@media (prefers-reduced-motion:reduce) {

  html {
    scroll-behavior:auto;
  }

  *,
  *::before,
  *::after {
    animation-duration:.01ms !important;
    transition-duration:.01ms !important;
  }

}


/* ==========================================================
   RH PREMIUM V4.1 — PREMIUM VISUAL CORE
   ========================================================== */

.ui-icon,
.proof-icon,
.slider-icon,
.button-icon,
.contact-icon {
  display:inline-flex;
  flex:0 0 auto;
}

.ui-icon svg,
.proof-icon svg,
.slider-icon svg,
.button-icon svg,
.contact-icon svg {
  width:100%;
  height:100%;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}


/* ----------------------------------------------------------
   HERO CONTROLS
   ---------------------------------------------------------- */

.hero-arrow {
  position:absolute;
  z-index:5;
  top:50%;
  width:48px;
  height:48px;
  padding:0;
  display:flex;
  align-items:center;
  justify-content:center;
  border:
    1px solid rgba(255,255,255,.48);
  border-radius:50%;
  color:#fff;
  background:
    rgba(13,20,25,.28);
  backdrop-filter:blur(10px);
  cursor:pointer;
  transform:translateY(-50%);
  transition:
    background 180ms ease,
    border-color 180ms ease,
    transform 180ms ease;
}

.hero-arrow:hover {
  background:
    rgba(13,20,25,.68);
  border-color:#fff;
}

.hero-prev {
  left:28px;
}

.hero-next {
  right:28px;
}

.slider-icon {
  width:22px;
  height:22px;
}


/* CIRCULAR SLIDER INDICATORS */

.hero-dots {
  left:50%;
  bottom:24px;
  transform:translateX(-50%);
  gap:10px;
}

.hero-dot,
.hero-dot.is-active {
  width:10px;
  height:10px;
  border-radius:50%;
}

.hero-dot {
  padding:0;
  border:
    1px solid rgba(255,255,255,.88);
  background:
    rgba(255,255,255,.24);
  transition:
    transform 180ms ease,
    background 180ms ease,
    box-shadow 180ms ease;
}

.hero-dot:hover {
  background:
    rgba(255,255,255,.65);
}

.hero-dot.is-active {
  width:10px;
  background:#fff;
  transform:scale(1.15);
  box-shadow:
    0 0 0 4px rgba(255,255,255,.16);
}


/* ----------------------------------------------------------
   RH BLUE COMMERCIAL PROOF BAR
   ---------------------------------------------------------- */

.proof-bar {
  color:#fff;
  background:
    linear-gradient(
      108deg,
      #174F7D 0%,
      #2269A5 100%
    );
  border:0;
}

.proof-grid {
  min-height:108px;
}

.proof-grid > div,
.proof-item {
  padding:1.3rem 2rem;
  display:flex;
  flex-direction:row;
  align-items:center;
  gap:1rem;
  border-right:
    1px solid rgba(255,255,255,.20);
}

.proof-grid > div:first-child {
  padding-left:0;
}

.proof-grid > div:last-child {
  border-right:0;
}

.proof-icon {
  width:34px;
  height:34px;
  color:#fff;
}

.proof-grid strong {
  display:block;
  color:#fff;
  font-size:1rem;
  font-weight:760;
}

.proof-grid span {
  display:block;
  margin-top:.18rem;
  color:
    rgba(255,255,255,.76);
  font-size:.83rem;
}


/* ----------------------------------------------------------
   PREMIUM PRODUCT MICRO-INTERACTION
   ---------------------------------------------------------- */

.business-card,
.product-card {
  transition:
    transform 200ms ease,
    box-shadow 200ms ease;
}

.business-card:hover {
  transform:translateY(-4px);
  box-shadow:
    0 18px 46px
    rgba(22,40,53,.11);
}

.product-card:hover {
  transform:translateY(-3px);
}

.product-image {
  transition:
    border-color 200ms ease,
    box-shadow 200ms ease;
}

.product-card:hover .product-image {
  border-color:#C4D4DF;
  box-shadow:
    0 14px 32px
    rgba(22,40,53,.07);
}


/* ----------------------------------------------------------
   RESPONSIVE
   ---------------------------------------------------------- */

@media (max-width:840px) {

  .hero-arrow {
    width:42px;
    height:42px;
  }

  .hero-prev {
    left:14px;
  }

  .hero-next {
    right:14px;
  }

}


@media (max-width:600px) {

  .hero-arrow {
    width:38px;
    height:38px;
  }

  .hero-prev {
    left:10px;
  }

  .hero-next {
    right:10px;
  }

  .slider-icon {
    width:18px;
    height:18px;
  }

  .proof-grid > div,
  .proof-item {
    padding:1rem 0;
    border-right:0;
    border-bottom:
      1px solid
      rgba(255,255,255,.18);
  }

  .proof-grid > div:last-child {
    border-bottom:0;
  }

}



/* ==========================================================
   RH PREMIUM V4.1B1 — NAVIGATION / FOOTER
   ========================================================== */

.nav-link {
  display:inline-flex;
  align-items:center;
  gap:.38rem;
}

.nav-icon {
  width:15px;
  height:15px;
  display:inline-flex;
  flex:0 0 auto;
  color:#68747c;
  transition:
    color 180ms ease,
    transform 180ms ease;
}

.nav-icon svg,
.footer-icon svg {
  width:100%;
  height:100%;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.nav-link:hover .nav-icon,
.nav-link.is-active .nav-icon {
  color:var(--blue);
  transform:translateY(-1px);
}

.header-quote .nav-icon {
  color:#fff;
}

.footer-links > strong,
.footer-contact > strong {
  margin-bottom:.35rem;
  color:#fff;
  font-size:.76rem;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.footer-icon {
  width:17px;
  height:17px;
  display:inline-flex;
  flex:0 0 auto;
  color:#9bc9e5;
}

.icon-line,
.footer-social {
  display:flex;
  align-items:flex-start;
  gap:.6rem;
}

.footer-social {
  width:max-content;
  margin-top:1rem;
  color:#fff;
  text-decoration:none;
}

.footer-social:hover {
  color:#a7d7f5;
}



/* ==========================================================
   RH PREMIUM V4.1B2 — NOSOTROS
   ========================================================== */

.about-premium-hero {
  padding:52px 0 66px;
}

.about-premium-grid {
  display:grid;
  grid-template-columns:
    minmax(0,.82fr)
    minmax(0,1.18fr);
  gap:64px;
  align-items:center;
}

.about-premium-copy {
  max-width:540px;
}

.about-premium-copy h1 {
  margin:.45rem 0 1.15rem;
}

.about-premium-lead {
  margin-bottom:.9rem;
  color:var(--ink);
  font-size:1.16rem;
  line-height:1.55;
}

.about-premium-copy > p:not(.about-premium-lead) {
  color:var(--text);
}

.about-premium-actions {
  margin-top:1.7rem;
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:1.2rem;
}

.about-premium-photo {
  height:440px;
  overflow:hidden;
  border-radius:22px;
  background:var(--soft);
  box-shadow:
    0 24px 60px rgba(28,43,53,.10);
}

.about-premium-photo img {
  width:100%;
  height:100%;
  object-fit:cover;
}


/* TWO COMMERCIAL LINES */

.about-premium-lines {
  background:var(--soft);
}

.about-lines-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:22px;
}

.about-line-card {
  min-height:278px;
  padding:18px;
  display:grid;
  grid-template-columns:220px minmax(0,1fr);
  gap:26px;
  align-items:center;
  text-decoration:none;
  border:1px solid var(--line);
  border-radius:18px;
  background:#fff;
  transition:
    transform 200ms ease,
    border-color 200ms ease,
    box-shadow 200ms ease;
}

.about-line-card:hover {
  transform:translateY(-3px);
  border-color:#c5d6e1;
  box-shadow:var(--shadow);
}

.about-line-photo {
  height:220px;
  overflow:hidden;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:14px;
  background:var(--soft);
}

.about-line-photo img {
  width:100%;
  height:100%;
  padding:10px;
  object-fit:contain;
  transition:transform 220ms ease;
}

.about-line-card:hover .about-line-photo img {
  transform:scale(1.03);
}

.about-line-content h3 {
  margin:.3rem 0 .65rem;
  font-size:1.55rem;
}

.about-line-content p {
  color:var(--text);
  font-size:.92rem;
}

.about-line-content strong {
  color:var(--blue);
  font-size:.87rem;
}


/* LOCATION / CONTACT */

.about-premium-location {
  background:#fff;
}

.about-location-panel {
  padding:32px;
  display:grid;
  grid-template-columns:
    minmax(0,1fr)
    minmax(360px,.72fr);
  gap:46px;
  align-items:center;
  border:1px solid var(--line);
  border-radius:20px;
  background:var(--soft);
}

.about-location-panel h2 {
  max-width:650px;
  margin-bottom:1.15rem;
}

.about-address {
  display:flex;
  align-items:flex-start;
  gap:.8rem;
  max-width:680px;
  color:var(--text);
}

.contact-icon {
  width:23px;
  height:23px;
  display:inline-flex;
  flex:0 0 auto;
  color:var(--blue);
}

.contact-icon svg,
.button-icon svg {
  width:100%;
  height:100%;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.button-icon {
  width:17px;
  height:17px;
  display:inline-flex;
}

.about-direct-contact {
  display:grid;
  gap:10px;
}

.about-contact-item {
  padding:1rem 1.1rem;
  display:flex;
  align-items:center;
  gap:.9rem;
  text-decoration:none;
  border:1px solid var(--line);
  border-radius:13px;
  background:#fff;
  transition:
    transform 180ms ease,
    border-color 180ms ease;
}

.about-contact-item:hover {
  transform:translateY(-2px);
  border-color:#aec8d9;
}

.about-contact-item small {
  display:block;
  color:var(--muted);
}

.about-contact-item strong {
  display:block;
  overflow-wrap:anywhere;
  font-size:.9rem;
}


/* RESPONSIVE NOSOTROS */

@media (max-width:900px) {

  .about-premium-grid,
  .about-location-panel {
    grid-template-columns:1fr;
    gap:30px;
  }

  .about-premium-photo {
    height:360px;
  }

  .about-lines-grid {
    grid-template-columns:1fr;
  }

}

@media (max-width:600px) {

  .about-premium-hero {
    padding:32px 0 48px;
  }

  .about-premium-photo {
    height:290px;
  }

  .about-line-card {
    grid-template-columns:1fr;
  }

  .about-line-photo {
    height:210px;
  }

  .about-location-panel {
    padding:22px;
  }

}



/* ==========================================================
   RH PREMIUM V4.1B3 — CONTACTO
   ========================================================== */

.contact-premium {
  padding:52px 0 68px;
}

.contact-premium-heading {
  margin-bottom:34px;
  display:grid;
  grid-template-columns:
    minmax(0,.95fr)
    minmax(0,.65fr);
  gap:70px;
  align-items:end;
}

.contact-premium-heading h1 {
  max-width:670px;
  margin:.45rem 0 0;
}

.contact-premium-heading > p {
  max-width:480px;
  margin-bottom:.25rem;
  color:var(--text);
  font-size:1.05rem;
  line-height:1.6;
}


/* COMMUNICATION CHANNELS */

.contact-premium-grid {
  display:grid;
  grid-template-columns:
    repeat(4,minmax(0,1fr));
  gap:16px;
}

.contact-channel {
  min-height:205px;
  padding:24px;
  display:flex;
  flex-direction:column;
  text-decoration:none;
  border:1px solid var(--line);
  border-radius:17px;
  background:#fff;
  transition:
    transform 190ms ease,
    border-color 190ms ease,
    box-shadow 190ms ease;
}

.contact-channel:hover {
  transform:translateY(-3px);
  border-color:#b8cdda;
  box-shadow:var(--shadow);
}

.contact-channel-primary {
  color:#fff;
  border-color:#2269A5;
  background:
    linear-gradient(
      145deg,
      #174F7D,
      #2269A5
    );
}

.contact-channel-icon {
  width:30px;
  height:30px;
  margin-bottom:28px;
  display:inline-flex;
  color:var(--blue);
}

.contact-channel-icon svg,
.location-svg svg {
  width:100%;
  height:100%;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.contact-channel-primary
.contact-channel-icon {
  color:#fff;
}

.contact-channel-label {
  color:var(--muted);
  font-size:.75rem;
  font-weight:750;
  letter-spacing:.07em;
  text-transform:uppercase;
}

.contact-channel-primary
.contact-channel-label {
  color:rgba(255,255,255,.74);
}

.contact-channel strong {
  margin:.3rem 0 1rem;
  overflow-wrap:anywhere;
  color:var(--ink);
  font-size:.96rem;
}

.contact-channel-primary strong {
  color:#fff;
}

.contact-channel small {
  margin-top:auto;
  color:var(--blue);
  font-weight:750;
}

.contact-channel-primary small {
  color:#fff;
}


/* ADDRESS / LOCATION */

.contact-location-premium {
  margin-top:20px;
  padding:28px 30px;
  display:grid;
  grid-template-columns:
    58px
    minmax(0,1fr)
    auto;
  gap:24px;
  align-items:center;
  border-radius:18px;
  color:#fff;
  background:#20262B;
}

.contact-location-icon {
  width:54px;
  height:54px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  color:#fff;
  background:#2269A5;
}

.location-svg {
  width:25px;
  height:25px;
  display:inline-flex;
}

.contact-location-premium .kicker {
  color:#9DD4F0;
}

.contact-location-copy h2 {
  margin:.1rem 0 .3rem;
  color:#fff;
  font-size:1.6rem;
}

.contact-location-copy p {
  max-width:720px;
  margin:0;
  color:rgba(255,255,255,.76);
}

.contact-location-actions {
  display:flex;
  align-items:center;
  gap:.65rem;
}

.contact-location-actions .btn-secondary {
  color:#fff;
  border-color:rgba(255,255,255,.34);
  background:transparent;
}

.contact-location-actions .btn-secondary:hover {
  border-color:#fff;
}


/* RESPONSIVE CONTACT */

@media (max-width:1100px) {

  .contact-premium-grid {
    grid-template-columns:
      repeat(2,minmax(0,1fr));
  }

  .contact-location-premium {
    grid-template-columns:
      54px
      minmax(0,1fr);
  }

  .contact-location-actions {
    grid-column:1/-1;
    padding-left:78px;
  }

}


@media (max-width:760px) {

  .contact-premium-heading {
    grid-template-columns:1fr;
    gap:18px;
  }

  .contact-premium-grid {
    grid-template-columns:1fr;
  }

  .contact-channel {
    min-height:165px;
  }

  .contact-channel-icon {
    margin-bottom:18px;
  }

  .contact-location-premium {
    padding:22px;
  }

  .contact-location-actions {
    padding-left:0;
    flex-wrap:wrap;
  }

}


@media (max-width:600px) {

  .contact-premium {
    padding:32px 0 48px;
  }

}



/* ==========================================================
   RH PREMIUM V4.1B4 — PRODUCT GALLERY
   ========================================================== */

.gallery-main {
  position:relative;
}

.gallery-arrow,
.gallery-zoom {
  position:absolute;
  z-index:4;
  width:44px;
  height:44px;
  padding:0;
  display:flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
  border:1px solid var(--line);
  border-radius:50%;
  color:var(--ink);
  background:rgba(255,255,255,.94);
  box-shadow:
    0 8px 22px rgba(25,38,47,.10);
  transition:
    background 180ms ease,
    box-shadow 180ms ease,
    transform 180ms ease;
}

.gallery-arrow:hover,
.gallery-zoom:hover {
  background:#fff;
  box-shadow:
    0 12px 30px rgba(25,38,47,.16);
}

.gallery-prev {
  left:16px;
  top:50%;
  transform:translateY(-50%);
}

.gallery-next {
  right:16px;
  top:50%;
  transform:translateY(-50%);
}

.gallery-prev:hover,
.gallery-next:hover {
  transform:
    translateY(-50%)
    scale(1.04);
}

.gallery-zoom {
  right:16px;
  bottom:16px;
}

.product-lightbox {
  width:min(92vw,1000px);
  max-height:92vh;
  padding:18px;
  border:0;
  border-radius:18px;
  background:#fff;
  box-shadow:
    0 30px 90px rgba(0,0,0,.35);
}

.product-lightbox::backdrop {
  background:rgba(10,15,18,.84);
  backdrop-filter:blur(5px);
}

.product-lightbox img {
  width:100%;
  max-height:82vh;
  object-fit:contain;
}

.lightbox-close {
  position:absolute;
  z-index:5;
  top:14px;
  right:14px;
  width:40px;
  height:40px;
  padding:0;
  display:flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
  border:0;
  border-radius:50%;
  color:#fff;
  background:rgba(20,27,32,.84);
  font-size:1.5rem;
}

@media (max-width:600px) {

  .gallery-arrow,
  .gallery-zoom {
    width:38px;
    height:38px;
  }

  .gallery-prev {
    left:9px;
  }

  .gallery-next {
    right:9px;
  }

  .gallery-zoom {
    right:9px;
    bottom:9px;
  }

}



/* ==========================================================
   RH PREMIUM V4.1.1 — FINAL MICRO-ADJUSTMENTS
   ========================================================== */


/* SLIDER ARROWS — EXTREME LEFT / RIGHT */

.hero-prev {
  left:calc(50% - 50vw + 12px) !important;
}

.hero-next {
  right:calc(50% - 50vw + 12px) !important;
}

.gallery-prev {
  left:10px !important;
}

.gallery-next {
  right:10px !important;
}


/* FOOTER — CLEAN PREMIUM LINKS */

.site-footer a,
.site-footer a:hover,
.site-footer a:focus,
.site-footer a:active {
  text-decoration:none !important;
}

.footer-web-credit {
  display:inline-flex;
  align-items:center;
  gap:.32rem;
  color:rgba(255,255,255,.68);
}

.footer-web-credit a {
  color:#fff;
  font-weight:700;
  transition:
    color 180ms ease;
}

.footer-web-credit a:hover,
.footer-web-credit a:focus {
  color:#9DD4F0;
}


/* MOBILE */

@media (max-width:600px) {

  .hero-prev {
    left:calc(50% - 50vw + 6px) !important;
  }

  .hero-next {
    right:calc(50% - 50vw + 6px) !important;
  }

  .gallery-prev {
    left:6px !important;
  }

  .gallery-next {
    right:6px !important;
  }

}




/* ==========================================================
   RH PREMIUM V4.1.7 — FAVICON + HOME TITLE
   ========================================================== */

.mobile-nav-backdrop {
  display:none;
}


/*
 * MENU BACKDROP
 * Applies only where the mobile navigation exists.
 */

@media (max-width:1100px) {

  .mobile-nav[open] .mobile-nav-backdrop {
    display:block;
    position:fixed;
    inset:var(--header) 0 0 0;

    width:100vw;

    height:
      calc(
        100dvh
        - var(--header)
      );

    margin:0;
    padding:0;

    border:0;

    background:
      rgba(
        13,
        20,
        25,
        .32
      );

    z-index:998;
  }

  .mobile-nav[open] nav {
    z-index:1000;
  }

  .mobile-nav[open] summary {
    position:relative;
    z-index:1001;
  }

}


/*
 * PHONE-SPECIFIC VISUAL REFINEMENTS
 */

@media (max-width:600px) {

  /*
   * HERO ARROWS
   *
   * Keep 44px touch target.
   * Visually remove circle/background/border.
   */

  .hero-arrow {
    width:44px !important;
    height:48px !important;

    padding:0 !important;

    border:0 !important;
    border-radius:0 !important;

    background:
      transparent !important;

    box-shadow:
      none !important;

    backdrop-filter:
      none !important;

    -webkit-backdrop-filter:
      none !important;
  }


  .hero-arrow:hover,
  .hero-arrow:focus,
  .hero-arrow:active {

    border:0 !important;

    background:
      transparent !important;

    box-shadow:
      none !important;
  }


  .hero-arrow .slider-icon {

    width:27px !important;
    height:27px !important;

    filter:
      drop-shadow(
        0 2px 4px
        rgba(0,0,0,.65)
      );
  }


  /*
   * True viewport-edge placement preserved.
   */

  .hero-prev {
    left:
      calc(
        50%
        - 50vw
        + 6px
      ) !important;
  }


  .hero-next {
    right:
      calc(
        50%
        - 50vw
        + 6px
      ) !important;
  }


  /*
   * SINGLE FIXED WHATSAPP CTA
   *
   * Right side only.
   * Oblique left boundary.
   */

  .mobile-quote-bar {

    position:
      fixed !important;

    left:
      auto !important;

    right:
      0 !important;

    bottom:
      0 !important;

    width:
      min(
        58vw,
        220px
      ) !important;

    height:
      calc(
        58px
        + env(
            safe-area-inset-bottom
          )
      ) !important;

    padding:
      0 !important;

    padding-bottom:
      env(
        safe-area-inset-bottom
      ) !important;

    display:
      flex !important;

    align-items:
      stretch !important;

    justify-content:
      flex-end !important;

    border:
      0 !important;

    background:
      transparent !important;

    box-shadow:
      none !important;

    z-index:
      1200 !important;
  }


  .mobile-quote-bar .mobile-wa {

    width:
      100% !important;

    min-width:
      0 !important;

    min-height:
      58px !important;

    margin:
      0 !important;

    padding:
      0
      22px
      0
      36px !important;

    display:
      flex !important;

    align-items:
      center !important;

    justify-content:
      center !important;

    gap:
      9px !important;

    border:
      0 !important;

    border-radius:
      0 !important;

    background:
      var(--blue) !important;

    color:
      #fff !important;

    font-weight:
      800 !important;

    text-decoration:
      none !important;

    box-shadow:
      0 -4px 18px
      rgba(0,0,0,.16) !important;

    clip-path:
      polygon(
        24px 0,
        100% 0,
        100% 100%,
        0 100%
      );

    -webkit-clip-path:
      polygon(
        24px 0,
        100% 0,
        100% 100%,
        0 100%
      );
  }


  .mobile-wa-icon {
    width:20px;
    height:20px;
    flex:0 0 auto;
  }

}




/* ==========================================================
   RH PREMIUM V4.1.7 — FAVICON + HOME TITLE
   ========================================================== */

@media (max-width:600px) {


  /* --------------------------------------------------------
     HERO SLIDER ARROWS

     V4.1.4 removed the visible circles.
     V4.1.5:
     - moves controls below paragraph
     - brings visible chevron closer to extreme edges
     - keeps usable touch target
     -------------------------------------------------------- */

  .hero-arrow {

    top:62% !important;

    width:32px !important;
    height:44px !important;

    transform:
      translateY(-50%) !important;
  }


  .hero-prev {

    left:
      calc(
        50%
        - 50vw
      ) !important;
  }


  .hero-next {

    right:
      calc(
        50%
        - 50vw
      ) !important;
  }


  .hero-arrow .slider-icon {

    width:24px !important;
    height:24px !important;
  }


  /* --------------------------------------------------------
     HERO PRIMARY ACTIONS

     Smaller mobile buttons.
     Labels perfectly centered.
     -------------------------------------------------------- */

  .hero-actions {

    width:100% !important;
    max-width:300px !important;

    display:grid !important;

    grid-template-columns:
      repeat(
        2,
        minmax(0,1fr)
      ) !important;

    gap:10px !important;

    align-items:stretch !important;
  }


  .hero-actions .btn {

    width:100% !important;

    min-width:0 !important;
    min-height:50px !important;

    padding:
      8px
      12px !important;

    display:flex !important;

    align-items:center !important;
    justify-content:center !important;

    text-align:center !important;

    font-size:.91rem !important;
    line-height:1.2 !important;

    white-space:normal !important;
  }


  /* --------------------------------------------------------
     FIXED WHATSAPP

     Icon only.
     Compact right-side oblique tab.
     -------------------------------------------------------- */

  .mobile-quote-bar {

    width:76px !important;

    height:
      calc(
        54px
        + env(
            safe-area-inset-bottom
          )
      ) !important;
  }


  .mobile-quote-bar .mobile-wa {

    width:76px !important;

    min-width:76px !important;
    min-height:54px !important;

    padding:
      0
      13px
      0
      21px !important;

    gap:0 !important;

    clip-path:
      polygon(
        18px 0,
        100% 0,
        100% 100%,
        0 100%
      ) !important;

    -webkit-clip-path:
      polygon(
        18px 0,
        100% 0,
        100% 100%,
        0 100%
      ) !important;
  }


  .mobile-wa-icon {

    width:26px !important;
    height:26px !important;

    margin:0 !important;

    stroke:currentColor;
  }

}




/* ==========================================================
   RH PREMIUM V4.1.7 — FAVICON + HOME TITLE
   ========================================================== */


/*
 * Anchor landing position below sticky header.
 */

#oferta {
  scroll-margin-top:
    calc(
      var(--header)
      + 14px
    );
}


@media (max-width:600px) {

  /*
   * Compact WhatsApp rectangle.
   *
   * right: 0px
   * bottom: 15px
   * rounded left corners only
   */

  .mobile-quote-bar {

    right:
      0 !important;

    bottom:
      calc(
        15px
        + env(
            safe-area-inset-bottom
          )
      ) !important;

    width:
      58px !important;

    height:
      50px !important;

    padding:
      0 !important;

    background:
      transparent !important;

    box-shadow:
      none !important;
  }


  .mobile-quote-bar .mobile-wa {

    width:
      58px !important;

    min-width:
      58px !important;

    height:
      50px !important;

    min-height:
      50px !important;

    padding:
      0 !important;

    display:
      flex !important;

    align-items:
      center !important;

    justify-content:
      center !important;

    border:
      0 !important;

    border-radius:
      14px
      0
      0
      14px !important;

    clip-path:
      none !important;

    -webkit-clip-path:
      none !important;

    background:
      var(--blue) !important;

    color:
      #fff !important;

    box-shadow:
      0 6px 18px
      rgba(0,0,0,.22) !important;
  }


  .mobile-wa-icon {

    display:
      block !important;

    width:
      27px !important;

    height:
      27px !important;

    margin:
      0 !important;

    fill:
      currentColor !important;

    stroke:
      none !important;
  }


  .mobile-wa-icon path {

    fill:
      currentColor !important;

    stroke:
      none !important;
  }

}



/* ==========================================================
   NET3MAX RH V4.1.8 PREMIUM SOCIAL
   ========================================================== */

.footer-social-premium {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  margin-top: 5px;
  margin-right: 16px;
  margin-bottom: 7px;
  text-decoration: none !important;
  font-weight: 650;
  line-height: 1;
  transition:
    opacity .18s ease,
    transform .18s ease;
}

.footer-social-premium:last-child {
  margin-right: 0;
}

.footer-social-premium:hover {
  transform: translateY(-1px);
}

.footer-social-premium-icon {
  width: 31px;
  height: 31px;
  flex: 0 0 31px;

  display: inline-flex;
  align-items: center;
  justify-content: center;

  border: 1px solid rgba(255,255,255,.18);
  border-radius: 50%;

  background:
    rgba(255,255,255,.045);

  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.08),
    0 5px 15px rgba(0,0,0,.12);

  transition:
    transform .18s ease,
    background .18s ease,
    border-color .18s ease;
}

.footer-social-premium:hover
.footer-social-premium-icon {
  transform: scale(1.05);

  background:
    rgba(255,255,255,.10);

  border-color:
    rgba(255,255,255,.34);
}

.footer-social-premium-icon svg {
  display: block;
  width: 16px;
  height: 16px;
}

.footer-social-facebook
.footer-social-premium-icon svg {
  width: 15px;
  height: 15px;
}

.footer-social-tiktok
.footer-social-premium-icon svg {
  width: 17px;
  height: 17px;
}

@media (max-width: 640px) {

  .footer-social-premium {
    margin-right: 13px;
  }

  .footer-social-premium-icon {
    width: 29px;
    height: 29px;
    flex-basis: 29px;
  }

}
