/******* Do not edit this file *******
Simple Custom CSS and JS - by Silkypress.com
Saved: Jul 03 2026 | 09:21:23 */
/* =============================================================================
   LINOOR THEME — CUSTOM CSS
   Project : Ace Web Studio
   Theme   : Linoor by Layerdrops (ThemeForest #30120713)

   Table of contents
   -----------------
   1.  Design tokens (CSS variables)
   2.  Global utilities
   3.  Buttons
   4.  Layout — auto-container
   5.  Header & navigation
   6.  Page banner
   7.  Home page
       7a.  Hero / banner carousel
       7b.  Agency / About section
       7c.  Our services (work tabs)
       7d.  Features (why choose us)
   8.  Portfolio / gallery
   9.  All services
  10.  Single service
  11.  Testimonials
  12.  Counter / get-a-quote
  13.  News / blog
  14.  Contact & FluentForm
  15.  Shop / WooCommerce
  16.  Projects
  17.  About page (page-id-1750)
  18.  Footer
  19.  Responsive overrides
   ============================================================================= */


/* =============================================================================
   1. Design tokens
   ============================================================================= */

:root {
  --brand-primary   : #df7266;  /* coral-red used throughout */
  --brand-dark      : #d86e63;  /* slightly darker variant   */
  --text-dark       : #222429;
  --font-heading    : "Teko", sans-serif;
  --font-body       : "Rubik", sans-serif;
  --section-pad     : 80px;
  --section-pad-md  : 60px;     /* ≤1024px                  */
}


/* =============================================================================
   2. Global utilities
   ============================================================================= */

/* Inline emphasis */
.bold-red {
  font-weight: 700;
  color: var(--brand-primary);
}

.red-subheading {
  font-size: 20px;
  color: var(--brand-primary);
  font-family: var(--font-body);
}

/* Clearfix helper */
.clear {
  clear: both;
  float: none;
  height: 0.005em;
}


/* =============================================================================
   3. Buttons
   ============================================================================= */

/* Inline CTA button */
a.qbutton {
  background-color: var(--brand-primary);
  padding: 15px 20px;
  color: #fff;
  border-radius: 4px;
}

/* Theme-default button override */
a.theme-btn,
a.theme-btn .btn-title {
  font-family: var(--font-heading);
  clear: both !important;
  margin-top: 20px;
}

a.theme-btn .btn-title {
  padding: 15px 25px;
  margin-top: 0; /* avoid double margin when combined with parent rule */
}

/* Tab button labels */
.tab-buttons .tab-btn span {
  font-family: var(--font-heading);
}

/* Call-to-action widget button — remove default margin, tighten bottom gap */
.elementor-widget-linoor-call-to-action .theme-btn.btn-style-two {
  margin: 0 0 12px 0 !important;
}

/* On hover revert btn-title to dark text (sits on a light background) */
.elementor-widget-linoor-call-to-action .theme-btn.btn-style-two:hover .btn-title {
  color: #000 !important;
}


/* =============================================================================
   4. Layout — auto-container
   ============================================================================= */

.auto-container {
  max-width: 1170px;
  padding: 0;
}

/* Elementor Bootstrap container — strip default horizontal padding */
.container,
.container-fluid,
.container-lg,
.container-md,
.container-sm,
.container-xl {
  padding-right: 0;
  padding-left: 0;
}


/* =============================================================================
   5. Header & navigation
   ============================================================================= */

/*
 * .fixed-header is toggled via JS (see sticky-header snippet).
 * Remove this block if using the theme's built-in sticky option instead.
 */
.fixed-header {
  position: fixed;
  top: 0;
  z-index: 9999;
  width: 100%;
  background-color: #fff;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
}

/* Restore nav item padding when header is fixed */
.fixed-header .main-menu .navigation > li {
  padding: 35px 0;
}

/* Widen dropdown so longer menu labels don't wrap */
.main-menu #primary-menu .sub-menu {
  width: 240px !important;
}

/* White site-header inner text (used in transparent header variants) */
.header-inner span {
  color: #fff;
}


