.elementor-kit-4{--e-global-color-primary:#16110E;--e-global-color-secondary:#5C4E3E;--e-global-color-text:#3D332A;--e-global-color-accent:#9C3A2C;--e-global-color-f9e72e9:#E6DCCB;--e-global-color-096d1db:#D6C9B3;--e-global-color-c5aaf37:#B8A88E;--e-global-color-57be1a6:#C3872B;--e-global-color-d59a000:#211812;--e-global-color-3ae16b5:#2E4C72;--e-global-color-6523170:#5F6E45;--e-global-typography-primary-font-family:"Gloock";--e-global-typography-primary-font-weight:400;--e-global-typography-secondary-font-family:"Karla";--e-global-typography-secondary-font-weight:600;--e-global-typography-text-font-family:"Karla";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"DM Mono";--e-global-typography-accent-font-weight:400;--e-global-typography-accent-text-transform:uppercase;--e-global-typography-accent-letter-spacing:0.14em;font-family:"Karla", Sans-serif;font-size:17px;font-weight:400;line-height:1.6em;letter-spacing:0px;}.elementor-kit-4 button,.elementor-kit-4 input[type="button"],.elementor-kit-4 input[type="submit"],.elementor-kit-4 .elementor-button{background-color:#9C3A2C;font-family:"DM Mono", Sans-serif;font-size:11.5px;font-weight:400;text-transform:uppercase;line-height:0.14em;letter-spacing:0.14em;color:#FFFFFF;padding:14px 26px 14px 26px;}.elementor-kit-4 button:hover,.elementor-kit-4 button:focus,.elementor-kit-4 input[type="button"]:hover,.elementor-kit-4 input[type="button"]:focus,.elementor-kit-4 input[type="submit"]:hover,.elementor-kit-4 input[type="submit"]:focus,.elementor-kit-4 .elementor-button:hover,.elementor-kit-4 .elementor-button:focus{background-color:#B4462F;color:#FFFFFF;border-radius:2px 2px 2px 2px;}.elementor-kit-4 e-page-transition{background-color:#FFBC7D;}.elementor-kit-4 h1{font-family:"Gloock", Sans-serif;font-size:60px;font-weight:400;line-height:1.02em;letter-spacing:-1px;}.elementor-kit-4 h2{font-family:"Gloock", Sans-serif;font-size:44px;font-weight:400;line-height:1.1em;letter-spacing:-0.5px;}.elementor-kit-4 h3{font-family:"Gloock", Sans-serif;font-size:30px;font-weight:400;line-height:1.15px;letter-spacing:0px;}.elementor-kit-4 h4{font-family:"Karla", Sans-serif;font-size:23px;font-weight:600;line-height:1.2em;letter-spacing:0px;}.elementor-kit-4 h5{font-family:"Karla", Sans-serif;font-size:18px;font-weight:600;line-height:1.3px;letter-spacing:0px;}.elementor-kit-4 h6{font-family:"DM Mono", Sans-serif;font-size:13px;font-weight:400;text-transform:uppercase;line-height:1.4em;letter-spacing:1.8em;}.elementor-kit-4 label{color:var( --e-global-color-primary );font-family:"Karla", Sans-serif;font-size:15.5px;font-weight:400;}.elementor-kit-4 input:not([type="button"]):not([type="submit"]),.elementor-kit-4 textarea,.elementor-kit-4 .elementor-field-textual{background-color:#FFFFFF;border-style:solid;border-width:1px 1px 1px 1px;border-color:#C9BCA6;border-radius:2px 2px 2px 2px;padding:12px 13px 12px 13px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1320px;}.e-con{--container-max-width:1320px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-kit-4{font-size:17px;line-height:1.6em;letter-spacing:0px;}.elementor-kit-4 h1{font-size:44px;line-height:1.02em;letter-spacing:-1px;}.elementor-kit-4 h2{font-size:36px;line-height:1.1em;letter-spacing:-0.5px;}.elementor-kit-4 h3{font-size:27px;line-height:1.15em;letter-spacing:0px;}.elementor-kit-4 h4{font-size:22px;line-height:1.2em;letter-spacing:0px;}.elementor-kit-4 h5{font-size:18px;line-height:1.3em;letter-spacing:0px;}.elementor-kit-4 h6{font-size:13px;line-height:1.4em;letter-spacing:1.8px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-4{font-size:16px;line-height:1.6em;letter-spacing:0px;}.elementor-kit-4 h1{font-size:36px;line-height:1.02em;letter-spacing:-1px;}.elementor-kit-4 h2{font-size:30px;line-height:1.1em;letter-spacing:-0.5px;}.elementor-kit-4 h3{font-size:24px;line-height:1.15em;letter-spacing:0px;}.elementor-kit-4 h4{font-size:20px;line-height:1.2em;letter-spacing:0px;}.elementor-kit-4 h5{font-size:17px;line-height:1.3em;letter-spacing:0px;}.elementor-kit-4 h6{font-size:12px;line-height:1.4em;letter-spacing:1.8px;}.elementor-kit-4 button,.elementor-kit-4 input[type="button"],.elementor-kit-4 input[type="submit"],.elementor-kit-4 .elementor-button{font-size:11.5px;line-height:0.14em;padding:14px 26px 026px 14px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS *//* ============================================================
   CustomRug — site polish
   ------------------------------------------------------------
   Paste all of this into:
   Elementor  >  hamburger (☰)  >  Site Settings  >  Custom CSS

   Everything here is presentation only. Nothing breaks if you
   delete it — you just lose the hover and motion refinements.
   ============================================================ */

:root{
  --cr-ink:#16110E;
  --cr-ink-soft:#211812;
  --cr-paper:#EFE8DA;
  --cr-undyed:#E6DCCB;
  --cr-wool:#B8A88E;
  --cr-madder:#9C3A2C;
  --cr-saffron:#C3872B;
  --cr-hair-d:rgba(230,220,203,.16);
  --cr-hair-l:rgba(22,17,14,.14);
}

/* ------------------------------------------------------------
   1. Rug cards — lift and a slow image push-in on hover
   ------------------------------------------------------------ */
.cr-card{
  transition:transform .28s cubic-bezier(.2,.8,.2,1),
             box-shadow .28s, border-color .28s;
  overflow:hidden;
}
.cr-card:hover{
  transform:translateY(-5px);
  border-color:var(--cr-ink) !important;
  box-shadow:0 18px 34px rgba(22,17,14,.16);
}
.cr-card img{transition:transform .55s cubic-bezier(.2,.8,.2,1)}
.cr-card:hover img{transform:scale(1.05)}

/* the size line under each rug name */
.cr-card .crc-specs{border:0;margin:0}
.cr-card .crc-spec-row{
  grid-template-columns:1fr;border:0;padding:0;gap:0;
}
.cr-card .crc-spec-label{display:none}
.cr-card .crc-spec-value{
  font-family:"DM Mono",monospace;font-size:10.5px;
  letter-spacing:.09em;color:#8A7860;
}

/* ------------------------------------------------------------
   2. Hero slider
   ------------------------------------------------------------ */
.elementor-slides .swiper-slide-bg{transform-origin:center}

/* arrows: square, quiet, not the default circles */
.elementor-slides-wrapper .elementor-swiper-button{
  color:var(--cr-undyed);
  background:rgba(22,17,14,.42);
  backdrop-filter:blur(6px);
  width:46px;height:46px;
  display:grid;place-items:center;
  border:1px solid var(--cr-hair-d);
  border-radius:2px;
  transition:background .2s,border-color .2s;
}
.elementor-slides-wrapper .elementor-swiper-button:hover{
  background:rgba(22,17,14,.72);
  border-color:var(--cr-undyed);
}

/* dots become knot squares — a rug design is plotted on squares */
.elementor-slides-wrapper .swiper-pagination-bullet{
  width:30px;height:4px;border-radius:1px;
  background:rgba(230,220,203,.3);opacity:1;
  transition:background .2s;
}
.elementor-slides-wrapper .swiper-pagination-bullet-active{
  background:var(--cr-saffron);
}

/* keep the headline off the very edge on small screens */
@media(max-width:767px){
  .elementor-slides .swiper-slide-inner{padding-inline:6vw !important}
}

/* ------------------------------------------------------------
   3. Counters — align the numbers to the display face
   ------------------------------------------------------------ */
.elementor-counter .elementor-counter-number-wrapper{
  display:flex;align-items:baseline;gap:2px;
}
.elementor-counter .elementor-counter-title{
  text-align:left;margin-top:8px;
}

/* ------------------------------------------------------------
   4. Project carousel
   ------------------------------------------------------------ */
.elementor-media-carousel .elementor-carousel-image-overlay{
  align-items:flex-end;justify-content:flex-start;
  padding:26px;text-align:left;
  background:linear-gradient(180deg,rgba(22,17,14,0) 34%,rgba(22,17,14,.9) 100%) !important;
}
.elementor-media-carousel .elementor-carousel-image{
  transition:transform .6s cubic-bezier(.2,.8,.2,1);
}
.elementor-media-carousel .swiper-slide:hover .elementor-carousel-image{
  transform:scale(1.05);
}

/* ------------------------------------------------------------
   5. Accordion — flat, ruled, no rounded boxes
   ------------------------------------------------------------ */
.elementor-accordion .elementor-accordion-item{
  border-left:0 !important;border-right:0 !important;border-top:0 !important;
}
.elementor-accordion .elementor-tab-title{
  padding:20px 0 !important;
  transition:color .2s;
}
.elementor-accordion .elementor-tab-content{
  padding:0 0 22px !important;border:0 !important;
}

/* ------------------------------------------------------------
   6. Taxonomy filter on the rug archive
   ------------------------------------------------------------ */
.e-filter-item{
  font-family:"DM Mono",monospace;font-size:11px;
  letter-spacing:.11em;text-transform:uppercase;
  border:1px solid rgba(22,17,14,.22) !important;
  border-radius:2px !important;
  padding:9px 15px !important;
  background:transparent !important;
  color:#3D332A !important;
  transition:.18s;
}
.e-filter-item:hover{border-color:var(--cr-ink) !important}
.e-filter-item.e-filter-active{
  background:var(--cr-ink) !important;
  color:var(--cr-undyed) !important;
  border-color:var(--cr-ink) !important;
}

/* ------------------------------------------------------------
   7. Buttons — a hairline lift, nothing showy
   ------------------------------------------------------------ */
.elementor-button{
  transition:background-color .22s,color .22s,
             border-color .22s,transform .22s !important;
}
.elementor-button:hover{transform:translateY(-1px)}

/* ------------------------------------------------------------
   8. Nav dropdown
   ------------------------------------------------------------ */
.elementor-nav-menu--dropdown{
  border:1px solid var(--cr-hair-d);
  border-radius:2px;
}

/* ------------------------------------------------------------
   9. Prose inside Text Editor widgets on the service pages
   ------------------------------------------------------------ */
.elementor-widget-text-editor h2{
  font-family:"Gloock",Georgia,serif;font-weight:400;
  font-size:clamp(26px,3vw,36px);line-height:1.12;
  letter-spacing:-.01em;margin:46px 0 16px;
}
.elementor-widget-text-editor h2:first-child{margin-top:0}
.elementor-widget-text-editor h3{
  font-family:"Gloock",Georgia,serif;font-weight:400;
  font-size:clamp(21px,2.2vw,26px);margin:34px 0 10px;
}
.elementor-widget-text-editor ul{list-style:none;padding-left:0}
.elementor-widget-text-editor ul li{
  position:relative;padding-left:26px;margin-bottom:11px;
}
.elementor-widget-text-editor ul li::before{
  content:"";position:absolute;left:0;top:.68em;
  width:11px;height:1px;background:var(--cr-madder);
}
.elementor-widget-text-editor blockquote{
  border-left:2px solid var(--cr-madder);
  padding-left:24px;margin:32px 0;
  font-family:"Gloock",Georgia,serif;
  font-size:clamp(19px,2vw,23px);line-height:1.4;
}

/* ------------------------------------------------------------
   10. Floating WhatsApp button
   Add an HTML widget anywhere on the page containing:
   <a class="cr-wa" href="https://wa.me/85298220006" aria-label="WhatsApp us">
     <svg viewBox="0 0 24 24"><path d="M17.5 14.4c-.3-.2-1.7-.9-2-1-.3-.1-.5-.1-.7.1-.2.3-.7 1-.9 1.2-.2.2-.3.2-.6.1-.3-.2-1.2-.5-2.3-1.4-.9-.8-1.4-1.7-1.6-2-.2-.3 0-.5.1-.6l.5-.5c.1-.2.2-.3.3-.5 0-.2 0-.4 0-.5 0-.2-.7-1.6-.9-2.2-.2-.6-.5-.5-.7-.5h-.6c-.2 0-.5.1-.8.4-.3.3-1 1-1 2.5s1.1 2.9 1.2 3.1c.1.2 2.1 3.2 5 4.4.7.3 1.2.5 1.7.6.7.2 1.3.2 1.8.1.6-.1 1.7-.7 1.9-1.4.2-.7.2-1.3.2-1.4-.1-.1-.3-.2-.6-.3zM12 2C6.5 2 2 6.5 2 12c0 1.8.5 3.4 1.3 4.9L2 22l5.2-1.4c1.4.8 3 1.2 4.8 1.2 5.5 0 10-4.5 10-10S17.5 2 12 2zm0 18.2c-1.6 0-3.1-.4-4.4-1.2l-.3-.2-3.1.8.8-3-.2-.3c-.9-1.4-1.3-3-1.3-4.6 0-4.6 3.8-8.4 8.4-8.4s8.4 3.8 8.4 8.4-3.7 8.5-8.3 8.5z"/></svg>
   </a>
   ------------------------------------------------------------ */
.cr-wa{
  position:fixed;right:20px;bottom:20px;z-index:998;
  width:54px;height:54px;border-radius:50%;background:#25D366;
  display:grid;place-items:center;
  box-shadow:0 6px 20px rgba(0,0,0,.32);
  transition:transform .2s;
}
.cr-wa:hover{transform:scale(1.07)}
.cr-wa svg{width:28px;height:28px;fill:#fff}

/* ------------------------------------------------------------
   11. Accessibility — visible focus, and honour reduced motion
   ------------------------------------------------------------ */
a:focus-visible,button:focus-visible,
.elementor-button:focus-visible,input:focus-visible{
  outline:2px solid var(--cr-saffron);
  outline-offset:3px;
}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{
    animation-duration:.001ms !important;
    transition-duration:.001ms !important;
  }
  .cr-card:hover{transform:none}
  .cr-card:hover img{transform:none}
}
/* Spec table on the single rug page */
.crc-specs{
  border-top:1px solid rgba(230,220,203,.16);
}
.crc-spec-row{
  border-bottom:1px solid rgba(230,220,203,.16);
}
.crc-spec-label{
  color:#C3872B;          /* saffron */
}
.crc-spec-value{
  color:#F1E9DA;          /* light */
}
/* Gallery: thumbnails vertical, beside the main image */
@media (min-width: 768px){
  .crc-gallery{
    grid-template-columns: 84px minmax(0,1fr);
    grid-template-areas: "thumbs main";
    gap: 14px;
    align-items: start;
  }
  .crc-gal-main{ grid-area: main; }

  .crc-gal-thumbs{
    grid-area: thumbs;
    grid-template-columns: minmax(0,1fr);
    max-height: 620px;
    overflow-y: auto;
    padding-right: 4px;
  }

  /* slim scrollbar so it doesn't shout */
  .crc-gal-thumbs::-webkit-scrollbar{ width: 4px; }
  .crc-gal-thumbs::-webkit-scrollbar-thumb{
    background: rgba(230,220,203,.28);
    border-radius: 2px;
  }
}
/* ============================================================
   Contact Form 7 — CustomRug
   Paste at the end of your Custom CSS
   (Elementor  >  ☰  >  Site Settings  >  Custom CSS)

   The grid lives on the form itself and each <p> is a grid
   item. That survives whatever WordPress does to the markup —
   wrapper divs get mangled by auto-formatting, paragraphs
   don't.
   ============================================================ */

.cr-form,
.cr-form *{box-sizing:border-box}

.cr-form{
  --cr-ink:#16110E;
  --cr-madder:#9C3A2C;
  --cr-hair:rgba(22,17,14,.2);
  --cr-bark:#5C4E3E;

  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px 18px;
  align-items:start;
}

/* CF7 and wpautop both add stray paragraphs — hide the empties
   so they don't punch holes in the grid */
.cr-form > p:empty,
.cr-form > br{display:none}

.cr-form > p{margin:0}

/* anything that should run the full width */
.cr-form > .cr-full{grid-column:1 / -1}

@media(max-width:640px){
  .cr-form{grid-template-columns:1fr;gap:13px}
  .cr-form > .cr-full{grid-column:auto}
}

/* --- labels: compact, above the field --- */
.cr-form label{
  display:block;
  font-family:"DM Mono",monospace;
  font-size:10px;
  letter-spacing:.13em;
  text-transform:uppercase;
  color:var(--cr-bark);
  line-height:1.3;
}
.cr-req{color:var(--cr-madder)}

.cr-intro{
  color:var(--cr-bark);
  font-size:15px;
  line-height:1.5;
  margin-bottom:2px !important;
}

.cr-legend{
  font-family:"DM Mono",monospace;
  font-size:10px;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--cr-madder);
  padding-top:14px;
  margin-top:6px !important;
  border-top:1px solid var(--cr-hair);
}