/* =============================================================================
   6. Page banner
   ============================================================================= */

/* Extra top padding accounts for the fixed header height */
.page-banner .inner-container {
  position: relative;
  padding: 170px 0 80px !important;
}

/* Remove the auto-generated breadcrumb separator before each item */
.page-banner .thm-breadcrumb__item:before {
  display: none;
}


/* =============================================================================
   7. Home page
   ============================================================================= */

/* --------------------------------------------------
   7a. Hero / banner carousel
   -------------------------------------------------- */

.home .owl-carousel h1 {
  font-size: 6.5rem;
  margin-top: 40px;
  letter-spacing: 2px;
}

.home h1 span {
font-size:2rem !important;
 }

/* Active slide — override Owl's transition-state size */
.banner-carousel .active .content-box h1 {
  font-size: 4.5rem !important;
}

/* Indent carousel content away from the viewport edge */
.home .banner-carousel .auto-container {
  padding-left: 50px;
}

/* Mobile: add breathing room below the CTA links */
@media only screen and (max-width: 767px) {
  .banner-carousel .content-box .link-box {
    padding-bottom: 30px;
  }
}

/* --------------------------------------------------
   7b. Agency / About section
   -------------------------------------------------- */

.agency-section {
  padding: var(--section-pad) 0;
}

.agency-section .right-col,
.agency-section .left-col {
  margin-bottom: 0;
}

/* Right-col description block gets extra bottom space on wide screens */
.agency-section .right-col .text {
  margin-bottom: 90px;
}

/* Overlapping feature image positioning */
.home .agency-section .featured-block-two .image {
  left: -58px;
  top: 36px;
  width: 310px;
}

/* Force image to full colour (no greyscale filter) */
.right-col .featured-block-two .image img,
.right-col .image-box .image img {
  -webkit-filter: none;
      -ms-filter: none;
          filter: none;
}

/* "Since" badge colours */
.right-col .image-box .since .txt {
  background: var(--brand-dark);
  color: #fff;
  font-size: 1.7rem;
}

/* Hide the standalone "since" element that appears outside the image box */
.since {
  display: none;
}

/* Reduce section spacing for adjacent zero-pad sections */
.we-work-section,
.about-section-two {
  padding: 0;
}

/* Pull the about image up to overlap the section above */
.home .about-section-two .image-box {
  margin-top: -50px !important;
}

/* Constrain image height while keeping it fluid on narrow screens */
.home .about-section-two .image-box img {
  height: 400px;
  width: auto;
  max-width: 100% !important;
}

/* --------------------------------------------------
   7c. Our services (work tabs)
   -------------------------------------------------- */

.home .text .our-services-headings {
  font-size: 32px;
  font-weight: 400;
  color: var(--text-dark);
  margin-bottom: 12px;
  display: block;
  font-family: var(--font-heading);
}

.home .tabs-content .tab .text {
  font-size: 16px;
  letter-spacing: 0;
  font-weight: 400 !important;
  color: var(--text-dark);
  font-family: var(--font-body);
}

.home .tick {
  list-style: none;
  margin: 1rem 0;
}

/* Tab body text */
.work-tabs .tabs-content .text p {
  line-height: 32px;
  margin-bottom: 15px;
}

/* Tab button labels — allow inline icon + text to sit side by side */
.work-tabs .tab-buttons .tab-btn span {
  display: inline !important;
}

/* How-it-works icon inside tab buttons */
.work-tabs .how-it-works-card__icon {
  font-size: 32px;
  margin-right: 10px;
  color: var(--brand-primary);
  display: inline !important;
  line-height: 1;
  padding-top: 0;
  margin-bottom: 0;
  position: relative;
}

/* Icon colour inverts on active tab */
.work-tabs .active-btn .how-it-works-card__icon {
  color: #fff;
}

/* Remove column bottom margin in this context */
.work-tabs .text-col {
  margin-bottom: 0;
}