/* --- fields: tighter than the CF7 default --- */
.cr-form input[type=text],
.cr-form input[type=email],
.cr-form input[type=tel],
.cr-form select,
.cr-form textarea{
  width:100%;
  margin-top:6px;
  font-family:"Karla",system-ui,sans-serif;
  font-size:15px;
  line-height:1.3;
  color:var(--cr-ink);
  background:#fff;
  border:1px solid var(--cr-hair);
  border-radius:2px;
  padding:10px 12px;
  transition:border-color .18s,box-shadow .18s;
}
.cr-form textarea{min-height:92px;resize:vertical}

.cr-form input:focus,
.cr-form select:focus,
.cr-form textarea:focus{
  outline:none;
  border-color:var(--cr-madder);
  box-shadow:0 0 0 2px rgba(156,58,44,.13);
}
.cr-form ::placeholder{color:#a1968a;opacity:1}

/* select needs its own arrow once appearance is reset */
.cr-form select{
  appearance:none;-webkit-appearance:none;
  background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath fill='%235C4E3E' d='M1 1l5 5 5-5'/%3E%3C/svg%3E");
  background-repeat:no-repeat;
  background-position:right 12px center;
  background-size:10px;
  padding-right:32px;
}

/* --- file upload --- */
.cr-form input[type=file]{
  width:100%;margin-top:6px;
  font-family:"Karla",system-ui,sans-serif;
  font-size:13.5px;color:var(--cr-bark);
  background:#fff;
  border:1px dashed var(--cr-hair);
  border-radius:2px;
  padding:10px 12px;cursor:pointer;
}
.cr-form input[type=file]:hover{border-color:var(--cr-madder)}
.cr-hint{
  display:block;margin-top:5px;
  font-size:12.5px;color:var(--cr-bark);line-height:1.45;
}

/* --- consent --- */
.cr-consent{font-size:14px;color:var(--cr-bark);padding-top:2px}
.cr-consent .wpcf7-list-item{margin:0}
.cr-consent input[type=checkbox]{
  margin-right:8px;accent-color:var(--cr-madder);
  width:15px;height:15px;vertical-align:-2px;
}

/* --- honeypot --- */
.cr-hp{position:absolute !important;left:-9999px !important;height:0;overflow:hidden}

/* --- submit row --- */
.cr-actions{
  display:flex;align-items:center;gap:16px;flex-wrap:wrap;
  padding-top:6px;
}
.cr-form input[type=submit]{
  background:var(--cr-ink);color:#E6DCCB;border:0;border-radius:2px;
  padding:14px 30px;
  font-family:"DM Mono",monospace;
  font-size:11px;letter-spacing:.15em;text-transform:uppercase;
  cursor:pointer;transition:background .22s,transform .22s;
}
.cr-form input[type=submit]:hover{
  background:var(--cr-madder);color:#fff;transform:translateY(-1px);
}
.cr-form input[type=submit]:disabled{opacity:.55;cursor:wait}
.cr-alt{font-size:14px;color:var(--cr-bark)}
.cr-alt a{color:var(--cr-madder);text-decoration:underline;text-underline-offset:3px}

/* --- validation and response --- */
.wpcf7-not-valid-tip{
  color:var(--cr-madder);
  font-family:"Karla",system-ui,sans-serif;
  font-size:13px;letter-spacing:0;text-transform:none;margin-top:5px;
}
.cr-form input.wpcf7-not-valid,
.cr-form select.wpcf7-not-valid,
.cr-form textarea.wpcf7-not-valid{border-color:var(--cr-madder)}

.wpcf7-response-output{
  grid-column:1 / -1;
  margin:14px 0 0 !important;
  padding:14px 16px !important;
  border-width:1px !important;border-radius:2px;font-size:14.5px;
}
.wpcf7 form.sent .wpcf7-response-output{
  border-color:#5F6E45 !important;background:rgba(95,110,69,.08);color:#3D332A;
}
.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.failed .wpcf7-response-output{
  border-color:var(--cr-madder) !important;background:rgba(156,58,44,.07);color:#3D332A;
}
.wpcf7-spinner{margin-left:10px}

/* --- on a dark section: add cr-form--dark to the wrapping div --- */
.cr-form--dark label,
.cr-form--dark .cr-intro,
.cr-form--dark .cr-hint,
.cr-form--dark .cr-consent,
.cr-form--dark .cr-alt{color:#B8A88E}
.cr-form--dark .cr-legend{color:#C3872B;border-top-color:rgba(230,220,203,.18)}
.cr-form--dark input[type=submit]{background:#C3872B;color:#16110E}
.cr-form--dark input[type=submit]:hover{background:#DCA043;color:#16110E}/* End custom CSS */