/* Prevent greyscale filter on tab images on homepage */
.home .work-tabs .tabs-content .image img {
  -webkit-filter: none;
      -ms-filter: none;
          filter: none;
}

/* --------------------------------------------------
   7d. Features (why choose us)
   -------------------------------------------------- */

.home .features-section .content-box {
  max-width: 100%;
}

/* 4-column layout — remove default inner padding from the grid wrapper */
.feature-block {
  width: 25%;
  padding: 0 40px;
}

.features-section .feature-block .inner {
  padding-right: 0;
  margin-right: 0;
}

.home .testimonials-carousel-two .text {
  font-size: 30px;
}

/* Section title spacing */
.sec-title.centered {
  margin-bottom: 40px;
}


/* =============================================================================
   8. Portfolio / gallery
   ============================================================================= */

/* Centre the filter bar */
.gallery-section .upper-row .filters {
  margin: auto;
  text-align: center;
  float: none !important;
}

/* White filter labels inside a dark section */
.elementor-element-188facb .filters li,
.elementor-element-188facb .filters li.active {
  color: #fff !important;
}

/* Section headings — remove the theme's default large top padding */
.elementor-element-188facb h3,
.elementor-element-8c99dea h3 {
  padding-top: 0 !important;
  margin-bottom: 0;
}

/* Masonry section padding */
.portfolio-masonary {
  padding:0px;
}

/* Separator spacing */
.portfolio-masonary hr.porfolio-masonary__separator {
  margin-top: 20px;
  margin-bottom: 40px;
}

/* Portfolio detail page */
.portfolio-details-header {
  margin-top: 0;
}

.portfolio-details-video .vid-link {
  display: none;
}


/* =============================================================================
   9. All services
   ============================================================================= */

/* "Always at your service" section */
.about-section {
  padding: var(--section-pad) 0;
}

/* How-it-works row */
.how-it-works {
  padding-top: 0;
  padding-bottom: 0;
}

.how-it-works-card {
  margin-bottom: 0;
}

.how-it-works-card__text {
  max-width: 265px;
}

/* Services grid */
.services-section-two {
  background: #f6f6f6;
  padding-top: 0;
  padding-bottom: 100px;
}

/* Hide decorative pseudo-element on a specific service card widget */
.elementor-element-7e4580f7 .inner::before {
  display: none;
}

.service-block-two .inner-box {
  padding: 40px 35px;
}

/* Disable "read more" links on service cards (intentional) */
.service-block-two .link-box a {
  pointer-events: none;
  cursor: default;
  text-decoration: none;
}

.service-block-two .link-box {
  display: none;
}

/* Features section (maintenance etc.) */
.features-section-two .content-container,
.features-section {
  padding: var(--section-pad) 0;
}

/* Remove testimonial author block from this context */
.testimonials-four__block__top {
  display: none;
}

/* Push the carousel dots below the cards */
.testimonials-four-carousel .owl-dots {
  margin-top: 0;
  margin-bottom: 60px;
}


/* =============================================================================
   10. Single service
   ============================================================================= */

/* Feature image — constrain height, auto-centre */
.single-service .featured-section .left-col .image-box img {
  max-height: 435px;
  width: auto;
  margin-left: 25%;
}

/* Exception: web-dev service has a taller, left-shifted image */
.single-service.postid-4674 .featured-section .left-col .image-box img {
  max-height: 550px;
  margin-left: -5%;
}

/* Remove decorative pseudo-element behind the feature image */
.single-service .featured-section .left-col .image-box:before {
  display: none;
}

/* Maintenance pricing table font */
.single-service .maintenance-table {
  font-family: var(--font-heading);
  font-size: 36px;
}

/* Pricing plan sub-heading — force block display with comfortable leading */
.single-service .elementor-408 .elementor-element .elementor-price-table__subheading {
  display: block;
  line-height: 1.6rem !important;
}

/* Section headings (Elementor IDs — update if Elementor regenerates) */
.single-service .elementor-element-7cd7e12 h2,
.single-service .elementor-element-ab77327 h2 {
  font-size: 3rem !important;
}

/* Body text */
.single-service .feature .text {
  line-height: 1.6rem;
}

.single-service .history-timeline__text {
  line-height: 26px !important;
}

/* Container / sidebar */
.single-service .sidebar-page-container {
  padding: 35px 0 30px;
}

.single-service .page-container .auto-container {
  padding: 0;
}

/* Typography tweaks */
.single-service h1 {
  word-break: keep-all;
}

.single-service .small-from {
  text-transform: none;
  font-size: 2rem;
}

/* Breadcrumb alignment */
.single-service .bread-crumb li {
  text-align: center;
}

.single-service .page-banner .bread-crumb li:before {
  right: 65px;
}

/* Service nav z-index (sit above sticky elements) */
.single-service #menu-service-menu a {
  z-index: 10;
}

/* Inline price highlight */
.single-service .elementor-icon-list-text .price-bold {
  color: var(--brand-primary) !important;
  font-weight: 400;
}

/* Testimonial block */
.single-service .testi-block-two .text {
  font-size: 26px;
}

.single-service .testimonials-section-two {
  padding: 50px 0;
}

/* Section title / features column */
.featured-section .right-col .sec-title {
  margin-bottom: 5px !important;
}

.featured-section .right-col .feature {
  margin-bottom: 30px !important;
  padding: 0 30px;
}

/* Featured section section-wide padding */
.featured-section {
  padding: 0 !important;
}

/* Pricing "from" label (WooCommerce single product page #407) */
.postid-407 .elementor-price-table__price::before {
  content: "from";
  font-weight: 400;
  font-size: 20px;
  padding-top: 15px;
}


/* =============================================================================
   11. Testimonials
   ============================================================================= */

/* Hide author avatar — rely on name/company text only */
.testimonials-four-card .image {
  display: none;
}

/* Card minimum height keeps carousel rows even */
.testimonials-four-card {
  padding: 40px;
  min-height: 350px;
}


/* =============================================================================
   12. Counter / get-a-quote section
   ============================================================================= */

/* Hide animated count numbers — replaced by static phone display */
.counter-block,
.counter .counter-text .count-box {
  display: none;
}

/* Large phone number in the quote section */
.get-quote-section .counter .counter-title .phone-number {
  font-size: 60px;
  color: #000;
  display: block;
  line-height: 0.8rem;
  padding-top: 20px;
}

.get-quote-section .counter .counter-title .call-us-text {
  font-size: 24px;
  padding-top: 8px;
  display: block;
}


/* =============================================================================
   13. News / blog
   ============================================================================= */

.news-section {
  padding: var(--section-pad) 0;
}

/* Search results */
.search .entry-title {
  margin-top: 15px;
  line-height: 1.05em;
}

.search .news-block .lower-box .text {
  line-height: 28px;
}

/* Sidebar blog widgets */
.sidebar .rpwwt-widget li,
.sidebar .srpw-block li {
  padding-left: 20px;
}

/* Single post / sidebar page */
.sidebar-page-container {
  position: relative;
  padding: var(--section-pad) 0;
}

.sidebar-page-container .content-side {
  margin-bottom: 0;
}

.post-details {
  margin-bottom: 0;
}


/* =============================================================================
   14. Contact & FluentForm
   ============================================================================= */

/* Base font for all FluentForm instances */
.fluentform {
  font-family: var(--font-body);
}

/* Progress bar brand colour */
.fluentform .ff-el-progress-bar {
  background-color: var(--brand-primary);
}

/* Section title — lighter weight for readability */
.fluentform .ff-el-section-title {
  font-weight: 400;
}

/* Submit button */
.fluentform button {
  padding-bottom: 10px;
  background-color: var(--brand-primary) !important;
  border-color: var(--brand-primary) !important;
  font-family: var(--font-body);
  font-size: 0.95rem !important;
}

/* Table-style field container */
.fluentform .ff-t-container {
  font-size: 0.9rem;
  line-height: 1.4rem;
}

/* Label spacing */
.fluentform .ff-el-input--label:first-child {
  padding-bottom: 15px;
}

/* Hide labels that carry only a placeholder dot */
.fluentform .ff-el-input--label label[aria-label="."] {
  visibility: hidden !important;
}

/* Section break description */
.fluentform .ff-section_break_desk {
  font-size: 1rem;
  margin-bottom: -15px !important;
}

/* Step labels */
.fluentform .fluentform-step label {
  font-size: 1rem;
}

/* Quote form — read-only summary fields */
#ff_11_quote_summary_visible {
  line-height: 1.5rem !important;
  pointer-events: none;
  field-sizing: content !important;
}

#ff_11_estimated_total_visible {
  pointer-events: none;
}

/* Contact page: tighten checkbox group spacing */
.page-id-31 .ff-el-form-check.ff-el-form-check- {
  margin-top: -15px;
}


/* =============================================================================
   15. Shop / WooCommerce
   ============================================================================= */

/* Remove theme padding wrapping the cart table */
.woocommerce-cart .woocommerce {
  padding-top: 0 !important;
  margin-top: 0 !important;
  padding-bottom: 0;
}

/* Checkout page */
.woocommerce-checkout .woocommerce {
  padding-top: 0;
  padding-bottom: 0;
}


/* =============================================================================
   16. Projects
   ============================================================================= */

.project-single {
  padding-top: 5px !important;
}

.project-single h2 {
  font-size: 35px !important;
}

.project-single h3 {
  font-size: 25px !important;
}


/* =============================================================================
   17. About page  (page-id-1750)
   ============================================================================= */

.page-id-1750 .sec-title .lower-text {
  padding: 15px 0;
  line-height: 1.8rem;
}

.page-id-1750 .features .text {
  padding: 10px 0;
  line-height: 1.8rem;
}


/* =============================================================================
   18. Footer
   ============================================================================= */

/* Newsletter form — left-align the submit button */
.newsletter-form .form-group .theme-btn {
  left: -4px !important;
  right: auto !important;
}

/* Offset email input text so it clears the envelope icon */
.main-footer .newsletter-form .form-group input[type="email"] {
  padding-left: 60px;
}

/* Live section — force white text on dark backgrounds */
.live-section .main-image-box .title h3,
.theme-btn .btn-title,
.live-section .main-image-box .more-link a,
.live-section .main-image-box .more-link a:before {
  color: #fff;
}

.live-section .main-image-box .more-link a:before {
  border-color: #fff;
}

/* CTA section heading — white text, nudge down to clear any overlap */
.call-to-section h2 {
  color: #fff;
  position: relative;
  top: 20px;
}

/* Parallax section — force heading accent span to white */
.parallax-section .content-box h2 span {
  color: #fff;
}

/* Active tab label */
.default-tabs .tab-btn.active-btn span {
  color: #fff;
}

/* Hide the list that appears in the active tab panel (decorative only) */
.tab.active-tab .list-unstyled {
  display: none;
}


/* =============================================================================
   19. Responsive overrides
   ============================================================================= */

/* -------------------------------------------------------
   Large desktop  1200px – 1440px
   ------------------------------------------------------- */

@media (min-width: 1200px) and (max-width: 1440px) {
  /* Home page content column needs extra left offset */
  .content {
    padding-left: 100px !important;
  }
}

/* -------------------------------------------------------
   Medium desktop / large tablet  1025px – 1500px
   ------------------------------------------------------- */

@media (min-width: 1025px) and (max-width: 1500px) {
  .auto-container {
    padding: 0 0px;
  }
}

/* -------------------------------------------------------
   Tablet landscape / small desktop  1025px – 1199px
   ------------------------------------------------------- */

@media (min-width: 1025px) and (max-width: 1199px) {
  .agency-section .right-col .text {
    margin-bottom: 0;
  }

  .home .agency-section .featured-block-two .image {
    top: 0 !important;
  }
}

/* -------------------------------------------------------
   Tablet portrait / small desktop  ≤1024px
   ------------------------------------------------------- */

@media only screen and (max-width: 1024px) {
  /* Auto container */
  .auto-container {
    padding: 0 0px;
  }

  /* Section padding */
  .featured-section {
    padding: 0px !important;
  }

  .features-section-two .content-container,
  .features-section {
    padding: var(--section-pad-md) 0;
  }

  .agency-section,
  .about-section,
  .news-section,
  .sidebar-page-container {
    padding: var(--section-pad-md) 0;
  }

  /* Portfolio masonry */
  .portfolio-masonary {
    padding:0px;
  }

  /* Section title */
  .sec-title.centered {
    margin-bottom: 20px;
  }

  .sec-title {
    margin-bottom: 0;
  }

  .sec-title .lower-text {
    padding: 10px 0 0;
  }

  .about-section .text-column .sec-title {
    margin-bottom: 10px;
  }

  .about-section .text-column .text p {
    margin-bottom: 10px;
  }

  /* Footer Elementor overrides */
  .elementor-293 .elementor-element.elementor-element-2b81bb3 {
    padding: 60px 0 0 0 !important;
  }

  .elementor-293 .elementor-element.elementor-element-3e86eaf {
    padding: 0 !important;
  }

  .main-footer .footer-bottom .inner {
    padding: 20px 0 0;
  }
}

/* -------------------------------------------------------
   Tablet portrait  992px – 1024px
   ------------------------------------------------------- */

@media (min-width: 992px) and (max-width: 1024px) {
  .testimonials-four-card {
    padding: 40px;
    min-height: 420px;
    margin-bottom: 30px;
  }

  .woocommerce-account .woocommerce {
    padding-top: 0;
    padding-bottom: 60px;
  }
}

/* -------------------------------------------------------
   Tablet portrait  1025px – 1207px
   ------------------------------------------------------- */

@media (min-width: 1025px) and (max-width: 1207px) {
  .testimonials-four-card {
    padding: 40px;
    min-height: 420px;
    margin-bottom: 80px;
  }
}

/* -------------------------------------------------------
   Phablet / mobile landscape  400px – 991px
   ------------------------------------------------------- */

@media (min-width: 400px) and (max-width: 991px) {
  .testimonials-four-card {
    padding: 40px;
    min-height: 260px;
    margin-bottom: 30px;
  }
}

/* -------------------------------------------------------
   Tablet / landscape  768px – 1024px
   ------------------------------------------------------- */

@media (min-width: 768px) and (max-width: 1024px) {
  /* Footer inner column indentation */
  .elementor-column.elementor-col-25.elementor-inner-column.elementor-element.elementor-element-c577dab {
    padding-left: 30px;
  }
}

/* -------------------------------------------------------
   Mobile  ≤767px
   ------------------------------------------------------- */

@media only screen and (max-width: 767px) {
  /* Feature blocks: remove right-only padding on first item */
  .feature-block:nth-child(1) {
    padding: 0 40px 0 0;
  }

  /* Portfolio — tighten separator & filter spacing */
  .portfolio-masonary hr.porfolio-masonary__separator {
    margin-top: 20px;
    margin-bottom: 20px;
  }

  .portfolio-masonary__filter-wrapper {
    margin-bottom: 20px;
  }

  /* Hide superscript marks (footnote-style asterisks) */
  sup {
    display: none;
  }

  .portfolio-masonary .masonary-layout {
    margin-bottom: 0;
  }

  /* Section titles — no extra bottom margin */
  .sec-title {
    margin-bottom: 0;
  }
}

/* Hero slider sliding stop sliding */

.banner-carousel .owl-stage-outer {
    pointer-events: none;
}

.banner-carousel .owl-stage-outer a {
    pointer-events: auto;
} 

/* Stars */

.review-stars {
  color: #f5b301;
  letter-spacing: 2px;
}

/* Corrections  */

.page .page-banner h1 {
font-weight:500px !important;
}

.page .call-to-section .inner {
	padding: 55px 95px 34px !important;
}

.footer-widget.logo-widget .logo img {
	width:auto !important; 
}