Browse Source

Oct 7 : [ADD] Initial Commit 'theme_eco_refine'

pull/295/head
AjmalCybro 2 years ago
parent
commit
4df9d19970
  1. 47
      theme_eco_refine/README.rst
  2. 23
      theme_eco_refine/__init__.py
  3. 78
      theme_eco_refine/__manifest__.py
  4. 24
      theme_eco_refine/controllers/__init__.py
  5. 31
      theme_eco_refine/controllers/about_us.py
  6. 132
      theme_eco_refine/controllers/dynamic_snippets.py
  7. 204
      theme_eco_refine/controllers/theme_eco_refine.py
  8. 12
      theme_eco_refine/data/theme_eco_refine_menus.xml
  9. 6
      theme_eco_refine/doc/RELEASE_NOTES.md
  10. 24
      theme_eco_refine/models/__init__.py
  11. 36
      theme_eco_refine/models/product_template.py
  12. 32
      theme_eco_refine/models/website.py
  13. BIN
      theme_eco_refine/static/description/banner.png
  14. BIN
      theme_eco_refine/static/description/icon.png
  15. BIN
      theme_eco_refine/static/description/images/About-us-mobile-temp.png
  16. BIN
      theme_eco_refine/static/description/images/Edu.png
  17. BIN
      theme_eco_refine/static/description/images/FAQ.png
  18. BIN
      theme_eco_refine/static/description/images/POS.png
  19. BIN
      theme_eco_refine/static/description/images/Production.png
  20. BIN
      theme_eco_refine/static/description/images/Shop-responsive.png
  21. BIN
      theme_eco_refine/static/description/images/Top_rated_products.png
  22. BIN
      theme_eco_refine/static/description/images/about_us_1.png
  23. BIN
      theme_eco_refine/static/description/images/about_us_2.png
  24. BIN
      theme_eco_refine/static/description/images/arrow-black.png
  25. BIN
      theme_eco_refine/static/description/images/banner-img.png
  26. BIN
      theme_eco_refine/static/description/images/banner_1.png
  27. BIN
      theme_eco_refine/static/description/images/banner_2.png
  28. BIN
      theme_eco_refine/static/description/images/best_seller.png
  29. BIN
      theme_eco_refine/static/description/images/blog-responsive-design.png
  30. BIN
      theme_eco_refine/static/description/images/blog.png
  31. BIN
      theme_eco_refine/static/description/images/collections.png
  32. BIN
      theme_eco_refine/static/description/images/contact_us.png
  33. BIN
      theme_eco_refine/static/description/images/customer_response.png
  34. BIN
      theme_eco_refine/static/description/images/home-mobile.png
  35. BIN
      theme_eco_refine/static/description/images/home_2.png
  36. BIN
      theme_eco_refine/static/description/images/icon-Compatibility-with-plugins.png
  37. BIN
      theme_eco_refine/static/description/images/icon-Fast-loading-times.png
  38. BIN
      theme_eco_refine/static/description/images/icon-One-Click-Installation.png
  39. BIN
      theme_eco_refine/static/description/images/icon-Responsive-design.png
  40. BIN
      theme_eco_refine/static/description/images/icon-Up-to-date-development.png
  41. BIN
      theme_eco_refine/static/description/images/icon-design.png
  42. BIN
      theme_eco_refine/static/description/images/logo-cybro.png
  43. BIN
      theme_eco_refine/static/description/images/new_arrival.png
  44. BIN
      theme_eco_refine/static/description/images/odoo-consultency.png
  45. BIN
      theme_eco_refine/static/description/images/odoo-customization.png
  46. BIN
      theme_eco_refine/static/description/images/odoo-developer.png
  47. BIN
      theme_eco_refine/static/description/images/odoo-implement.png
  48. BIN
      theme_eco_refine/static/description/images/odoo-intergration.png
  49. BIN
      theme_eco_refine/static/description/images/odoo-licencing.png
  50. BIN
      theme_eco_refine/static/description/images/odoo-logo.png
  51. BIN
      theme_eco_refine/static/description/images/odoo-migration.png
  52. BIN
      theme_eco_refine/static/description/images/odoo-support.png
  53. BIN
      theme_eco_refine/static/description/images/screen-shot-01.png
  54. BIN
      theme_eco_refine/static/description/images/shop.png
  55. BIN
      theme_eco_refine/static/description/images/single_product.png
  56. BIN
      theme_eco_refine/static/description/images/trading.png
  57. 1428
      theme_eco_refine/static/description/index.html
  58. BIN
      theme_eco_refine/static/description/theme_screenshot.jpg
  59. 711
      theme_eco_refine/static/src/css/about_us.css
  60. 281
      theme_eco_refine/static/src/css/blog.css
  61. 562
      theme_eco_refine/static/src/css/contact_us.css
  62. 1236
      theme_eco_refine/static/src/css/home.css
  63. 186
      theme_eco_refine/static/src/css/owl.carousel.css
  64. 546
      theme_eco_refine/static/src/css/product.css
  65. 3
      theme_eco_refine/static/src/img/Arrow 1.svg
  66. 3
      theme_eco_refine/static/src/img/Arrow 2.svg
  67. BIN
      theme_eco_refine/static/src/img/Iphone 1.png
  68. 4
      theme_eco_refine/static/src/img/Laptop.svg
  69. 23
      theme_eco_refine/static/src/img/Quality Product.svg
  70. 3
      theme_eco_refine/static/src/img/Vector (3).svg
  71. BIN
      theme_eco_refine/static/src/img/about-hero-banner.png
  72. BIN
      theme_eco_refine/static/src/img/blog-bg.png
  73. 9
      theme_eco_refine/static/src/img/camera 1.svg
  74. 7
      theme_eco_refine/static/src/img/cart-icon.svg
  75. 1
      theme_eco_refine/static/src/img/community.svg
  76. BIN
      theme_eco_refine/static/src/img/contact-hero.png
  77. 3
      theme_eco_refine/static/src/img/cross.svg
  78. 4
      theme_eco_refine/static/src/img/email.svg
  79. 4
      theme_eco_refine/static/src/img/exchange.svg
  80. 3
      theme_eco_refine/static/src/img/facebook.svg
  81. 11
      theme_eco_refine/static/src/img/filter.svg
  82. BIN
      theme_eco_refine/static/src/img/goal-gd9f02c7b0_1920 1.png
  83. 9
      theme_eco_refine/static/src/img/guarantee (3) 1.svg
  84. 9
      theme_eco_refine/static/src/img/headphone 1.svg
  85. 5
      theme_eco_refine/static/src/img/instagram.svg
  86. BIN
      theme_eco_refine/static/src/img/levitating-music-headphones-display 1.png
  87. 3
      theme_eco_refine/static/src/img/like.svg
  88. 3
      theme_eco_refine/static/src/img/location.svg
  89. 4
      theme_eco_refine/static/src/img/login.svg
  90. 3
      theme_eco_refine/static/src/img/phone.svg
  91. 3
      theme_eco_refine/static/src/img/plus.svg
  92. 3
      theme_eco_refine/static/src/img/pricing.svg
  93. 3
      theme_eco_refine/static/src/img/product-cart.svg
  94. 3
      theme_eco_refine/static/src/img/product-like.svg
  95. BIN
      theme_eco_refine/static/src/img/product-page-herobanner.png
  96. 3
      theme_eco_refine/static/src/img/product-view.svg
  97. 3
      theme_eco_refine/static/src/img/quotes-after.svg
  98. 3
      theme_eco_refine/static/src/img/quotes-before.svg
  99. BIN
      theme_eco_refine/static/src/img/refurbished-img.jpg
  100. 5
      theme_eco_refine/static/src/img/return.svg

47
theme_eco_refine/README.rst

@ -0,0 +1,47 @@
.. image:: https://img.shields.io/badge/licence-AGPL--3-blue.svg
:target: https://www.gnu.org/licenses/agpl-3.0-standalone.html
:alt: License: AGPL-3
Theme Eco Refine
================
* Theme Eco Refine module provide attractive and unique front end theme mainly suitable for eCommerce website
Installation
============
- www.odoo.com/documentation/16.0/setup/install.html
- Install our custom addon
License
-------
GNU AFFERO GENERAL PUBLIC LICENSE Version 3 (AGPL v3)
( https://www.gnu.org/licenses/agpl-3.0-standalone.html)
Company
-------
* `Cybrosys Techno Solutions <https://cybrosys.com/>`__
Credits
-------
* Developer:
(V16) Vishnu P, Contact: odoo@cybrosys.com
Contacts
--------
* Mail Contact : odoo@cybrosys.com
* Website : https://cybrosys.com
Bug Tracker
-----------
Bugs are tracked on GitHub Issues. In case of trouble, please check there if your issue has already been reported.
Maintainer
==========
.. image:: https://cybrosys.com/images/logo.png
:target: https://cybrosys.com
This module is maintained by Cybrosys Technologies.
For support and more information, please visit https://www.cybrosys.com
Further information
===================
HTML Description: `<static/description/index.html>`__

23
theme_eco_refine/__init__.py

@ -0,0 +1,23 @@
# -*- coding: utf-8 -*-
#############################################################################
#
# Cybrosys Technologies Pvt. Ltd.
#
# Copyright (C) 2023-TODAY Cybrosys Technologies(<https://www.cybrosys.com>)
# Author: Vishnu P(odoo@cybrosys.com)
#
# You can modify it under the terms of the GNU AFFERO
# GENERAL PUBLIC LICENSE (AGPL v3), Version 3.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU AFFERO GENERAL PUBLIC LICENSE (AGPL v3) for more details
#
# You should have received a copy of the GNU AFFERO GENERAL PUBLIC LICENSE
# (AGPL v3) along with this program.
# If not, see <http://www.gnu.org/licenses/>.
#
#############################################################################
from . import controllers
from . import models

78
theme_eco_refine/__manifest__.py

@ -0,0 +1,78 @@
# -*- coding: utf-8 -*-
#############################################################################
#
# Cybrosys Technologies Pvt. Ltd.
#
# Copyright (C) 2023-TODAY Cybrosys Technologies(<https://www.cybrosys.com>)
# Author: Vishnu P(odoo@cybrosys.com)
#
# You can modify it under the terms of the GNU AFFERO
# GENERAL PUBLIC LICENSE (AGPL v3), Version 3.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU AFFERO GENERAL PUBLIC LICENSE (AGPL v3) for more details
#
# You should have received a copy of the GNU AFFERO GENERAL PUBLIC LICENSE
# (AGPL v3) along with this program.
# If not, see <http://www.gnu.org/licenses/>.
#
#############################################################################
{
'name': 'Theme Eco Refine',
'version': '16.0.1.0.0',
'category': 'Theme/eCommerce',
'summary': 'Theme Eco Refine',
'description': 'Theme Eco Refine module provide attractive and unique '
'front end theme mainly suitable for eCommerce website',
'author': 'Cybrosys Techno Solutions',
'company': 'Cybrosys Techno Solutions',
'maintainer': 'Cybrosys Techno Solutions',
'website': "https://www.cybrosys.com",
"depends": ['base', 'web', 'website', 'website_livechat',
'website_sale_wishlist', 'website_blog', ],
'data': [
'data/theme_eco_refine_menus.xml',
'views/product_template_views.xml',
'views/website_blog_templates.xml',
'views/templates.xml',
'static/src/xml/homepage_templates.xml',
'views/snippets.xml',
'views/about_us_templates.xml'
],
'assets': {
'web.assets_frontend': [
'https://code.jquery.com/jquery-3.2.1.slim.min.js',
'https://cdn.jsdelivr.net/npm/popper.js@1.12.9/dist/umd/popper.min.js',
'https://cdn.jsdelivr.net/npm/bootstrap@4.0.0/dist/js/bootstrap.min.js',
'theme_eco_refine/static/src/css/contact_us.css',
'theme_eco_refine/static/src/css/product.css',
'theme_eco_refine/static/src/css/home.css',
'theme_eco_refine/static/src/css/blog.css',
'theme_eco_refine/static/src/js/product_specification.js',
'theme_eco_refine/static/src/css/about_us.css',
'theme_eco_refine/static/src/js/about_us.js',
'theme_eco_refine/static/src/js/owl.carousel.js',
'theme_eco_refine/static/src/js/owl.carousel.min.js',
'theme_eco_refine/static/src/css/owl.carousel.css',
'theme_eco_refine/static/src/js/collection_snippet.js',
'theme_eco_refine/static/src/js/refurbished_carousel_snippet.js',
'theme_eco_refine/static/src/js/best_seller_snippet.js',
'theme_eco_refine/static/src/xml/best_seller_snippet_templates.xml',
'theme_eco_refine/static/src/js/new_arrival_snippet.js',
'theme_eco_refine/static/src/xml/new_arrival_snippet_templates.xml',
'theme_eco_refine/static/src/js/customer_response.js',
'theme_eco_refine/static/src/js/top_rated_products_snippet.js',
'theme_eco_refine/static/src/xml/top_rated_product_snippet_templates.xml',
],
},
'images': [
'static/description/banner.png',
'static/description/theme_screenshot.jpg',
],
'license': 'AGPL-3',
'installable': True,
'auto_install': False,
'application': False,
}

24
theme_eco_refine/controllers/__init__.py

@ -0,0 +1,24 @@
# -*- coding: utf-8 -*-
#############################################################################
#
# Cybrosys Technologies Pvt. Ltd.
#
# Copyright (C) 2023-TODAY Cybrosys Technologies(<https://www.cybrosys.com>)
# Author: Author: Vishnu P(odoo@cybrosys.com)
#
# You can modify it under the terms of the GNU AFFERO
# GENERAL PUBLIC LICENSE (AGPL v3), Version 3.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU AFFERO GENERAL PUBLIC LICENSE (AGPL v3) for more details
#
# You should have received a copy of the GNU AFFERO GENERAL PUBLIC LICENSE
# (AGPL v3) along with this program.
# If not, see <http://www.gnu.org/licenses/>.
#
#############################################################################
from . import about_us
from . import dynamic_snippets
from . import theme_eco_refine

31
theme_eco_refine/controllers/about_us.py

@ -0,0 +1,31 @@
# -*- coding: utf-8 -*-
#############################################################################
#
# Cybrosys Technologies Pvt. Ltd.
#
# Copyright (C) 2023-TODAY Cybrosys Technologies(<https://www.cybrosys.com>)
# Author: Author: Vishnu P(odoo@cybrosys.com)
#
# You can modify it under the terms of the GNU AFFERO
# GENERAL PUBLIC LICENSE (AGPL v3), Version 3.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU AFFERO GENERAL PUBLIC LICENSE (AGPL v3) for more details
#
# You should have received a copy of the GNU AFFERO GENERAL PUBLIC LICENSE
# (AGPL v3) along with this program.
# If not, see <http://www.gnu.org/licenses/>.
#
#############################################################################
""" About us page controller """
from odoo import http
class EcoRefine(http.Controller):
"""Class used to define function which renders appropriate template."""
@http.route('/about_us', type='http', website=True, auth='public')
def eco_refine_about_us(self):
"""Renders template about_us page."""
return http.request.render('theme_eco_refine.about_us', {})

132
theme_eco_refine/controllers/dynamic_snippets.py

@ -0,0 +1,132 @@
# -*- coding: utf-8 -*-
#############################################################################
#
# Cybrosys Technologies Pvt. Ltd.
#
# Copyright (C) 2023-TODAY Cybrosys Technologies(<https://www.cybrosys.com>)
# Author: Vishnu P(odoo@cybrosys.com)
#
# You can modify it under the terms of the GNU AFFERO
# GENERAL PUBLIC LICENSE (AGPL v3), Version 3.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU AFFERO GENERAL PUBLIC LICENSE (AGPL v3) for more details
#
# You should have received a copy of the GNU AFFERO GENERAL PUBLIC LICENSE
# (AGPL v3) along with this program.
# If not, see <http://www.gnu.org/licenses/>.
#
#############################################################################
import time
from odoo import http
from odoo.http import request
class DynamicSnippets(http.Controller):
"""This class is for the getting values for dynamic product snippets
"""
@http.route('/top_selling_products', type='json', auth='public')
def top_selling(self):
"""Function for getting the current website,top sold products and
its categories.
Return
products-most sold products
unique_categories-categories of all products
current_website-the current website for checking products or
"""
current_website = request.env['website'].sudo().get_current_website().id
public_categ_id = request.env[
'product.public.category'].sudo().search_read([], ['name',
'website_id'])
products = []
public_categories = []
for category in public_categ_id:
products_search_read = request.env['product.template'].with_user(
1).search_read(
[('is_published', '=', True),
('public_categ_ids.id', '=', category['id'])],
['name', 'image_1920', 'public_categ_ids', 'website_id',
'sales_count', 'list_price'], order='sales_count')
for product in products_search_read:
if product['sales_count'] != 0:
products.append(product)
public_categories.append(category)
unique_categories = [dict(categories) for categories in
{tuple(sorted(record.items())) for record in
public_categories}]
products = sorted(products, key=lambda i: i['sales_count'],
reverse=True)
unique_id = "pc-%d" % int(time.time() * 1000)
return products, unique_categories, current_website, unique_id
@http.route('/new_arrival_products', type='json', auth='public')
def products_new_arrivals(self):
"""Function for getting the current website,new arrival products and
its categories.
Return
products-most sold products
unique_categories-categories of all products
current_website-the current website for checking products or
"""
current_website = request.env[
'website'].sudo().get_current_website().id
public_categ_id = request.env[
'product.public.category'].sudo().search_read([], ['name',
'website_id'])
products = []
public_categories = []
for category in public_categ_id:
products_search_read = request.env['product.template'].with_user(
1).search_read(
[('is_published', '=', True),
('public_categ_ids.id', '=', category['id'])],
['name', 'public_categ_ids', 'website_id',
'sales_count', 'image_1920', 'list_price', 'create_date'],
order='create_date desc')
for product in products_search_read:
products.append(product)
public_categories.append(category)
unique_id = "uc-%d" % int(time.time() * 1000)
unique_categories = [dict(categories) for categories in
{tuple(sorted(record.items())) for record in
public_categories}]
products = sorted(products, key=lambda i: i['create_date'],
reverse=True)
return products, unique_categories, current_website, unique_id
@http.route('/top_rated_products', type='json', auth='public')
def top_rated_products(self):
"""Function for getting the current website,rated products and
its categories.
Return
products-most sold products
unique_categories-categories of all products
current_website-the current website for checking products or
"""
current_website = request.env[
'website'].sudo().get_current_website().id
public_categ_id = request.env[
'product.public.category'].sudo().search_read([], ['name',
'website_id'])
rated_products = request.env['rating.rating'].sudo().search_read(
[('res_model', '=', 'product.template')],
['res_id', 'res_name', ], order='rating desc')
products = []
public_categories = []
for category in rated_products:
products_search_read = request.env['product.template'].with_user(
1).search_read(
[('is_published', '=', True),
('id', '=', category['res_id'])],
['name', 'public_categ_ids', 'website_id',
'sales_count', 'image_1920', 'list_price', 'create_date'],)
for product in products_search_read:
if not product in products:
products.append(product)
public_categories.append(category)
unique_categories = [dict(categories) for categories in
{tuple(sorted(record.items())) for record in
public_categories}]
return products, unique_categories, current_website, public_categ_id

204
theme_eco_refine/controllers/theme_eco_refine.py

@ -0,0 +1,204 @@
# -*- coding: utf-8 -*-
#############################################################################
#
# Cybrosys Technologies Pvt. Ltd.
#
# Copyright (C) 2023-TODAY Cybrosys Technologies(<https://www.cybrosys.com>)
# Author: Vishnu P(odoo@cybrosys.com)
#
# You can modify it under the terms of the GNU AFFERO
# GENERAL PUBLIC LICENSE (AGPL v3), Version 3.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU AFFERO GENERAL PUBLIC LICENSE (AGPL v3) for more details
#
# You should have received a copy of the GNU AFFERO GENERAL PUBLIC LICENSE
# (AGPL v3) along with this program.
# If not, see <http://www.gnu.org/licenses/>.
#
#############################################################################
import babel.dates
import itertools
import pytz
from odoo.http import request
from odoo.tools import lazy
from odoo import http, fields
from werkzeug.exceptions import NotFound
from collections import OrderedDict
from odoo.tools import sql
from odoo.tools.misc import get_lang
from odoo.addons.website.controllers.main import QueryURL
from odoo.addons.http_routing.models.ir_http import slug, unslug
from odoo.addons.website_sale.controllers.main import TableCompute, WebsiteSale
class WebsiteShop(WebsiteSale):
"""Shop Controller
super the controller to set 3 columns of products in
website shop instead of 4
"""
@http.route(['/shop/config/website'], type='json', auth='user')
def _change_website_config(self, **options):
"""
Function for shop configuration
"""
if not request.env.user.has_group(
'website.group_website_restricted_editor'):
raise NotFound()
current_website = request.env['website'].get_current_website()
# Restrict options we can write to.
writable_fields = {
'shop_ppg', 'shop_ppr', 'shop_default_sort',
'product_page_image_layout', 'product_page_image_width',
'product_page_grid_columns', 'product_page_image_spacing'
}
# Default ppg to 1.
if 'ppg' in options and not options['ppg']:
options['ppg'] = 1
if 'product_page_grid_columns' in options:
options['product_page_grid_columns'] = int(
options['product_page_grid_columns'])
write_vals = {k: v for k, v in options.items() if k in writable_fields}
if write_vals:
current_website.write(write_vals)
current_website.select = True
@http.route()
def shop(self, page=0, category=None, search='', min_price=0.0,
max_price=0.0, ppg=False, **post):
"""Function for website shop"""
current_website = request.env['website'].get_current_website()
if not current_website.select:
ppg = 12
ppr = 3
res = super(WebsiteShop, self).shop(page=page, category=category,
search=search,
min_price=min_price,
max_price=max_price, ppg=ppg,
**post)
products = res.qcontext['products']
res.qcontext.update({
'bins': lazy(
lambda: TableCompute().process(products, ppg, ppr)),
'ppr': ppr,
})
return res
else:
ppg = current_website.shop_ppg
ppr = current_website.shop_ppr
res = super(WebsiteShop, self).shop(page=page, category=category,
search=search,
min_price=min_price,
max_price=max_price, ppg=ppg,
**post)
products = res.qcontext['products']
res.qcontext.update({
'bins': lazy(
lambda: TableCompute().process(products, ppg, ppr)),
'ppr': ppr,
})
current_website.select = True
return res
class WebsiteBlog(http.Controller):
"""
Class for Website blog, super the controller to get the previous blog id
"""
def nav_list(self, blog=None):
dom = blog and [('blog_id', '=', blog.id)] or []
if not request.env.user.has_group('website.group_website_designer'):
dom += [('post_date', '<=', fields.Datetime.now())]
groups = request.env['blog.post']._read_group_raw(
dom,
['name', 'post_date'],
groupby=["post_date"], orderby="post_date desc")
for group in groups:
(r, label) = group['post_date']
start, end = r.split('/')
group['post_date'] = label
group['date_begin'] = start
group['date_end'] = end
locale = get_lang(request.env).code
start = pytz.UTC.localize(fields.Datetime.from_string(start))
tzinfo = pytz.timezone(request.context.get('tz', 'utc') or 'utc')
group['month'] = babel.dates.format_datetime(start, format='MMMM',
tzinfo=tzinfo,
locale=locale)
group['year'] = babel.dates.format_datetime(start, format='yyyy',
tzinfo=tzinfo,
locale=locale)
return OrderedDict((year, [m for m in months]) for year, months in
itertools.groupby(groups, lambda g: g['year']))
@http.route([
'''/blog/<model("blog.blog"):blog>/<model("blog.post", "[('blog_id','=',blog.id)]"):blog_post>''',
], type='http', auth="public", website=True, sitemap=True)
def blog_post(self, blog, blog_post, tag_id=None, page=1,
enable_editor=None, **post):
""" Prepare all values to display the blog.
:return dict values: values for the templates, containing
- 'blog_post': browse of the current post
- 'blog': browse of the current blog
- 'blogs': list of browse records of blogs
- 'tag': current tag, if tag_id in parameters
- 'tags': all tags, for tag-based navigation
- 'pager': a pager on the comments
- 'nav_list': a dict [year][month] for archives navigation
- 'next_post': next blog post, to direct the user towards the next
interesting post
"""
BlogPost = request.env['blog.post']
date_begin, date_end = post.get('date_begin'), post.get('date_end')
domain = request.website.website_domain()
blogs = blog.search(domain, order="create_date, id asc")
tag = None
if tag_id:
tag = request.env['blog.tag'].browse(int(tag_id))
blog_url = QueryURL('', ['blog', 'tag'], blog=blog_post.blog_id,
tag=tag, date_begin=date_begin, date_end=date_end)
if not blog_post.blog_id.id == blog.id:
return request.redirect(
"/blog/%s/%s" % (slug(blog_post.blog_id), slug(blog_post)),
code=301)
tags = request.env['blog.tag'].search([])
# Find next Post
blog_post_domain = [('blog_id', '=', blog.id)]
if not request.env.user.has_group('website.group_website_designer'):
blog_post_domain += [('post_date', '<=', fields.Datetime.now())]
all_post = BlogPost.search(blog_post_domain)
if blog_post not in all_post:
return request.redirect("/blog/%s" % (slug(blog_post.blog_id)))
# should always return at least the current post
all_post_ids = all_post.ids
current_blog_post_index = all_post_ids.index(blog_post.id)
nb_posts = len(all_post_ids)
next_post_id = all_post_ids[
(current_blog_post_index + 1) % nb_posts] if nb_posts > 1 else None
next_post = next_post_id and BlogPost.browse(next_post_id) or False
prev_post_id = all_post_ids[
(current_blog_post_index - 1) % nb_posts] if nb_posts > 1 else None
prev_post = next_post_id and BlogPost.browse(prev_post_id) or False
values = {
'tags': tags,
'tag': tag,
'blog': blog,
'blog_post': blog_post,
'blogs': blogs,
'main_object': blog_post,
'enable_editor': enable_editor,
'next_post': next_post,
'date': date_begin,
'blog_url': blog_url,
'prev_post': prev_post,
}
response = request.render("website_blog.blog_post_complete", values)
if blog_post.id not in request.session.get('posts_viewed', []):
if sql.increment_fields_skiplock(blog_post, 'visits'):
if not request.session.get('posts_viewed'):
request.session['posts_viewed'] = []
request.session['posts_viewed'].append(blog_post.id)
request.session.modified = True
return response

12
theme_eco_refine/data/theme_eco_refine_menus.xml

@ -0,0 +1,12 @@
<?xml version="1.0" encoding="UTF-8" ?>
<odoo>
<data noupdate="1">
<record id="menu_about_us" model="website.menu">
<!-- Website menu of About us page-->
<field name="name">About us</field>
<field name="url">/about_us</field>
<field name="parent_id" ref="website.main_menu"/>
<field name="sequence">59</field>
</record>
</data>
</odoo>

6
theme_eco_refine/doc/RELEASE_NOTES.md

@ -0,0 +1,6 @@
## Module <theme_eco_refine>
#### 27.09.2023
#### Version 16.0.1.0.0
#### ADD
- Initial commit for Theme Eco Refine

24
theme_eco_refine/models/__init__.py

@ -0,0 +1,24 @@
# -*- coding: utf-8 -*-
#############################################################################
#
# Cybrosys Technologies Pvt. Ltd.
#
# Copyright (C) 2023-TODAY Cybrosys Technologies(<https://www.cybrosys.com>)
# Author: Vishnu P(odoo@cybrosys.com)
#
# You can modify it under the terms of the GNU AFFERO
# GENERAL PUBLIC LICENSE (AGPL v3), Version 3.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU AFFERO GENERAL PUBLIC LICENSE (AGPL v3) for more details
#
# You should have received a copy of the GNU AFFERO GENERAL PUBLIC LICENSE
# (AGPL v3) along with this program.
# If not, see <http://www.gnu.org/licenses/>.
#
#############################################################################
""" Import models"""
from . import product_template
from . import website

36
theme_eco_refine/models/product_template.py

@ -0,0 +1,36 @@
# -*- coding: utf-8 -*-
#############################################################################
#
# Cybrosys Technologies Pvt. Ltd.
#
# Copyright (C) 2023-TODAY Cybrosys Technologies(<https://www.cybrosys.com>)
# Author: Vishnu P(odoo@cybrosys.com)
#
# You can modify it under the terms of the GNU AFFERO
# GENERAL PUBLIC LICENSE (AGPL v3), Version 3.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU AFFERO GENERAL PUBLIC LICENSE (AGPL v3) for more details
#
# You should have received a copy of the GNU AFFERO GENERAL PUBLIC LICENSE
# (AGPL v3) along with this program.
# If not, see <http://www.gnu.org/licenses/>.
#
#############################################################################
""" Inherit product template add product specs and details"""
from odoo import fields, models
class ProductTemplate(models.Model):
"""Inherit model product template and fields for
product specification and product details"""
_inherit = 'product.template'
product_spec = fields.Text(
string='Product Specification', translate=True,
help="The Specification of the Product.")
product_detail = fields.Text(
string='Product Detail', translate=True,
help="The Details of the Product ")

32
theme_eco_refine/models/website.py

@ -0,0 +1,32 @@
# -*- coding: utf-8 -*-
#############################################################################
#
# Cybrosys Technologies Pvt. Ltd.
#
# Copyright (C) 2023-TODAY Cybrosys Technologies(<https://www.cybrosys.com>)
# Author: Vishnu P(odoo@cybrosys.com)
#
# You can modify it under the terms of the GNU AFFERO
# GENERAL PUBLIC LICENSE (AGPL v3), Version 3.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU AFFERO GENERAL PUBLIC LICENSE (AGPL v3) for more details
#
# You should have received a copy of the GNU AFFERO GENERAL PUBLIC LICENSE
# (AGPL v3) along with this program.
# If not, see <http://www.gnu.org/licenses/>.
#
#############################################################################
""" Inherit model website"""
from odoo import fields, models
class Website(models.Model):
""" Inherit website to add boolean field to set
3 product columns in shop instead of 4"""
_inherit = 'website'
select = fields.Boolean(default=False, string='Select',
help='Set default 3 columns of products in shop')

BIN
theme_eco_refine/static/description/banner.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 142 KiB

BIN
theme_eco_refine/static/description/icon.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

BIN
theme_eco_refine/static/description/images/About-us-mobile-temp.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 638 KiB

BIN
theme_eco_refine/static/description/images/Edu.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

BIN
theme_eco_refine/static/description/images/FAQ.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 72 KiB

BIN
theme_eco_refine/static/description/images/POS.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.2 KiB

BIN
theme_eco_refine/static/description/images/Production.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

BIN
theme_eco_refine/static/description/images/Shop-responsive.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 310 KiB

BIN
theme_eco_refine/static/description/images/Top_rated_products.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 197 KiB

BIN
theme_eco_refine/static/description/images/about_us_1.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 386 KiB

BIN
theme_eco_refine/static/description/images/about_us_2.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 54 KiB

BIN
theme_eco_refine/static/description/images/arrow-black.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 KiB

BIN
theme_eco_refine/static/description/images/banner-img.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 643 KiB

BIN
theme_eco_refine/static/description/images/banner_1.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 673 KiB

BIN
theme_eco_refine/static/description/images/banner_2.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 393 KiB

BIN
theme_eco_refine/static/description/images/best_seller.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 146 KiB

BIN
theme_eco_refine/static/description/images/blog-responsive-design.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 391 KiB

BIN
theme_eco_refine/static/description/images/blog.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 466 KiB

BIN
theme_eco_refine/static/description/images/collections.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 27 KiB

BIN
theme_eco_refine/static/description/images/contact_us.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 222 KiB

BIN
theme_eco_refine/static/description/images/customer_response.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 239 KiB

BIN
theme_eco_refine/static/description/images/home-mobile.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 821 KiB

BIN
theme_eco_refine/static/description/images/home_2.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 MiB

BIN
theme_eco_refine/static/description/images/icon-Compatibility-with-plugins.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 843 B

BIN
theme_eco_refine/static/description/images/icon-Fast-loading-times.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.0 KiB

BIN
theme_eco_refine/static/description/images/icon-One-Click-Installation.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 899 B

BIN
theme_eco_refine/static/description/images/icon-Responsive-design.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 848 B

BIN
theme_eco_refine/static/description/images/icon-Up-to-date-development.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 936 B

BIN
theme_eco_refine/static/description/images/icon-design.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 1001 B

BIN
theme_eco_refine/static/description/images/logo-cybro.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.5 KiB

BIN
theme_eco_refine/static/description/images/new_arrival.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 155 KiB

BIN
theme_eco_refine/static/description/images/odoo-consultency.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.6 KiB

BIN
theme_eco_refine/static/description/images/odoo-customization.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.8 KiB

BIN
theme_eco_refine/static/description/images/odoo-developer.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.0 KiB

BIN
theme_eco_refine/static/description/images/odoo-implement.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.2 KiB

BIN
theme_eco_refine/static/description/images/odoo-intergration.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.9 KiB

BIN
theme_eco_refine/static/description/images/odoo-licencing.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.5 KiB

BIN
theme_eco_refine/static/description/images/odoo-logo.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 KiB

BIN
theme_eco_refine/static/description/images/odoo-migration.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.3 KiB

BIN
theme_eco_refine/static/description/images/odoo-support.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.8 KiB

BIN
theme_eco_refine/static/description/images/screen-shot-01.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 262 KiB

BIN
theme_eco_refine/static/description/images/shop.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 439 KiB

BIN
theme_eco_refine/static/description/images/single_product.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 122 KiB

BIN
theme_eco_refine/static/description/images/trading.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

1428
theme_eco_refine/static/description/index.html

File diff suppressed because it is too large

BIN
theme_eco_refine/static/description/theme_screenshot.jpg

Binary file not shown.

After

Width:  |  Height:  |  Size: 389 KiB

711
theme_eco_refine/static/src/css/about_us.css

@ -0,0 +1,711 @@
.ref-abt-bg {
background: (linear-gradient(180deg, rgba(20, 108, 148, 0.6) 0%, #FFFFFF 100%), url('../images/about-hero-banner.png'));
background-size: cover;
}
.ref-about-container {
display: flex;
align-items: center;
}
.ref-about-container:last-child {
margin-bottom: 5rem;
}
.ref-about-content {
padding: 10px;
align-items: center;
}
.rf-about-img {
width: 450px;
}
.ref-about-content img {
width: 100%;
height: auto;
}
.ref-about-content_txt {
color: $dark-grey;
font-weight: 500;
font-size: 18px;
margin-top: 2rem;
line-height: 32px;
}
.ref-about-content {
h2 {
font-weight: 600;
line-height: 2.2rem;
}
}
.ref-feature__container {
display: grid;
grid-template-columns: repeat(3, 1fr);
grid-gap: 30px;
padding: 50px 0px;
}
.ref-feature__container-box {
padding: 30px;
border-radius: 4px;
cursor: pointer;
}
.ref-feature__container-box:hover {
background: $primary-color;
}
.ref-feature__container-box:hover span {
color: #fff;
}
.ref-feature__container-box:hover .ref-feature-box_img img {
filter: invert(100%);
}
.ref-feature__container-box:hover p {
color: #A9A9A9;
}
.ref-feature__container-box span {
font-weight: 600;
display: block;
}
.ref-feature-box_img {
width: 36px;
height: 36px;
margin-bottom: 0.6rem;
}
.ref-feature-box_img img {
width: 100%;
height: auto;
}
.ref-feature__container-box p {
color: $dark-grey;
line-height: 32px;
margin-top: 0.8rem;
}
#ref-about-history {
padding: 50px 0;
}
.ref-abt-button {
width: 20px;
height: 20px;
background-color: $primary-color;
border-radius: 50%;
margin: 30px;
border: 3px solid #fff;
box-shadow: (0px 0px 9px rgba(0, 0, 0, 0.25));
}
.button-text {
display: block;
text-align: center;
position: absolute;
left: 0;
width: 100%;
padding: 5px 0;
color: $dark-grey;
font-size: 12px;
}
.owl-carousel-abt .owl-item {
display: flex;
align-items: center;
justify-content: center;
cursor: pointer;
margin-bottom: 200px;
}
.ref-abt-button:before {
content: "";
position: absolute;
left: 0;
top: 50%;
width: 100%;
height: 6px;
background-color: #0D5272;
-webkit-transform: translateY(-50%);
transform: translateY(-50%);
z-index: -1;
}
.button-text {
display: block;
text-align: center;
margin-top: 15px;
color: $dark-grey;
font-weight: 600;
font-size: 16px;
}
.ref-abt-button:hover .ref-abt-button__content {
display: block;
opacity: 1;
}
.ref-abt-button.active .ref-abt-button__content {
display: block;
opacity: 1;
}
.ref-abt_container {
position: relative;
}
.custom-nav-owl {
position: absolute;
width: 100%;
display: flex;
justify-content: space-between;
top: 28px;
}
.re-abt-nav i {
font-size: 12px;
}
.ref-abt-button__content {
p {
color: $dark-grey;
font-size: 1rem;
}
}
.ref-abt_mob {
display: none;
flex-direction: column;
justify-content: space-between;
height: 600px;
margin: 50px 0;
}
.ref-abt_mob .ref-mob-btn:before {
content: '';
width: 50%;
background-color: $primary-color;
height: 150px;
position: absolute;
left: 4px;
border-radius: 50px;
z-index: -1;
}
.ref-mob-btn:hover .ref-abt-button__mobcontent{
display: block;
opacity: 1;
}
.ref-mob-btn:hover .button-mob-text {
display: none;
}
.ref-abt-button__mobcontent {
width: 500px;
margin-left: 24px;
display: none;
opacity: 0;
transition: opacity 0.3s ease-in-out;
}
.ref-abt-button__mobcontent.show {
display: block;
opacity: 1;
}
.button-mob-text {
display: block;
width: max-content;
color: $dark-grey;
font-weight: 500;
font-size: 1rem;
margin-left: 24px;
}
.hidden {
display: none;
}
//media@query.....
@media(max-width:$breakpoint-lg) {
.owl-carousel-abt .owl-item {
margin-bottom: 240px;
}
}
@media(max-width:$breakpoint-md) {
.rf-about-img {
width: 360px;
}
.owl-carousel-abt .owl-item {
margin-bottom: 260px;
}
.ref-abt-button__content {
p {
color: $dark-grey;
font-size: 0.9rem;
}
}
}
@media(max-width:$breakpoint-sm) {
#ref-about-history {
padding-bottom: 100px;
}
.ref-about-container {
flex-direction: column;
}
.ref-about-container:last-child {
flex-direction: column-reverse;
}
.ref-about-content {
flex-basis: 100%;
}
.ref-feature__container {
grid-template-columns: repeat(2, 1fr);
}
.ref-abt_mob {
height: 525px;
}
.ref-abt_mob {
display: flex;
}
.ref-abt_container {
display: none;
}
}
@media(max-width:$breakpoint-xs) {
.ref-about-content h2 {
font-size: 1.3rem;
}
.ref-about-content_txt {
font-size: 16px;
margin-top: 0rem;
line-height: 30px;
}
.ref-about-content img {
width: 100%;
height: 180px;
}
.ref-feature__container {
-ms-grid-columns: 1fr 30px 1fr;
grid-template-columns: repeat(1, 1fr);
}
.ref-abt-button__mobcontent {
width: 300px;
font-size: 12px;
}
.ref-feature__container {
grid-gap: 0px;
}
.ref-abt_mob {
height: 500px;
margin-bottom: 100px;
}
}.ref-arrival-content {
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-pack: center;
-ms-flex-pack: center;
justify-content: center;
}
.ref-centerhead__underline {
position: relative;
padding: 0px;
margin: 1rem 0;
}
.ref-centerhead__underline::after {
content: "";
position: absolute;
width: 80%;
height: 3px;
background-color: #000;
left: 10%;
bottom: 0;
border-radius: 50px;
}
.ref-abt-button {
width: 20px;
height: 20px;
background-color: $primary-color;
border-radius: 50%;
margin: 30px;
border: 3px solid #fff;
box-shadow: (0px 0px 9px rgba(0, 0, 0, 0.25));
}
.ref-abt-button {
width: 20px;
height: 20px;
background-color: #0D5272;
border-radius: 50%;
margin: 30px;
border: 3px solid #fff;
-webkit-box-shadow: 0px 0px 9px rgb(0 0 0 / 25%);
box-shadow: 0px 0px 9px rgb(0 0 0 / 25%);
}
.re-abt-nav {
width: 22px;
height: 22px;
border-radius: 50px;
background: #0D5272;
border: none;
outline: none;
color: #fff;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
-webkit-box-pack: center;
-ms-flex-pack: center;
justify-content: center;
cursor: pointer;
z-index: 888;
}
.ref-abt_mob .ref-mob-btn {
position: relative;
width: 20px;
height: 20px;
background-color: #0D5272;
border-radius: 50%;
cursor: pointer;
border: 3px solid #fff;
-webkit-box-shadow: 0px 0px 9px rgb(0 0 0 / 25%);
box-shadow: 0px 0px 9px rgb(0 0 0 / 25%);
}
.ref-abt-button__content {
display: none;
position: absolute;
top: 57px;
left: 50%;
-webkit-transform: translateX(-50%);
transform: translateX(-50%);
background-color: #EAF8FF;
padding: 20px;
width: 100%;
text-align: center;
opacity: 0;
-webkit-transition: opacity 0.3s ease-in-out;
transition: opacity 0.3s ease-in-out;
}
.ref-abt-button.active .ref-abt-button__content {
display: block;
opacity: 1;
}
.re-abt-nav i {
font-size: 12px;
}
.fa-solid, .fas {
font-weight: 900;
}
.ref-about-container {
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
}
.ref-about-container:last-child {
margin-bottom: 5rem;
}
.ref-about-content {
padding: 10px;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
}
.rf-about-img {
width: 450px;
}
.ref-about-content img {
width: 100%;
height: auto;
}
.ref-about-content_txt {
color: #6F6969;
font-weight: 500;
font-size: 18px;
margin-top: 2rem;
line-height: 32px;
}
.ref-about-content h2 {
font-weight: 600;
line-height: 2.2rem;
}
.ref-feature__container {
display: -ms-grid;
display: grid;
-ms-grid-columns: 1fr 30px 1fr 30px 1fr;
grid-template-columns: repeat(3, 1fr);
grid-gap: 30px;
padding: 50px 0px;
}
.ref-feature__container-box {
padding: 30px;
border-radius: 4px;
cursor: pointer;
}
.ref-feature__container-box:hover {
background: #0D5272;
}
.ref-feature__container-box:hover span {
color: #fff;
}
.ref-feature__container-box:hover .ref-feature-box_img img {
-webkit-filter: invert(100%);
filter: invert(100%);
}
.ref-feature__container-box:hover p {
color: #A9A9A9;
}
.ref-feature__container-box span {
font-weight: 600;
display: block;
}
.ref-feature-box_img {
width: 36px;
height: 36px;
margin-bottom: 0.6rem;
}
.ref-feature-box_img img {
width: 100%;
height: auto;
}
.ref-feature__container-box p {
color: #6F6969;
line-height: 32px;
margin-top: 0.8rem;
}
#ref-about-history {
padding: 50px 0;
}
.ref-abt-button {
width: 20px;
height: 20px;
background-color: #0D5272;
border-radius: 50%;
margin: 30px;
border: 3px solid #fff;
-webkit-box-shadow: 0px 0px 9px rgba(0, 0, 0, 0.25);
box-shadow: 0px 0px 9px rgba(0, 0, 0, 0.25);
}
.button-text {
display: block;
text-align: center;
position: absolute;
left: 0;
width: 100%;
padding: 5px 0;
color: #6F6969;
font-size: 12px;
}
.owl-carousel-abt .owl-item {
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
-webkit-box-pack: center;
-ms-flex-pack: center;
justify-content: center;
cursor: pointer;
margin-bottom: 200px;
}
.ref-abt-button:before {
content: "";
position: absolute;
left: 0;
top: 50%;
width: 100%;
height: 6px;
background-color: #0D5272;
-webkit-transform: translateY(-50%);
transform: translateY(-50%);
z-index: -1;
}
.button-text {
display: block;
text-align: center;
margin-top: 15px;
color: #6F6969;
font-weight: 600;
font-size: 16px;
}
.ref-abt-button__content {
display: none;
position: absolute;
top: 57px;
left: 50%;
-webkit-transform: translateX(-50%);
transform: translateX(-50%);
background-color: #EAF8FF;
padding: 20px;
width: 100%;
text-align: center;
opacity: 0;
-webkit-transition: opacity 0.3s ease-in-out;
transition: opacity 0.3s ease-in-out;
}
.ref-abt-button:hover .ref-abt-button__content {
display: block;
opacity: 1;
}
.ref-abt-button.active .ref-abt-button__content {
display: block;
opacity: 1;
}
.ref-abt_container {
position: relative;
}
.custom-nav-owl {
position: absolute;
width: 100%;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-pack: justify;
-ms-flex-pack: justify;
justify-content: space-between;
top: 28px;
}
.re-abt-nav {
width: 22px;
height: 22px;
border-radius: 50px;
background: #0D5272;
border: none;
outline: none;
color: #fff;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
-webkit-box-pack: center;
-ms-flex-pack: center;
justify-content: center;
cursor: pointer;
z-index: 888;
}
.re-abt-nav i {
font-size: 12px;
}
.ref-abt-button__content p {
color: #6F6969;
font-size: 1rem;
}
.ref-abt_mob {
display: none;
-webkit-box-orient: vertical;
-webkit-box-direction: normal;
-ms-flex-direction: column;
flex-direction: column;
-webkit-box-pack: justify;
-ms-flex-pack: justify;
justify-content: space-between;
height: 600px;
margin: 50px 0;
}
.ref-abt_mob .ref-mob-btn {
position: relative;
width: 20px;
height: 20px;
background-color: #0D5272;
border-radius: 50%;
cursor: pointer;
border: 3px solid #fff;
-webkit-box-shadow: 0px 0px 9px rgba(0, 0, 0, 0.25);
box-shadow: 0px 0px 9px rgba(0, 0, 0, 0.25);
}
.ref-light-section {
background-color: #EAF8FF;
padding: 50px 0px;
}
.ref-abt_mob .ref-mob-btn:before {
content: "";
width: 50%;
background-color: #0D5272;
height: 150px;
position: absolute;
left: 4px;
border-radius: 50px;
z-index: -1;
}
.ref-mob-btn:hover .ref-abt-button__mobcontent {
display: block;
opacity: 1;
}
.ref-mob-btn:hover .button-mob-text {
display: none;
}
.ref-abt-button__mobcontent {
width: 500px;
margin-left: 24px;
display: none;
opacity: 0;
-webkit-transition: opacity 0.3s ease-in-out;
transition: opacity 0.3s ease-in-out;
}
.ref-abt-button__mobcontent.show {
display: block;
opacity: 1;
}
.button-mob-text {
display: block;
width: -webkit-max-content;
width: -moz-max-content;
width: max-content;
color: #6F6969;
font-weight: 500;
font-size: 1rem;
margin-left: 24px;
}
.hidden {
display: none;
}
@media (max-width: 1199.98px) {
.owl-carousel-abt .owl-item {
margin-bottom: 240px;
}
}
@media (max-width: 991.98px) {
.rf-about-img {
width: 360px;
}
.owl-carousel-abt .owl-item {
margin-bottom: 260px;
}
.ref-abt-button__content p {
color: #6F6969;
font-size: 0.9rem;
}
}
@media (max-width: 767.98px) {
#ref-about-history {
padding-bottom: 100px;
}
.ref-about-container {
-webkit-box-orient: vertical;
-webkit-box-direction: normal;
-ms-flex-direction: column;
flex-direction: column;
}
.ref-about-container:last-child {
-webkit-box-orient: vertical;
-webkit-box-direction: reverse;
-ms-flex-direction: column-reverse;
flex-direction: column-reverse;
}
.ref-about-content {
-ms-flex-preferred-size: 100%;
flex-basis: 100%;
}
.ref-feature__container {
-ms-grid-columns: 1fr 30px 1fr;
grid-template-columns: repeat(2, 1fr);
}
.ref-abt_mob {
height: 525px;
}
.ref-abt_mob {
display: -webkit-box;
display: -ms-flexbox;
display: flex;
}
.ref-abt_container {
display: none;
}
}
.nav-link active{
content: "";
position: absolute;
bottom: 0;
left: 0;
width: 40%;
height: 3px;
font-weight: 600;
background-color: #0D5272;
-webkit-transition: width 0.3s ease-in-out;
transition: width 0.3s ease-in-out;
border-radius: 50px;
}
.ref-feature__container-box:hover span {
color: #fff !important;
}

281
theme_eco_refine/static/src/css/blog.css

@ -0,0 +1,281 @@
.ref-blog-bg {
background: -webkit-gradient(linear, left top, left bottom, from(rgba(20, 108, 148, 0.6)), to(#FFFFFF)), url('/theme_eco_refine/static/src/img/blog-bg.png');
background: linear-gradient(180deg, rgba(20, 108, 148, 0.6) 0%, #FFFFFF 100%), url('/theme_eco_refine/static/src/img/blog-bg.png');
background-size: cover;
}
#o_wblog_blog_top .o_wblog_post_page_cover .o_record_cover_component{
display:none;
}
#o_wblog_blog_top{
margin-top: -50px;
}
#o_wblog_blog_top .o_wblog_post_title{
display: none;
}
.navbar-light .navbar-nav .nav-link.disabled {
color: rgb(33 77 93);
}
.input-group .oe_search_button{
background: #0d5272;
width: 60px;
}
.navbar-light .navbar-nav .show > .nav-link, .navbar-light .navbar-nav .nav-link.active {
color: rgb(27 80 97 / 90%);
}
.o_blog_post_title{
font-weight: 600;
}
.text-reset .mt-2 {
color: #0d5272;
}
.o_wblog_post_short_tag_section .badge{
border: 1px solid #0d5272 !important;
}
.justify-content-between a {
color: #0d5272;
}
.row .col-md-6{
padding-bottom: 3rem !important;
}
.pb-4 {
padding-bottom: 3.5rem !important;
}
.px-2 {
padding-right: 0.5rem !important;
padding-left: 1.5rem !important;
}
.ref-wrapper {
max-width: 1200px;
margin-left: auto;
margin-right: auto;
padding-left: 20px;
padding-right: 20px;
width: 100%;
}
.ref-blog-container {
padding: 0px 0px;
}
.ref-blog-contain {
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-pack: justify;
-ms-flex-pack: justify;
justify-content: space-between;
margin-bottom: 60px;
gap: 15px;
}
.ref-blog-img_container {
overflow: hidden;
position: relative;
display: inline-block;
-webkit-transition: all 0.3s ease;
transition: all 0.3s ease;
cursor: pointer;
}
.ref-blog-detail {
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-pack: justify;
-ms-flex-pack: justify;
justify-content: space-between;
-webkit-box-orient: vertical;
-webkit-box-direction: normal;
-ms-flex-direction: column;
flex-direction: column;
}
.ref-blog--sub-head {
display: -webkit-box;
display: -ms-flexbox;
display: flex;
margin-bottom: 0.5rem;
}
.ref-date-single_blog {
padding-right: 1rem;
border-right: 1px solid #0D5272;
}
.ref-date {
margin: 0px 0px 16px 0px;
color: #0D5272;
font-weight: 500;
}
.ref-author {
padding-left: 1rem;
font-weight: 500;
color: #0D5272;
}
.ref-section_head {
font-size: 28px;
color: black;
font-weight: 600;
padding: 1rem 0;
}
.ref-section_head {
font-size: 28px;
color: black;
font-weight: 600;
padding: 1rem 0;
}
.ref-blog-detail a {
-0.7rem 1.5rem;
}
.ref-blog-img_container img {
width: 100%;
-o-object-fit: cover;
object-fit: cover;
height: -webkit-fill-available;
}
.text-nowrap{
font-size: 1.3em;
color: #0d5272;
}
.o_wblog_post_cover_nocard .o_record_cover_component {
position: absolute;
top: 0;
left: 0;
bottom: 0;
right: 0;
background-size: cover;
background-position: center;
background-repeat: no-repeat;
height: 452px;
width: 453px;
}
.website_blog #o_wblog_posts_loop.o_wblog_list_view .o_wblog_post_cover_nocard .o_record_cover_container {
padding-top: 65% !important;
}
#o_wblog_posts_loop{
margin-left: -140px;
}
.o_wblog_post_cover_nocard{
width: 452px;
}
.website_blog .o_wblog_read_text {
font-size: 20px !important;
line-height: 45px !important;
font-weight: 300 !important;
width: 680px !important;
}
.mx-n2 {
margin-right: -0.5rem !important;
margin-left: -1.5rem !important;
}
.pt-2 {
padding-top: 1.5rem !important;
}
.o_wblog_post_short_tag_section .badge {
border: 1px solid #0d5272 !important;
height: 25px;
width: 115px;
font-size: 15px;
}
.ref-blog-detail .btn-primary{
margin-bottom: 18px;
padding: 0.5rem 1.5rem;
background-color: #ffff;
color: #0d5272;
border-radius: 0px;
border-width: 3px;
border-color: #0d5272;
}
.pb-4 {
padding-bottom: 0rem !important;
}
#o_wblog_posts_loop .row .mb-5{
display:none;
}
.rounded {
border-radius: 0rem !important;
border-top-left-radius: 0rem;
border-top-right-radius: 0rem;
border-bottom-right-radius: 0rem;
border-bottom-left-radius: 0rem;
}
.website_blog .o_wblog_post_page_cover.o_record_has_cover .o_wblog_post_title {
color: #733636!important;
}
#o_wblog_post_top .blog_header {
display: none;
}
#o_wblog_post_name{
font-size: 50px!important;
font-weight: 500!important;
line-height: 65px!important;
color:#0d5272!important;
}
#o_wblog_post_content .text-decoration-none .o_record_cover_container{
padding-top: 90%;
width: 850px;
}
#o_wblog_post_content .o_record_cover_component{
height: 700px;
width: 850px;
}
.website_blog .o_wblog_read_text .lead {
font-size: 28px;
line-height: 34px;
margin-bottom: 40px;
width: 900PX;
}
.website_blog .o_wblog_read_text p, .website_blog .o_wblog_read_text ul, .website_blog .o_wblog_read_text ol {
margin-bottom: 1.55em;
font-size: 20px;
margin-top: 1rem;
line-height: 38px;
width: 880px;
}
.website_blog .o_wblog_post_title #o_wblog_post_subtitle {
font-weight: 300!important;
font-size: 1.5rem!important;
}
.o_wblog_post_content_field .mt-2{
width: 860px;
}
#o_wblog_next_container .o_record_cover_container .o_record_cover_component{
width: 100%;
height: 350px;
margin-top: -62px;
}
#o_wblog_next_container .o_record_cover_container .o_record_cover_filter{
width: 100%;
margin-top: -61px;
height: 350px;
}
.website_blog #o_wblog_next_container .o_wblog_next_loader {
transform: translateZ(-5px)!important;
}
.ref-single-blog-navigation {
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-pack: justify;
-ms-flex-pack: justify;
justify-content: space-between;
margin-top: 20px;
margin-bottom: 50px;
width: 900px;
color:black;
}
#rf-blog-prev-btn, #rf-blog-next-btn {
padding: 0.8rem 0;
cursor: pointer;
background: none;
border: none;
font-weight: 600;
font-size: 18px;
color:black;
}
#o_wblog_posts_loop .blog_post .o_record_cover_component{
height: 200px;
}
#o_wblog_post_content .o_wblog_post_title{
margin-top: 125px;
}
#o_wblog_index_content{
margin-left: 230px;
}
.oe_search_button .oe_search_found{
display:none !important;
}

562
theme_eco_refine/static/src/css/contact_us.css

@ -0,0 +1,562 @@
.ref-hero-sub-bg {
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
-webkit-box-pack: center;
-ms-flex-pack: center;
justify-content: center;
width: 100%;
height: 350px;
background: -webkit-gradient(linear, left top, left bottom, from(rgba(20, 108, 148, 0.6)), to(#FFFFFF)), url("/theme_eco_refine/static/src/img/contact-hero.png");
background: linear-gradient(180deg, rgba(20, 108, 148, 0.6) 0%, #FFFFFF 100%), url("/theme_eco_refine/static/src/img/contact-hero.png");
background-position: center;
background-size: cover;
background-repeat: no-repeat;
}
.ref-contact_container {
text-align: center;
}
.ref-contact-info {
display: flex;
justify-content: center;
gap: 100px;
align-items: center;
}
.ref-contact_container img {
padding: 30px;
}
.ref-contact-msg {
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
margin: 50px 0px;
-webkit-box-orient: vertical;
webkit-box-direction: normal;
-webkit-box-direction: normal;
-webkit-box-align: center;
}
.ref-contact-form {
display: flex;
flex-direction: column;
text-align: center;
justify-content: center;
}
.ref-contant-form_input {
background: #FFFFFF;
border: 2px solid #0d5272;
border-radius: 4px;
padding: 0.8rem 0.6rem;
margin-bottom: 1.5rem;
width: 450px;
}
.form-control {
background: #FFFFFF;
border: 2px solid #0d5272;
border-radius: 4px;
padding: 0.8rem 0.6rem;
margin-bottom: 1.5rem;
width: 410px;
margin-left: 0px;
}
@media(max-width:1399px) {
.form-control {
background: #FFFFFF;
border: 1px solid #000000;
border-radius: 4px;
padding: 1.8rem 0.6rem;
margin-bottom: 1.5rem;
width: 450px;
margin-left: 330px;
}
}
@media(max-width:1200px) {
.form-control {
background: #FFFFFF;
border: 1px solid #000000;
border-radius: 4px;
padding: 1.8rem 0.6rem;
margin-bottom: 1.5rem;
width: 450px;
margin-left: 240px;
}
}
@media(max-width:992px) {
.form-control {
background: #FFFFFF;
border: 1px solid #000000;
border-radius: 4px;
padding: 1.8rem 0.6rem;
margin-bottom: 1.5rem;
width: 450px;
margin-left: 120px;
}
}
@media(max-width:768px) {
.s_newsletter_subscribe_form .input-group > .form-control, .input-group > .form-select {
position: relative !important;
-webkit-box-flex: 1 !important;
-webkit-flex: 1 1 auto !important;
flex: 1 1 auto !important;
width: 1% !important;
min-width: 230px !important;
margin-left: 262px !important;
height: 40px !important;
border-width: 2px !important;
border-color: #0d5272 !important;
}
.form-control {
background: #FFFFFF;
border: 1px solid #000000;
border-radius: 4px;
padding: 1.8rem 0.6rem;
margin-bottom: 1.5rem;
width: 450px;
margin-left: 20px;
}
}
@media(max-width:$breakpoint-sm) {
.ref-hero-sub-bg {
height: 280px;
}
.ref-contact-info {
gap: 60px;
flex-wrap: wrap;
}
}
@media(max-width:$breakpoint-xs) {
.ref-contact_container {
h4 {
font-size: 1rem;
}
}
.ref-contact_container {
p {
font-size: 12px;
}
}
.ref-contact-info {
gap: 24px;
}
.ref-contant-form_input {
width:100%;
}
.ref-contact-form {
width: 90%;
}
.ref-contact_container img {
padding: 20px;
width: 70px;
}
}
element.style {
}
.ref-head--primary {
color: #0D5272;
}
.ref-section_head {
font-size: 28px;
color: black;
font-weight: 600;
padding: 1rem 0;
}
element.style {
}
@media (max-width: 991.98px)
.ref-hero-sub-bg_heading {
font-size: 42px;
width: 60%;
}
.ref-hero-sub-bg_heading {
font-weight: 600;
font-size: 42px;
width: 50%;
text-align: center;
line-height: 72px;
}
.btn-primary {
padding: 0.5rem 1.5rem;
width: -webkit-fit-content;
width: -moz-fit-content;
width: fit-content;
color: #fff;
background-color: #0D5272;
border-radius: 4px;
}
.ref-head--primary {
color: #0D5272;
}
#ref-footer {
background-color: #000;
padding: 100px 0px 50px 0px;
}
.ref-foot-row {
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-ms-flex-wrap: wrap;
flex-wrap: wrap;
-webkit-box-pack: justify;
-ms-flex-pack: justify;
justify-content: space-between;
width: 100%;
}
@media (max-width: 1199.98px)
.ref-wrapper {
max-width: 999px;
margin-left: auto;
margin-right: auto;
padding-left: 20px;
padding-right: 20px;
width: 100%;
}
element.style {
}
@media (max-width: 1199.98px)
.ref-wrapper {
max-width: 999px;
margin-left: auto;
margin-right: auto;
padding-left: 20px;
padding-right: 20px;
width: 100%;
}
.ref-wrapper {
max-width: 1200px;
margin-left: auto;
margin-right: auto;
padding-left: 20px;
padding-right: 20px;
width: 100%;
}
#ref-footer .ref-logo {
color: #fff;
}
.ref-foot-para {
color: #A9A9A9;
line-height: 36px;
}
.column {
-ms-flex-preferred-size: 20%;
flex-basis: 22%!important;
}
.ref-footer-section {
margin-bottom: 50px;
}
.ref-logo {
font-weight: 700;
font-size: 36px;
color: #000000;
}
.ref-foot_head {
color: #fff;
font-size: 22px;
line-height: 36px;
}
#ref-footer ul {
list-style: none;
}
#ref-footer li {
margin-right: 1rem;
}
a:not([href]):not([tabindex]) {
color: inherit;
text-decoration: none;
}
element.style {
}
.subscription-form {
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-ms-flex-wrap: wrap;
flex-wrap: wrap;
-webkit-box-pack: center;
-ms-flex-pack: center;
justify-content: center;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
margin-top: 20px;
position: relative;
}
.subscription-form input[type=email] {
width: 450px;
border-radius: 6px;
padding: 12px;
margin: 50px 0px 0px 0px;
}
.subscription-form button {
background-color: #0D5272;
color: #fff;
border: none;
position: absolute;
right: 0;
margin: 6px;
top: 50px;
cursor: pointer;
}
.ref-button {
padding: 0.5rem 1.5rem;
width: -webkit-fit-content;
width: -moz-fit-content;
width: fit-content;
color: #fff;
background-color: #0D5272;
border-radius: 4px;
}
[type=reset], [type=submit], button, html [type=button] {
-webkit-appearance: button;
}
@media (max-width: 1199.98px)
.ref-wrapper {
max-width: 999px;
margin-left: auto;
margin-right: auto;
padding-left: 20px;
padding-right: 20px;
width: 100%;
}
.ref-wrapper {
max-width: 1200px;
margin-left: auto;
margin-right: auto;
padding-left: 20px;
padding-right: 20px;
width: 100%;
}
.ref-foot-cpy-rt {
width: 100%;
text-align: center;
color: #6F6969;
font-size: 12px;
border-top: 1px solid rgba(255, 255, 255, 0.3);
padding-top: 2rem;
}
.o_footer_copyright{
display:none;
}
@media (max-width: 1199.98px)
.ref-wrapper {
max-width: 999px;
margin-left: auto;
margin-right: auto;
padding-left: 20px;
padding-right: 20px;
width: 100%;
}
.ref-searchbox {
position: relative;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
WIDTH: 10px;
}
.ref-searchbox input {
padding: 6px 40px 6px 6px;
border-radius: 4px;
width: 400px;
border: 1px solid rgba(0, 0, 0, 0.3);
}
.ref-searchbox button {
position: absolute;
top: 0;
right: 0;
width: 35px;
height: 100%;
background-color: #0D5272;
color: #fff;
border: none;
border-radius: 0 4px 4px 0;
cursor: pointer;
}
.ref-searchbox input {
padding: 6px 40px 6px 6px;
border-radius: 4px;
width: 420px;
border: 1px solid rgba(0, 0, 0, 0.3);
margin-left: 290px;
}
@media (max-width: 1199.98px)
.ref-wrapper {
max-width: 999px;
margin-left: auto;
margin-right: auto;
padding-left: 20px;
padding-right: 20px;
width: 100%;
}
.ref-head {
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
-webkit-box-pack: justify;
-ms-flex-pack: justify;
justify-content: space-between;
padding: 1rem 0px;
}
.ref-header__icons {
display: -webkit-box;
display: -ms-flexbox;
margin-left: 410px;
display: flex;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
-webkit-box-pack: center;
-ms-flex-pack: center;
justify-content: center;
gap: 1rem;
}
.ref-header--icon img {
width: 22px;
height: 22px;
}
@media(max-width:1500px) {
.ref-header__icons {
margin-left: 350px;
display: flex;
-webkit-box-align: center;
align-items: center;
-webkit-box-pack: center;
justify-content: center;
gap: 1rem;
}
}
@media(max-width:1400px) {
.ref-header__icons {
margin-left: 211px;
display: flex;
-webkit-box-align: center;
align-items: center;
-webkit-box-pack: center;
justify-content: center;
gap: 1rem;
margin-right: 90px;
}
}
@media(max-width:1284px) {
.ref-header__icons {
margin-left: 180px;
display: flex;
-webkit-box-align: center;
align-items: center;
-webkit-box-pack: center;
justify-content: center;
gap: 1rem;
}
.ref-logo {
font-weight: 700;
font-size: 36px;
color: #000000;
margin-left: 50px;
}
}
@media(max-width:1170px) {
.ref-header__icons {
margin-left: 200px;
display: flex;
-webkit-box-align: center;
align-items: center;
-webkit-box-pack: center;
justify-content: center;
gap: 1rem;
}
}
@media(max-width:1100px) {
.ref-header__icons {
margin-left: 250px;
display: flex;
-webkit-box-align: center;
align-items: center;
-webkit-box-pack: center;
justify-content: center;
gap: 1rem;
}
}
@media(max-width:1000px) {
.ref-searchbox input {
padding: 6px 40px 6px 6px;
border-radius: 4px;
width: 420px;
border: 1px solid rgba(0, 0, 0, 0.3);
margin-left: 132px;
}
}
@media(max-width:920px) {
.ref-searchbox input {
padding: 6px 40px 6px 6px;
border-radius: 4px;
width: 420px;
border: 1px solid rgba(0, 0, 0, 0.3);
margin-left: 82px;
}
}
@media(max-width:780px) {
.ref-logo {
font-weight: 700;
font-size: 36px;
color: #000000;
margin-left: 16px;
}
.ref-searchbox input {
padding: 6px 40px 6px 6px;
border-radius: 4px;
width: 420px;
border: 1px solid rgba(0, 0, 0, 0.3);
margin-left: 15px;
}
.ref-header__icons {
margin-left: 50px;
display: flex;
-webkit-box-align: center;
align-items: center;
-webkit-box-pack: center;
justify-content: center;
gap: 1rem;
}
}
.navbar-nav {
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
-webkit-box-pack: center;
-ms-flex-pack: center;
justify-content: center;
gap: 38px;
padding: 24px 0px;
margin-bottom: 0px;
flex-direction: row-reverse;
}
.navbar-nav .nav-link {
padding-right: 0;
padding-left: 0;
margin-right: -25px;
color: #0d5272;
}
.oe_website_login_container .input-group {
margin-left: -250px;
margin-top: 25px;
}
#contact6 {
width: 445px;
margin-left: 415px
}
#contact5 {
width: 445px;
margin-left: 415px
}

1236
theme_eco_refine/static/src/css/home.css

File diff suppressed because it is too large

186
theme_eco_refine/static/src/css/owl.carousel.css

@ -0,0 +1,186 @@
/**
* Owl Carousel v2.3.4
* Copyright 2013-2018 David Deutsch
* Licensed under: SEE LICENSE IN https://github.com/OwlCarousel2/OwlCarousel2/blob/master/LICENSE
*/
/*
* Owl Carousel - Core
*/
.owl-carousel {
display: none;
width: 100%;
-webkit-tap-highlight-color: transparent;
/* position relative and z-index fix webkit rendering fonts issue */
position: relative;
z-index: 1; }
.owl-carousel .owl-stage {
position: relative;
-ms-touch-action: pan-Y;
touch-action: manipulation;
-moz-backface-visibility: hidden;
/* fix firefox animation glitch */ }
.owl-carousel .owl-stage:after {
content: ".";
display: block;
clear: both;
visibility: hidden;
line-height: 0;
height: 0; }
.owl-carousel .owl-stage-outer {
position: relative;
overflow: hidden;
/* fix for flashing background */
-webkit-transform: translate3d(0px, 0px, 0px); }
.owl-carousel .owl-wrapper,
.owl-carousel .owl-item {
-webkit-backface-visibility: hidden;
-moz-backface-visibility: hidden;
-ms-backface-visibility: hidden;
-webkit-transform: translate3d(0, 0, 0);
-moz-transform: translate3d(0, 0, 0);
-ms-transform: translate3d(0, 0, 0); }
.owl-carousel .owl-item {
position: relative;
min-height: 1px;
float: left;
-webkit-backface-visibility: hidden;
-webkit-tap-highlight-color: transparent;
-webkit-touch-callout: none; }
.owl-carousel .owl-item img {
display: block;
width: 100%; }
.owl-carousel .owl-nav.disabled,
.owl-carousel .owl-dots.disabled {
display: none; }
.owl-carousel .owl-nav .owl-prev,
.owl-carousel .owl-nav .owl-next,
.owl-carousel .owl-dot {
cursor: pointer;
-webkit-user-select: none;
-khtml-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none; }
.owl-carousel .owl-nav button.owl-prev,
.owl-carousel .owl-nav button.owl-next,
.owl-carousel button.owl-dot {
background: none;
color: inherit;
border: none;
padding: 0 !important;
font: inherit; }
.owl-carousel.owl-loaded {
display: block; }
.owl-carousel.owl-loading {
opacity: 0;
display: block; }
.owl-carousel.owl-hidden {
opacity: 0; }
.owl-carousel.owl-refresh .owl-item {
visibility: hidden; }
.owl-carousel.owl-drag .owl-item {
-ms-touch-action: pan-y;
touch-action: pan-y;
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none; }
.owl-carousel.owl-grab {
cursor: move;
cursor: grab; }
.owl-carousel.owl-rtl {
direction: rtl; }
.owl-carousel.owl-rtl .owl-item {
float: right; }
/* No Js */
.no-js .owl-carousel {
display: block; }
/*
* Owl Carousel - Animate Plugin
*/
.owl-carousel .animated {
animation-duration: 1000ms;
animation-fill-mode: both; }
.owl-carousel .owl-animated-in {
z-index: 0; }
.owl-carousel .owl-animated-out {
z-index: 1; }
.owl-carousel .fadeOut {
animation-name: fadeOut; }
@keyframes fadeOut {
0% {
opacity: 1; }
100% {
opacity: 0; } }
/*
* Owl Carousel - Auto Height Plugin
*/
.owl-height {
transition: height 500ms ease-in-out; }
/*
* Owl Carousel - Lazy Load Plugin
*/
.owl-carousel .owl-item {
/**
This is introduced due to a bug in IE11 where lazy loading combined with autoheight plugin causes a wrong
calculation of the height of the owl-item that breaks page layouts
*/ }
.owl-carousel .owl-item .owl-lazy {
opacity: 0;
transition: opacity 400ms ease; }
.owl-carousel .owl-item .owl-lazy[src^=""], .owl-carousel .owl-item .owl-lazy:not([src]) {
max-height: 0; }
.owl-carousel .owl-item img.owl-lazy {
transform-style: preserve-3d; }
/*
* Owl Carousel - Video Plugin
*/
.owl-carousel .owl-video-wrapper {
position: relative;
height: 100%;
background: #000; }
.owl-carousel .owl-video-play-icon {
position: absolute;
height: 80px;
width: 80px;
left: 50%;
top: 50%;
margin-left: -40px;
margin-top: -40px;
background: url("owl.video.play.png") no-repeat;
cursor: pointer;
z-index: 1;
-webkit-backface-visibility: hidden;
transition: transform 100ms ease; }
.owl-carousel .owl-video-play-icon:hover {
-ms-transform: scale(1.3, 1.3);
transform: scale(1.3, 1.3); }
.owl-carousel .owl-video-playing .owl-video-tn,
.owl-carousel .owl-video-playing .owl-video-play-icon {
display: none; }
.owl-carousel .owl-video-tn {
opacity: 0;
height: 100%;
background-position: center center;
background-repeat: no-repeat;
background-size: contain;
transition: opacity 400ms ease; }
.owl-carousel .owl-video-frame {
position: relative;
z-index: 1;
height: 100%;
width: 100%; }

546
theme_eco_refine/static/src/css/product.css

@ -0,0 +1,546 @@
.ref-prdt-bg {
background: -webkit-gradient(linear, left top, left bottom, from(rgba(20, 108, 148, 0.6)), to(#FFFFFF)), url(/theme_eco_refine/static/src/img/product-page-herobanner.png);
background: linear-gradient(180deg, rgba(20, 108, 148, 0.6) 0%, #FFFFFF 100%), url(/theme_eco_refine/static/src/img/product-page-herobanner.png);
background-size: cover;
}
.oi oi-search{
margin-left: -7px;
}
.input-group > .form-control, .input-group > .form-select {
position: relative;
-webkit-box-flex: 1;
-webkit-flex: 1 1 auto;
flex: 1 1 auto;
width: 1%;
min-width: 350px;
margin-left: 250px;
height: 40px;
border-width: 2px;
border-color: #0d5272;
}
.oe_search_button{
height: 40px;
}
@media(max-width:1399px) {
.oe_search_button{
height: 59px;
}
}
.input-group {
margin-left: 0px;
margin-top: 25px;
}
@media(max-width:1254px) {
.input-group {
margin-left: -300px;
margin-top: 25px;
}
}
@media(max-width:1100px) {
.input-group {
margin-left: -360px;
margin-top: 25px;
}
}
@media(max-width:991px) {
#add_to_cart {
margin-top: 11px;
margin-left: 28px;
},
.o_add_wishlist_dyn{
margin-left: 240px;
}
}
@media(max-width:780px) {
.input-group {
margin-left: -410px;
margin-top: 25px;
}
}
.ref-product-main-header__section {
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-pack: justify;
-ms-flex-pack: justify;
justify-content: space-between;
}
.ref-section_head {
font-size: 28px;
color: black;
font-weight: 600;
padding: 1rem 0;
}
.o_wsale_products_grid_before_rail {
width: 85%;
padding: 0.7rem 0;
}
.ref-filter__settings-row {
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-pack: justify;
-ms-flex-pack: justify;
justify-content: space-between;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
border-bottom: 1.2px solid #0D5272;
}
.ref-filter-head {
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
gap: 8px;
}
.ref-sm-head {
font-weight: 500;
font-size: 20px;
line-height: 32px;
}
@media (max-width: 991.98px)
.ref-sm-head {
font-size: 18px;
line-height: 38px;
}
.ref-filter_rest-btn {
background: none;
border: none;
color: #0D5272;
font-weight: 500;
font-size: 1rem;
cursor: pointer;
}
.accordion-item {
border-bottom: 1.2px solid #0D5272;
padding: 0.8rem 0;
}
.accordion-item {
border-bottom: 1.2px solid #0D5272;
padding: 0.8rem 0;
}
.mb-3{
line-height: 20px;
font-weight: 600;
padding: 0.5rem 0;
}
.form-check-input:checked {
background-color: #0d5272;
border-color: #0d5272;
}
.oe_search_button {
background-color: #0d5272;
}
.oi-search{
color:white;
}
.dropdown-toggle{
color:#0d5272;
}
.oe_product_cart .oe_product_image .oe_product_image_link {
padding-top: calc(160% / (var(--o-wsale-card-thumb-aspect-ratio, 1)));
}
@media (min-width: 992px)
#products_grid:not(.o_wsale_layout_list) td.oe_product {
padding-bottom: 23.5px;
padding-left: 20px;
}
.text-primary {
color: #121313 !important;
}
.h6 {
font-size: 1rem;
color: #195c79;
}
.o_wsale_products_item_title{
font-size: 20px;
}
.page-item.active .page-link {
z-index: 3;
color: #FFF;
background-color: #181818;
border-color: #35979c;
}
.o_wsale_products_grid_before_rail {
width: 85%;
padding: 0.7rem 0;
OVERFLOW: hidden;
}
.js_quantity{
max-width: 4rem;
margin-bottom: 0px;
}
.css_quantity{
margin-left: 0;
background: whitesmoke;
}
.oe_website_sale h1[itemprop="name"], .oe_website_sale .h1[itemprop="name"] {
font-size: 2rem;
font-weight: 700;
}
.oe_price{
white-space: nowrap;
color: #0d5272;
font-size: 40px;
font-weight: 600;
}
.text-danger {
color: #6f6969 !important;
font-size: unset;
font-weight: 600;
}
.list-inline-item{
margin: 0;
border-radius: 36px;
width: auto ;
border: 2px solid #0D5272;
}
.list-inline-item:active{
margin: 0;
background: #0d5272;
color: white;
border-radius: 36px;
width: auto ;
}
.col-form-label{
margin-left:7px;
}
.variant_custom_value{
margin-left:0px;
border-color: #0d5272;
border-block-width: 2px;
}
.quantity{
margin-bottom: 0;
}
.js_check_product{
padding: 0.5rem 1.5rem;
width: -webkit-fit-content;
width: -moz-fit-content;
width: 208px;
color: #fcffff;
background-color: #0d5272;
border-radius: 8px;
}
.fa-minus {
color: #0d5272;
margin-top: 15px;
}
.fa-plus{
color: #0d5272;
margin-top: 15px;
}
.o_add_wishlist_dyn{
padding: 0.4rem 1.5rem;
width: -webkit-fit-content;
width: -moz-fit-content;
width: 208px;
color: #fcffff;
background-color: #0d5272;
border-radius: 4px;
font-size: 21px;
font-weight: 600;
margin-left: 230px;
margin-top: -55px;
margin-bottom: 10px;
}
.btn-secondary {
color: #FFFFFF;
background-color: #0d5272;
border-color: #030303;
}
#login,#password{
margin-left:0px;
width: 410px;
border-width: 2px;
border-color: #0d5272;
}
#db{
height: 65px;
border-width: 2px;
border-color: #0d5272;
}
.input-group .btn-secondary {
height: 65px;
}
.oe_login_buttons .btn-primary{
width: 415px;
border-color: #141515;
border-width: 2px;
background: #0d5272;
}
.btn-primary {
padding: 0.5rem 1.5rem;
width: -webkit-fit-content;
width: -moz-fit-content;
width: fit-content;
color: #ffffff;
background-color: #0d5272;
border-radius: 4px;
}
.mb32{
color: #ffffff !important;
}
.float-end{
color: #ffffff !important;
}
.justify-content-between .btn-link{
color: #0d5272;
}
.me-sm-2{
display:none;
}
.justify-content-between a {
color: #f1f4f6;
}
.navbar-light .navbar-nav .nav-link {
color: rgb(25 70 76);
}
.o_pricelist_dropdown .dropdown-toggle{
color: #0d5272;
}
.o_sortby_dropdown .dropdown-toggle{
color:#0d5272;
}
.d-flex .btn-light {
color: #0d5272;
background-color: #f7f7f7;
border-color: #f7f7f7;
}
small, .small {
font-size: 0.875em;
color: white;
}
.input-group .oe_search_button{
width:100px;
}
.input-group .form-control{
height: 64px;
}
.input-group > :not(:first-child):not(.dropdown-menu):not(.o_dropdown_menu):not(.valid-tooltip):not(.valid-feedback):not(.invalid-tooltip):not(.invalid-feedback) {
margin-left: -1px;
border-top-left-radius: 0;
border-bottom-left-radius: 0;
height: 64px;
}
.o_header_standard .o_dropdown_menu{
display:none;
}
.modal-header{
color:#0d5275;
}
.css_attribute_select{
border-width: 2px;
border-color: #0d5272;
}
.navbar-light .navbar-nav .nav-link {
color: rgb(34 36 36 / 87%);
font-size: large;
font-weight: 600;
}
.progress-wizard .progress-wizard-step.active .progress-wizard-steplabel {
color: #0d5272;
font-weight: bolder;
}
.progress-wizard-step.active .progress-wizard-dot {
animation: fadeIn 1s ease 0s 1 normal none running;
background: #0d5272;
box-shadow: 0 0 0 0.1875rem white, 0 0 0 0.25rem rgb(53 151 156 / 50%);
}
.progress-wizard .progress-wizard-step.active .progress-wizard-dot {
animation: fadeIn 1s ease 0s 1 normal none running;
background: #0d5272;
box-shadow: 0 0 0 0.1875rem white, 0 0 0 0.25rem rgb(53 151 156 / 50%);
}
.td-product_name a {
color: #0d5272;
}
.o_legacy_dialog .fa {
color:#fcfeff;
}
.js_cart_summary{
border-width: 2px;
border-color: #0d5272;
width: 460px;
}
.card-body .d-xl-block, .show_coupon, .fa-trash-o{
color: #0d5272;
}
.alert-info {
color: #ffffff;
background-color: #0d5272;
border-color: #030303;
}
.table-bordered > :not(caption) > * {
border-width: 2px 2px;
border-color: #0d5272;
}
.text-start a{
color:#0d5272;
}
.tab-container {
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-orient: vertical;
-webkit-box-direction: normal;
-ms-flex-direction: column;
flex-direction: column;
}
.tab {
display: -webkit-box;
display: -ms-flexbox;
display: flex;
}
.tab-content.active {
display: block;
}
.tab-content {
display: none;
padding: 1rem 0;
font-weight: 400;
font-size: 18px;
line-height: 33px;
color: #6F6969;
}
.tab-content {
display: none;
padding: 1rem 0;
font-weight: 400;
font-size: 18px;
line-height: 33px;
color: #6F6969;
}
.tab-link .active {
border-bottom: 3px solid #0D5272;
}
.tab-container button {
background: none;
border: none;
border-bottom: 1px solid #6F6969;
outline: none;
}
.tab-link {
-webkit-box-flex: 1;
-ms-flex-positive: 1;
flex-grow: 1;
padding: 10px;
background-color: transparent;
cursor: pointer;
font-weight: 600;
font-size: 20px;
}
.tab-content {
display: none;
padding: 1rem 0;
font-weight: 400;
font-size: 18px;
line-height: 33px;
color: #6F6969;
}
.tab-link.active {
border-bottom: 3px solid #0D5272;
}
@media (max-width: 991.98px)
.tab-content p {
font-size: 14px;
line-height: 28px;
}
.s_searchbar_input .input-group {
margin-top: 25px;
}
.search-query{
margin-left:0px !important;
}
@media (max-width: 1299px)
{
.s_searchbar_input .input-group {
margin-left: -315px;
margin-top: 25px;
}
}
.card {
overflow: hidden;
border-width: 2px;
border-color: #0d5272;
}
.coupon_form .form-control{
position: relative;
-webkit-box-flex: 1;
-webkit-flex: 1 1 auto;
flex: 1 1 auto;
width: 1%;
min-width: 311px;
margin-left: 0;
height: 40px;
border-width: 2px;
border-color: #0d5272;
}
.coupon_form .input-group{
margin-left: -1px;
border-top-left-radius: 0;
border-bottom-left-radius: 0;
height: 40px;
}
.o_image_64_cover {
width: 80px;
height: 130px;
object-fit: cover;
}
#o-carousel-product .o_carousel_product_indicators .carousel-indicators li {
width: 64px;
height: 64px;
text-indent: unset;
transition: none;
border: 0px solid #CED4DA;
height: 130px;
width: 80px;
}
.o_carousel_product_indicators .carousel{
justify-content: center;
}
.ref-head__underline {
position: relative;
padding: 0px;
margin: 1rem 0;
}
.ref-head__underline::after {
content: "";
position: absolute;
width: 80%;
height: 3px;
background-color: #0D5272;
left: 0;
bottom: 0;
border-radius: 50px;
}
.product_price .small{
font-size: 0.875em;
color: rgb(13, 82, 114);
}
.dropdown-item:not(.disabled):not(:disabled):not(.o_wysiwyg_loader), .dropdown-item:not(.disabled):not(:disabled):not(.o_wysiwyg_loader) label {
cursor: pointer;
COLOR: #0d5272;
}
.o_carousel_product_card_body .h6 {
font-size: 20px;
color: #000000;
font-weight: 600;
}
.o_carousel_product_card_body .mt-2 {
color: #0d5272;
font-size: 25px;
}
.coupon_form .a-submit {
height: 40px !important;
}
small, .small {
font-size: 0.875em;
color: #0d5272;
}

3
theme_eco_refine/static/src/img/Arrow 1.svg

@ -0,0 +1,3 @@
<svg width="100" height="24" viewBox="0 0 102 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M101.061 13.0607C101.646 12.4749 101.646 11.5251 101.061 10.9393L91.5147 1.3934C90.9289 0.807611 89.9792 0.807611 89.3934 1.3934C88.8076 1.97919 88.8076 2.92893 89.3934 3.51472L97.8787 12L89.3934 20.4853C88.8076 21.0711 88.8076 22.0208 89.3934 22.6066C89.9792 23.1924 90.9289 23.1924 91.5147 22.6066L101.061 13.0607ZM0 13.5H100V10.5H0V13.5Z" fill="black"/>
</svg>

After

Width:  |  Height:  |  Size: 471 B

3
theme_eco_refine/static/src/img/Arrow 2.svg

@ -0,0 +1,3 @@
<svg width="100" height="24" viewBox="0 0 102 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M0.939345 10.9393C0.35356 11.5251 0.35356 12.4749 0.939345 13.0607L10.4853 22.6066C11.0711 23.1924 12.0208 23.1924 12.6066 22.6066C13.1924 22.0208 13.1924 21.0711 12.6066 20.4853L4.12133 12L12.6066 3.51472C13.1924 2.92893 13.1924 1.97919 12.6066 1.3934C12.0208 0.807612 11.0711 0.807612 10.4853 1.3934L0.939345 10.9393ZM102 10.5L2.00001 10.5V13.5L102 13.5V10.5Z" fill="black"/>
</svg>

After

Width:  |  Height:  |  Size: 492 B

BIN
theme_eco_refine/static/src/img/Iphone 1.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 123 KiB

4
theme_eco_refine/static/src/img/Laptop.svg

@ -0,0 +1,4 @@
<svg width="87" height="75" viewBox="0 0 87 75" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M87 67.8644H0V74.0339H87V67.8644Z" fill="black"/>
<path d="M6.90479 60.1525H80.0953V0H6.90479V60.1525ZM12.4286 6.16949H74.5715V53.983H12.4286V6.16949Z" fill="black"/>
</svg>

After

Width:  |  Height:  |  Size: 279 B

23
theme_eco_refine/static/src/img/Quality Product.svg

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 20 KiB

3
theme_eco_refine/static/src/img/Vector (3).svg

@ -0,0 +1,3 @@
<svg width="22" height="23" viewBox="0 0 26 25" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M25.1582 21.3381L20.3859 16.5898C20.1705 16.3755 19.8785 16.2565 19.5721 16.2565H18.7919C20.113 14.5753 20.898 12.4607 20.898 10.1604C20.898 4.68817 16.4417 0.254211 10.9418 0.254211C5.44196 0.254211 0.985596 4.68817 0.985596 10.1604C0.985596 15.6326 5.44196 20.0665 10.9418 20.0665C13.2538 20.0665 15.379 19.2854 17.0687 17.971V18.7473C17.0687 19.0521 17.1884 19.3426 17.4038 19.5569L22.1761 24.3052C22.626 24.7529 23.3536 24.7529 23.7988 24.3052L25.1534 22.9574C25.6033 22.5097 25.6033 21.7858 25.1582 21.3381ZM10.9418 16.2565C7.55766 16.2565 4.81491 13.5323 4.81491 10.1604C4.81491 6.79322 7.55288 4.06427 10.9418 4.06427C14.326 4.06427 17.0687 6.78846 17.0687 10.1604C17.0687 13.5275 14.3308 16.2565 10.9418 16.2565Z" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 849 B

BIN
theme_eco_refine/static/src/img/about-hero-banner.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 312 KiB

BIN
theme_eco_refine/static/src/img/blog-bg.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 817 KiB

9
theme_eco_refine/static/src/img/camera 1.svg

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 19 KiB

7
theme_eco_refine/static/src/img/cart-icon.svg

@ -0,0 +1,7 @@
<svg width="28" height="28" viewBox="0 0 40 40" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M27.5213 31.5772C27.8954 31.1898 28.3429 30.8809 28.8377 30.6683C29.3325 30.4558 29.8646 30.3439 30.4031 30.3392C30.9416 30.3345 31.4757 30.4371 31.9741 30.6411C32.4725 30.845 32.9253 31.1461 33.3061 31.5269C33.6869 31.9077 33.988 32.3605 34.1919 32.8589C34.3958 33.3573 34.4985 33.8914 34.4938 34.4298C34.4891 34.9683 34.3772 35.5005 34.1647 35.9953C33.9521 36.4901 33.6432 36.9376 33.2558 37.3117C32.4909 38.0505 31.4665 38.4592 30.4031 38.45C29.3398 38.4408 28.3226 38.0142 27.5707 37.2623C26.8187 36.5104 26.3922 35.4932 26.383 34.4298C26.3737 33.3665 26.7825 32.3421 27.5213 31.5772Z" stroke="#0D5272" stroke-width="3" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M12.9785 37.3117C13.3658 36.9376 13.6748 36.4901 13.8873 35.9953C14.0999 35.5005 14.2117 34.9683 14.2164 34.4298C14.2211 33.8914 14.1185 33.3573 13.9146 32.8589C13.7107 32.3605 13.4095 31.9077 13.0287 31.5269C12.6479 31.1461 12.1951 30.845 11.6967 30.6411C11.1983 30.4371 10.6643 30.3345 10.1258 30.3392C9.58729 30.3439 9.05512 30.4558 8.56033 30.6683C8.06553 30.8809 7.61802 31.1898 7.24391 31.5772C6.50516 32.3421 6.09638 33.3665 6.10562 34.4298C6.11486 35.4932 6.54138 36.5104 7.29331 37.2623C8.04525 38.0142 9.06243 38.4408 10.1258 38.45C11.1891 38.4592 12.2136 38.0505 12.9785 37.3117Z" stroke="#0D5272" stroke-width="3" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M10.1111 22.2777L5.46139 26.9274C4.18389 28.2049 5.08828 30.3888 6.89503 30.3888H30.3889" stroke="#0D5272" stroke-width="3" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M6.8667 6.0556H38.5L30.3889 22.2778H10.1111L6.8667 6.0556Z" stroke="#0D5272" stroke-width="3" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M2 2H6.05555L6.86667 6.05555" stroke="#0D5272" stroke-width="3" stroke-linecap="round" stroke-linejoin="round"/>
</svg>

After

Width:  |  Height:  |  Size: 1.9 KiB

1
theme_eco_refine/static/src/img/community.svg

@ -0,0 +1 @@
<?xml version="1.0" ?><svg id="Layer_1" style="enable-background:new 0 0 128 128;" version="1.1" viewBox="0 0 128 128" xml:space="preserve" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"><g><path d="M64,126c34.2,0,62-27.8,62-62S98.2,2,64,2S2,29.8,2,64S29.8,126,64,126z M16,88.7l25.2-0.2c2.8,10.1,7.5,19.9,13.9,28.7 C38,114.4,23.7,103.5,16,88.7z M47.6,47H79c2.3,11,2.3,22.3,0.2,33.3l-31.6,0.2C45.3,69.4,45.3,58,47.6,47z M63.3,114.9 c-6.3-8.1-10.9-17-13.7-26.4l27.5-0.2C74.2,97.7,69.6,106.7,63.3,114.9z M71.3,117.5c6.6-9,11.3-18.9,14.1-29.3l26.9-0.2 C104.5,103.7,89.3,115,71.3,117.5z M118,64c0,5.6-0.9,11-2.4,16l-28.3,0.2c2-11,1.9-22.2-0.2-33.2h28.1C117,52.3,118,58.1,118,64z M111.8,39H85.2c-2.9-10-7.5-19.7-13.9-28.5C89,12.9,103.9,23.8,111.8,39z M76.9,39H49.7c2.9-9.2,7.4-17.9,13.6-25.9 C69.5,21.1,74,29.8,76.9,39z M55.1,10.8C48.8,19.5,44.2,29,41.4,39H16.2C23.9,24.3,38.1,13.6,55.1,10.8z M39.5,47 c-2.1,11.1-2.1,22.4-0.1,33.5l-26.7,0.2C10.9,75.4,10,69.8,10,64c0-5.9,1-11.7,2.8-17H39.5z"/></g></svg>

After

Width:  |  Height:  |  Size: 1.0 KiB

BIN
theme_eco_refine/static/src/img/contact-hero.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 597 KiB

3
theme_eco_refine/static/src/img/cross.svg

@ -0,0 +1,3 @@
<svg width="18" height="18" viewBox="0 0 22 22" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M17.8701 0.899336L10.799 7.9704L3.72792 0.899334C2.94728 0.118688 1.68014 0.118688 0.899494 0.899334C0.118848 1.67998 0.118848 2.94712 0.899494 3.72776L7.97056 10.7988L0.899495 17.8699C0.118849 18.6505 0.118849 19.9177 0.899495 20.6983C1.68014 21.479 2.94728 21.479 3.72792 20.6983L10.799 13.6273L17.8701 20.6983C18.6507 21.479 19.9178 21.479 20.6985 20.6983C21.4791 19.9177 21.4791 18.6505 20.6985 17.8699L13.6274 10.7988L20.6985 3.72776C21.4791 2.94712 21.4791 1.67998 20.6985 0.899336C19.9178 0.11869 18.6507 0.11869 17.8701 0.899336Z" fill="#0D5272"/>
</svg>

After

Width:  |  Height:  |  Size: 668 B

4
theme_eco_refine/static/src/img/email.svg

@ -0,0 +1,4 @@
<svg width="50" height="40" viewBox="0 0 100 70" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M4.56676 5.66015C7.21094 7.24609 43.941 30.0234 45.3111 30.8437C46.6813 31.6641 48.0755 32.0469 50.2389 32.0469C52.4023 32.0469 53.7965 31.6641 55.1667 30.8437C56.5369 30.0234 93.2669 7.24609 95.9111 5.66015C96.8966 5.08594 98.5552 4.04687 98.9158 2.87109C99.5408 0.792969 98.8677 0 96.1995 0H50.2389H4.27831C1.61009 0 0.937028 0.820312 1.56202 2.87109C1.92259 4.07422 3.58121 5.08594 4.56676 5.66015Z" fill="#0D5272"/>
<path d="M98.0028 6.89065C96.0317 8.03909 78.3398 22.3672 66.6333 30.9805L86.3925 56.2734C86.8732 56.8203 87.0896 57.4766 86.8251 57.8047C86.5367 58.1055 85.9117 57.9414 85.4069 57.4219L61.7055 34.6719C58.1238 37.2969 55.5998 39.1016 55.1671 39.375C53.3162 40.4414 52.0182 40.5781 50.2394 40.5781C48.4605 40.5781 47.1625 40.4414 45.3116 39.375C44.8549 39.1016 42.3549 37.2969 38.7732 34.6719L15.0718 57.4219C14.591 57.9688 13.942 58.1328 13.6536 57.8047C13.3651 57.5039 13.5815 56.8203 14.0622 56.2734L33.7974 30.9805C22.0909 22.3672 4.20664 8.03909 2.23553 6.89065C0.12019 5.66018 0 7.1094 0 8.2305C0 9.35159 0 64.2852 0 64.2852C0 66.8281 3.2932 70 5.64892 70H50.2394H94.8298C97.1855 70 99.998 66.8008 99.998 64.2852C99.998 64.2852 99.998 9.32425 99.998 8.2305C99.998 7.08206 100.142 5.66018 98.0028 6.89065Z" fill="#0D5272"/>
</svg>

After

Width:  |  Height:  |  Size: 1.3 KiB

4
theme_eco_refine/static/src/img/exchange.svg

@ -0,0 +1,4 @@
<svg width="28" height="28" viewBox="0 0 28 28" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M10.5358 0.614261C10.5331 0.596752 10.5331 0.579242 10.5288 0.562679C10.5233 0.540436 10.513 0.519141 10.5053 0.496899C10.4972 0.47513 10.4917 0.451941 10.4813 0.431119C10.4726 0.413609 10.4601 0.397519 10.4497 0.380482C10.4356 0.357294 10.423 0.333159 10.4061 0.31139C10.3936 0.2953 10.3773 0.281576 10.3631 0.266432C10.344 0.246083 10.326 0.224314 10.3048 0.205858C10.2917 0.1945 10.2759 0.185509 10.2617 0.175098C10.235 0.155222 10.2078 0.134399 10.1784 0.117363C10.1762 0.116416 10.1745 0.114523 10.1724 0.113104C10.1577 0.104585 10.1408 0.099853 10.1255 0.0927544C10.0961 0.0785573 10.0672 0.0634137 10.035 0.0525293C10.0116 0.0444843 9.98763 0.0397519 9.96366 0.0331266C9.93641 0.026028 9.90971 0.017983 9.88191 0.0132506C9.85194 0.00804503 9.82252 0.00709855 9.792 0.0052056C9.77129 0.00425913 9.75113 0 9.72988 0C9.72661 0 9.72388 0.000473237 9.72061 0.000946474C9.69118 0.000946474 9.66285 0.0052056 9.63342 0.00851826C9.60835 0.0113577 9.58274 0.0118309 9.55822 0.0165633C9.54351 0.0189295 9.52988 0.0246083 9.51571 0.027921C9.47866 0.0364392 9.44215 0.0449575 9.40727 0.0577349C9.40346 0.0591546 9.40019 0.0615208 9.39637 0.0629405C9.35223 0.079977 9.30973 0.099853 9.26995 0.123042C9.25741 0.130613 9.24651 0.140551 9.23398 0.14907C9.20455 0.168946 9.17458 0.188348 9.14842 0.211064C9.13698 0.221475 9.12717 0.234252 9.11573 0.245137C9.09121 0.269272 9.06723 0.29388 9.04652 0.320381C9.04543 0.322274 9.04325 0.323694 9.04162 0.325587L0.13021 12.3425C-0.113923 12.6719 -0.00493499 13.1115 0.374888 13.3235C0.511668 13.4002 0.664796 13.4366 0.816835 13.4366C1.08549 13.4366 1.3487 13.3216 1.50509 13.111L8.91247 3.12289V27.2897C8.91247 27.6815 9.27812 27.9995 9.72988 27.9995C10.1816 27.9995 10.5473 27.6815 10.5473 27.2897V0.709855C10.5473 0.707489 10.5467 0.705123 10.5467 0.702757C10.5462 0.672943 10.5407 0.643602 10.5358 0.614261Z" fill="black"/>
<path d="M27.6245 14.6765C27.2447 14.464 26.739 14.5591 26.4949 14.8885L19.087 24.8766V0.709855C19.087 0.317542 18.7208 0 18.2696 0C17.8183 0 17.4521 0.317542 17.4521 0.709855V27.2897C17.4521 27.292 17.4527 27.2939 17.4527 27.2963C17.4532 27.328 17.4587 27.3592 17.4641 27.3905C17.4669 27.4056 17.4669 27.4212 17.4707 27.4368C17.4772 27.4643 17.4887 27.4899 17.4996 27.5168C17.5061 27.5339 17.5105 27.5514 17.5181 27.5679C17.5317 27.5963 17.5513 27.6228 17.5693 27.6498C17.578 27.6616 17.5835 27.6758 17.5933 27.6872C17.6096 27.7085 17.6303 27.7274 17.65 27.7468C17.6647 27.7624 17.6783 27.779 17.6946 27.7932C17.7094 27.806 17.7279 27.8164 17.7437 27.8282C17.7688 27.8467 17.7938 27.8661 17.8216 27.8822C17.8238 27.8831 17.826 27.885 17.8282 27.8864C17.8342 27.8897 17.8401 27.8907 17.8461 27.894C17.8995 27.9224 17.9562 27.9437 18.0167 27.9617C18.0331 27.9664 18.0499 27.9716 18.0668 27.9749C18.1317 27.9891 18.1987 27.9995 18.2685 28C18.269 28 18.2696 28 18.2701 28C18.3339 28 18.3954 27.992 18.4548 27.9801C18.4717 27.9768 18.4881 27.9711 18.5044 27.9673C18.5469 27.9565 18.5883 27.9427 18.6281 27.9257C18.6472 27.9177 18.6652 27.9091 18.6837 27.8997C18.7213 27.8803 18.7562 27.8585 18.7894 27.8348C18.8041 27.8244 18.8194 27.8145 18.8336 27.8031C18.8788 27.7657 18.9191 27.7246 18.954 27.6791C18.9551 27.6773 18.9573 27.6763 18.9584 27.6744L27.8703 15.6575C28.1139 15.3281 28.0044 14.8885 27.6245 14.6765Z" fill="black"/>
</svg>

After

Width:  |  Height:  |  Size: 3.3 KiB

3
theme_eco_refine/static/src/img/facebook.svg

@ -0,0 +1,3 @@
<svg width="14" height="22" viewBox="0 0 14 29" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M9.33333 9.66667V6.78932C9.33333 5.49036 9.61042 4.83333 11.5573 4.83333H14V0H9.92396C4.92917 0 3.28125 2.37135 3.28125 6.44193V9.66667H0V14.5H3.28125V29H9.33333V14.5H13.4458L14 9.66667H9.33333Z" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 323 B

11
theme_eco_refine/static/src/img/filter.svg

@ -0,0 +1,11 @@
<svg width="20" height="20" viewBox="0 0 23 25" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M19.5483 13.6129V24" stroke="black" stroke-width="2" stroke-linecap="round"/>
<path d="M3.22583 1V4.70968" stroke="black" stroke-width="2" stroke-linecap="round"/>
<path d="M11.3871 1V13.6129" stroke="black" stroke-width="2" stroke-linecap="round"/>
<path d="M19.5483 1V6.19355" stroke="black" stroke-width="2" stroke-linecap="round"/>
<path d="M3.22583 12.129V24" stroke="black" stroke-width="2" stroke-linecap="round"/>
<path d="M11.3871 21.0323V24" stroke="black" stroke-width="2" stroke-linecap="round"/>
<path d="M5.45161 6.93549C5.45161 5.70621 4.45508 4.70969 3.22581 4.70969C1.99653 4.70969 1 5.70621 1 6.93549V9.90323C1 11.1325 1.99653 12.129 3.22581 12.129C4.45508 12.129 5.45161 11.1325 5.45161 9.90323V6.93549Z" stroke="black" stroke-width="2"/>
<path d="M13.6129 15.8387C13.6129 14.6094 12.6163 13.6129 11.3871 13.6129C10.1578 13.6129 9.16125 14.6094 9.16125 15.8387V18.8065C9.16125 20.0357 10.1578 21.0323 11.3871 21.0323C12.6163 21.0323 13.6129 20.0357 13.6129 18.8065V15.8387Z" stroke="black" stroke-width="2"/>
<path d="M21.7741 8.41935C21.7741 7.19007 20.7776 6.19354 19.5483 6.19354C18.319 6.19354 17.3225 7.19007 17.3225 8.41935V11.3871C17.3225 12.6164 18.319 13.6129 19.5483 13.6129C20.7776 13.6129 21.7741 12.6164 21.7741 11.3871V8.41935Z" stroke="black" stroke-width="2"/>
</svg>

After

Width:  |  Height:  |  Size: 1.4 KiB

BIN
theme_eco_refine/static/src/img/goal-gd9f02c7b0_1920 1.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 98 KiB

9
theme_eco_refine/static/src/img/guarantee (3) 1.svg

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 24 KiB

9
theme_eco_refine/static/src/img/headphone 1.svg

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 24 KiB

5
theme_eco_refine/static/src/img/instagram.svg

@ -0,0 +1,5 @@
<svg width="28" height="22" viewBox="0 0 28 26" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M14.0002 6.23779C10.0486 6.23779 6.77441 9.2257 6.77441 12.9475C6.77441 16.6692 9.99216 19.6571 14.0002 19.6571C18.0083 19.6571 21.226 16.6168 21.226 12.9475C21.226 9.27812 17.9518 6.23779 14.0002 6.23779ZM14.0002 17.2459C11.4599 17.2459 9.37119 15.3063 9.37119 12.9475C9.37119 10.5886 11.4599 8.64908 14.0002 8.64908C16.5405 8.64908 18.6293 10.5886 18.6293 12.9475C18.6293 15.3063 16.5405 17.2459 14.0002 17.2459Z" fill="white"/>
<path d="M21.5082 7.60087C22.4123 7.60087 23.1453 6.92027 23.1453 6.08071C23.1453 5.24115 22.4123 4.56055 21.5082 4.56055C20.604 4.56055 19.8711 5.24115 19.8711 6.08071C19.8711 6.92027 20.604 7.60087 21.5082 7.60087Z" fill="white"/>
<path d="M25.7419 2.14919C24.2742 0.733871 22.1855 0 19.8145 0H8.18548C3.27419 0 0 3.04032 0 7.60081V18.3468C0 20.6008 0.790322 22.5403 2.37097 23.9556C3.89516 25.3186 5.92742 26 8.24194 26H19.7581C22.1855 26 24.2177 25.2661 25.6855 23.9556C27.2097 22.5927 28 20.6532 28 18.3992V7.60081C28 5.39919 27.2097 3.5121 25.7419 2.14919ZM25.5161 18.3992C25.5161 20.0242 24.8952 21.3347 23.879 22.2258C22.8629 23.1169 21.4516 23.5887 19.7581 23.5887H8.24194C6.54839 23.5887 5.1371 23.1169 4.12097 22.2258C3.10484 21.2823 2.59677 19.9718 2.59677 18.3468V7.60081C2.59677 6.02823 3.10484 4.71774 4.12097 3.77419C5.08065 2.88306 6.54839 2.41129 8.24194 2.41129H19.871C21.5645 2.41129 22.9758 2.88306 23.9919 3.82661C24.9516 4.77016 25.5161 6.08065 25.5161 7.60081V18.3992Z" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 1.5 KiB

BIN
theme_eco_refine/static/src/img/levitating-music-headphones-display 1.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 121 KiB

3
theme_eco_refine/static/src/img/like.svg

@ -0,0 +1,3 @@
<svg width="28" height="26" viewBox="0 0 41 38" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M20.5116 36L4.80992 20.3393C-3.72361 10.9428 8.82069 -7.09835 20.5116 7.49746C32.2026 -7.09835 44.69 11.0055 36.2133 20.3393L20.5116 36Z" stroke="#0D5272" stroke-width="3" stroke-linecap="round" stroke-linejoin="round"/>
</svg>

After

Width:  |  Height:  |  Size: 333 B

3
theme_eco_refine/static/src/img/location.svg

@ -0,0 +1,3 @@
<svg width="40" height="40" viewBox="0 0 66 73" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M33 0C14.7761 0 0 12.2568 0 27.3735C0 38.4099 4.63547 41.4923 29.6141 71.5276C31.2522 73.4908 34.7548 73.4908 36.3928 71.5276C61.3594 41.488 66 38.4085 66 27.3735C66 12.2568 51.2188 0 33 0ZM33 38.6509C25.4152 38.6509 19.25 33.5354 19.25 27.2452C19.25 20.955 25.4203 15.8396 33 15.8396C40.5797 15.8396 46.75 20.955 46.75 27.2452C46.75 33.5354 40.5797 38.6509 33 38.6509Z" fill="#0D5272"/>
</svg>

After

Width:  |  Height:  |  Size: 500 B

4
theme_eco_refine/static/src/img/login.svg

@ -0,0 +1,4 @@
<svg width="28" height="28" viewBox="0 0 37 37" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M25.2942 13.311C25.2942 15.0762 24.5895 16.769 23.335 18.0172C22.0806 19.2653 20.3792 19.9665 18.6051 19.9665C16.8311 19.9665 15.1297 19.2653 13.8752 18.0172C12.6208 16.769 11.916 15.0762 11.916 13.311C11.916 11.5459 12.6208 9.85306 13.8752 8.60492C15.1297 7.35678 16.8311 6.65558 18.6051 6.65558C20.3792 6.65558 22.0806 7.35678 23.335 8.60492C24.5895 9.85306 25.2942 11.5459 25.2942 13.311ZM21.9497 13.311C21.9497 14.1936 21.5973 15.04 20.9701 15.6641C20.3429 16.2882 19.4922 16.6388 18.6051 16.6388C17.7181 16.6388 16.8674 16.2882 16.2402 15.6641C15.6129 15.04 15.2606 14.1936 15.2606 13.311C15.2606 12.4285 15.6129 11.5821 16.2402 10.958C16.8674 10.3339 17.7181 9.98331 18.6051 9.98331C19.4922 9.98331 20.3429 10.3339 20.9701 10.958C21.5973 11.5821 21.9497 12.4285 21.9497 13.311Z" fill="#0D5272"/>
<path fill-rule="evenodd" clip-rule="evenodd" d="M18.605 0C8.44593 0 0.209961 8.19455 0.209961 18.3025C0.209961 28.4105 8.44593 36.6051 18.605 36.6051C28.7641 36.6051 37.0001 28.4105 37.0001 18.3025C37.0001 8.19455 28.7641 0 18.605 0ZM3.55452 18.3025C3.55452 21.78 4.74685 24.9813 6.74522 27.5237C8.14865 25.6899 9.95918 24.2039 12.0354 23.1815C14.1116 22.1592 16.3972 21.6283 18.7137 21.6303C21.0003 21.6281 23.2572 22.1453 25.3124 23.1424C27.3677 24.1395 29.1671 25.5901 30.5735 27.3839C32.0225 25.4931 32.998 23.2862 33.4196 20.9457C33.8411 18.6053 33.6964 16.1986 32.9975 13.9249C32.2986 11.6511 31.0655 9.57563 29.4004 7.87015C27.7352 6.16467 25.6859 4.87823 23.4218 4.11725C21.1578 3.35628 18.7442 3.14267 16.3807 3.49408C14.0172 3.84549 11.7717 4.75182 9.83019 6.1381C7.88864 7.52437 6.30677 9.35072 5.21547 11.466C4.12417 13.5814 3.55482 15.9248 3.55452 18.3025ZM18.605 33.2773C15.15 33.2825 11.7993 32.0999 9.11986 29.9296C10.1984 28.3935 11.6339 27.1392 13.3042 26.2736C14.9746 25.408 16.8304 24.9567 18.7137 24.958C20.5736 24.9565 22.4069 25.3966 24.0615 26.2416C25.7162 27.0866 27.1443 28.3121 28.2273 29.8165C25.5271 32.0572 22.1211 33.2823 18.605 33.2773Z" fill="#0D5272"/>
</svg>

After

Width:  |  Height:  |  Size: 2.1 KiB

3
theme_eco_refine/static/src/img/phone.svg

@ -0,0 +1,3 @@
<svg width="40" height="40" viewBox="0 0 81 73" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M16.3125 31.6131C22.7925 43.0903 33.21 52.4789 45.9675 58.3189L55.8675 49.3764C57.105 48.2611 58.8825 47.9367 60.435 48.3828C65.475 49.8833 70.8975 50.6944 76.5 50.6944C78.9975 50.6944 81 52.4992 81 54.75V68.9444C81 71.1953 78.9975 73 76.5 73C34.245 73 0 42.1372 0 4.05556C0 1.80472 2.025 0 4.5 0H20.25C22.7475 0 24.75 1.80472 24.75 4.05556C24.75 9.10472 25.65 13.9917 27.315 18.5339C27.81 19.9331 27.45 21.535 26.2125 22.6503L16.3125 31.6131Z" fill="#0D5272"/>
</svg>

After

Width:  |  Height:  |  Size: 574 B

3
theme_eco_refine/static/src/img/plus.svg

@ -0,0 +1,3 @@
<svg width="22" height="22" viewBox="0 0 28 33" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M26 14.0634H16V2.34391C16 1.05007 15.104 0 14 0C12.896 0 12 1.05007 12 2.34391V14.0634H2C0.896 14.0634 0 15.1135 0 16.4074C0 17.7012 0.896 18.7513 2 18.7513H12V30.4708C12 31.7646 12.896 32.8147 14 32.8147C15.104 32.8147 16 31.7646 16 30.4708V18.7513H26C27.104 18.7513 28 17.7012 28 16.4074C28 15.1135 27.104 14.0634 26 14.0634Z" fill="#003366"/>
</svg>

After

Width:  |  Height:  |  Size: 458 B

3
theme_eco_refine/static/src/img/pricing.svg

@ -0,0 +1,3 @@
<svg width="41" height="39" viewBox="0 0 41 39" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M17.5225 17.0386C17.261 17.292 17.261 17.7016 17.5225 17.955L21.5345 21.8431C21.6649 21.9695 21.8361 22.033 22.0072 22.033C22.1784 22.033 22.3496 21.9695 22.48 21.8431C22.7414 21.5898 22.7414 21.1802 22.48 20.9268L18.468 17.0386C18.2065 16.7853 17.7839 16.7853 17.5225 17.0386ZM15.7933 19.6308C15.5318 19.3774 15.1092 19.3774 14.8478 19.6308C14.5863 19.8841 14.5863 20.2937 14.8478 20.5471L18.8598 24.4353C18.9902 24.5616 19.1614 24.6251 19.3326 24.6251C19.5037 24.6251 19.6749 24.5616 19.8053 24.4353C20.0668 24.1819 20.0668 23.7723 19.8053 23.5189L15.7933 19.6308ZM13.1186 22.2229C12.8572 21.9695 12.4346 21.9695 12.1731 22.2229C11.9117 22.4763 11.9117 22.8858 12.1731 23.1392L16.1851 27.0274C16.3155 27.1537 16.4867 27.2173 16.6579 27.2173C16.8291 27.2173 17.0002 27.1537 17.1306 27.0274C17.3921 26.774 17.3921 26.3644 17.1306 26.1111L13.1186 22.2229ZM25.7424 20.737L18.6639 13.8769L8.91068 23.3291L15.9892 30.1891L25.7424 20.737ZM19.1366 12.5024L27.1607 20.2788C27.4221 20.5322 27.4221 20.9417 27.1607 21.1951L16.462 31.5636C16.3316 31.69 16.1604 31.7535 15.9892 31.7535C15.818 31.7535 15.6469 31.69 15.5165 31.5636L7.49243 23.7872C7.23099 23.5339 7.23099 23.1243 7.49243 22.8709L18.1911 12.5024C18.4526 12.2491 18.8752 12.2491 19.1366 12.5024ZM34.6952 23.7017C34.3756 23.5196 33.9664 23.6239 33.7798 23.933L26.1155 36.602C25.5619 37.5306 24.3322 37.8501 23.4041 37.3317L21.9109 36.394C21.602 36.1989 21.1874 36.2851 20.9868 36.5852C20.7856 36.8859 20.8738 37.287 21.1841 37.4814L22.706 38.4372C23.2309 38.7308 23.8053 38.8701 24.3723 38.8701C25.5284 38.8701 26.6538 38.2901 27.271 37.2539L34.9333 24.5882C35.1198 24.2797 35.0135 23.8831 34.6952 23.7017ZM40.0613 3.24015V13.6086C40.0613 15.6136 39.4033 17.1073 37.8594 18.603L18.0012 37.8754C17.3693 38.4878 16.5295 38.8241 15.6362 38.8241C14.7428 38.8241 13.9036 38.4878 13.2731 37.8754L0.9796 25.962C0.347708 25.3496 0 24.5357 0 23.6699C0 22.8042 0.347708 21.9909 0.9796 21.3792L18.3476 4.56991C13.806 3.56935 10.9876 3.50195 10.1624 3.73589C10.5108 4.08129 11.5961 4.81486 14.2152 5.81542C14.5589 5.94697 14.7274 6.32283 14.5924 6.65591C14.4566 6.989 14.0681 7.15036 13.7251 7.0214C8.30353 4.9503 8.62048 3.80199 8.74017 3.36976C8.98825 2.46899 10.3129 2.16896 13.0263 2.39901C15.2363 2.58629 18.0888 3.11443 21.0584 3.88494C24.0279 4.6561 26.7695 5.58083 28.7795 6.49002C31.2502 7.60658 32.2405 8.50669 31.9911 9.4081C31.7504 10.2778 30.4993 10.384 30.0881 10.419C30.0687 10.421 30.0486 10.4216 30.0293 10.4216C29.6862 10.4216 29.3947 10.1669 29.3639 9.82996C29.3312 9.47355 29.6033 9.15925 29.9717 9.12815C30.2566 9.10417 30.4458 9.06659 30.5682 9.03289C30.282 8.74322 29.5578 8.29154 28.3997 7.75368C28.157 8.15027 28.0253 8.60584 28.0253 9.07242C28.0253 10.502 29.2248 11.6645 30.6999 11.6645C32.175 11.6645 33.3746 10.502 33.3746 9.07242C33.3746 7.64286 32.175 6.4803 30.6999 6.4803C30.3302 6.4803 30.0313 6.19063 30.0313 5.83227C30.0313 5.47391 30.3302 5.18424 30.6999 5.18424C32.9126 5.18424 34.7119 6.92809 34.7119 9.07242C34.7119 11.2167 32.9126 12.9606 30.6999 12.9606C28.4873 12.9606 26.6879 11.2167 26.6879 9.07242C26.6879 8.42244 26.8644 7.78932 27.1794 7.22424C25.5793 6.57297 23.4328 5.84393 20.7127 5.13693C20.4258 5.06241 20.1497 4.99437 19.8735 4.92632L1.9251 22.2961C1.54596 22.6629 1.33734 23.1515 1.33734 23.6699C1.33734 24.1897 1.54596 24.6776 1.9251 25.0451L14.2186 36.9591C14.9762 37.6933 16.2975 37.6933 17.0551 36.9591L36.9132 17.6867C38.2164 16.4243 38.724 15.2805 38.724 13.6086V3.24015C38.724 2.16831 37.8239 1.29606 36.7179 1.29606H26.0192C24.2941 1.29606 23.1139 1.78791 21.8113 3.05028C21.5499 3.30366 21.1273 3.30366 20.8658 3.05028C20.6044 2.7969 20.6044 2.38734 20.8658 2.13396C22.4091 0.637661 23.9504 0 26.0192 0H36.7179C38.5615 0 40.0613 1.45353 40.0613 3.24015Z" fill="black"/>
</svg>

After

Width:  |  Height:  |  Size: 3.8 KiB

3
theme_eco_refine/static/src/img/product-cart.svg

@ -0,0 +1,3 @@
<svg width="30" height="30" viewBox="0 0 30 30" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M9.11999 29.6775C8.31295 29.6775 7.62183 29.3899 7.04663 28.8146C6.47143 28.2393 6.18432 27.5485 6.1853 26.7423C6.1853 25.9352 6.4729 25.2439 7.0481 24.6687C7.62329 24.0934 8.31393 23.8062 9.11999 23.8072C9.92703 23.8072 10.6181 24.0948 11.1933 24.6701C11.7685 25.2454 12.0557 25.9362 12.0547 26.7423C12.0547 27.5495 11.7671 28.2407 11.1919 28.816C10.6167 29.3913 9.92605 29.6785 9.11999 29.6775ZM23.7934 29.6775C22.9864 29.6775 22.2953 29.3899 21.7201 28.8146C21.1449 28.2393 20.8578 27.5485 20.8587 26.7423C20.8587 25.9352 21.1463 25.2439 21.7215 24.6687C22.2967 24.0934 22.9874 23.8062 23.7934 23.8072C24.6005 23.8072 25.2916 24.0948 25.8668 24.6701C26.442 25.2454 26.7291 25.9362 26.7281 26.7423C26.7281 27.5495 26.4405 28.2407 25.8653 28.816C25.2901 29.3913 24.5995 29.6785 23.7934 29.6775ZM9.11999 22.3396C8.01948 22.3396 7.18798 21.8563 6.6255 20.8896C6.06302 19.923 6.03856 18.9632 6.55213 18.0103L8.53305 14.4147L3.25061 3.26109H1.74658C1.33083 3.26109 0.988451 3.1202 0.719438 2.83843C0.450425 2.55665 0.315918 2.20835 0.315918 1.79351C0.315918 1.3777 0.456783 1.0289 0.738513 0.747128C1.02024 0.465353 1.36849 0.324954 1.78326 0.325933H4.1677C4.43671 0.325933 4.6935 0.399312 4.93805 0.54607C5.18261 0.692827 5.36603 0.900734 5.48831 1.16979L6.47877 3.26109H28.1221C28.7824 3.26109 29.2348 3.50569 29.4794 3.99488C29.724 4.48407 29.7117 4.99772 29.4427 5.53584L24.2336 14.9283C23.9646 15.4175 23.61 15.7967 23.1698 16.0657C22.7296 16.3348 22.2283 16.4693 21.6658 16.4693H10.7341L9.11999 19.4044H25.2975C25.7132 19.4044 26.0556 19.5453 26.3246 19.8271C26.5936 20.1089 26.7281 20.4572 26.7281 20.872C26.7281 21.2878 26.5873 21.6366 26.3055 21.9184C26.0238 22.2002 25.6755 22.3406 25.2608 22.3396H9.11999Z" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 1.8 KiB

3
theme_eco_refine/static/src/img/product-like.svg

@ -0,0 +1,3 @@
<svg width="32" height="31" viewBox="0 0 32 31" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M16.2716 29.6776L3.82132 16.8018C-2.94512 9.0763 7.00154 -5.75666 16.2716 6.24362C25.5416 -5.75666 35.4431 9.1278 28.7218 16.8018L16.2716 29.6776Z" stroke="white" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
</svg>

After

Width:  |  Height:  |  Size: 341 B

BIN
theme_eco_refine/static/src/img/product-page-herobanner.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 942 KiB

3
theme_eco_refine/static/src/img/product-view.svg

@ -0,0 +1,3 @@
<svg width="32" height="29" viewBox="0 0 32 29" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M16.3061 4.45094C18.8749 4.43955 21.394 5.39538 23.5737 7.20855C25.7535 9.02171 27.5054 11.6186 28.6281 14.7007C26.323 20.981 21.6149 24.9505 16.3061 24.9505C10.9973 24.9505 6.2892 20.981 3.98406 14.7007C5.10676 11.6186 6.85868 9.02171 9.03843 7.20855C11.2182 5.39538 13.7373 4.43955 16.3061 4.45094ZM16.3061 0.723755C9.32081 0.723755 3.35538 6.51953 0.938477 14.7007C3.35538 22.8819 9.32081 28.6776 16.3061 28.6776C23.2914 28.6776 29.2568 22.8819 31.6737 14.7007C29.2568 6.51953 23.2914 0.723755 16.3061 0.723755ZM16.3061 10.0417C17.2324 10.0417 18.1208 10.5326 18.7758 11.4063C19.4307 12.28 19.7987 13.4651 19.7987 14.7007C19.7987 15.9363 19.4307 17.1214 18.7758 17.9951C18.1208 18.8688 17.2324 19.3597 16.3061 19.3597C15.3798 19.3597 14.4914 18.8688 13.8364 17.9951C13.1814 17.1214 12.8134 15.9363 12.8134 14.7007C12.8134 13.4651 13.1814 12.28 13.8364 11.4063C14.4914 10.5326 15.3798 10.0417 16.3061 10.0417ZM16.3061 6.31453C12.8414 6.31453 10.0193 10.079 10.0193 14.7007C10.0193 19.3224 12.8414 23.0869 16.3061 23.0869C19.7708 23.0869 22.5928 19.3224 22.5928 14.7007C22.5928 10.079 19.7708 6.31453 16.3061 6.31453Z" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 1.2 KiB

3
theme_eco_refine/static/src/img/quotes-after.svg

@ -0,0 +1,3 @@
<svg width="69" height="55" viewBox="0 0 69 55" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M63.1462 47.1213C58.3074 52.3497 50.9853 55 41.387 55H37.9381V45.3097L40.711 44.7563C45.436 43.8144 48.7228 41.9616 50.4818 39.2425C51.3996 37.7777 51.9201 36.1005 51.9924 34.375L41.387 34.375C40.4723 34.375 39.595 34.0128 38.9482 33.3682C38.3014 32.7235 37.9381 31.8492 37.9381 30.9375L37.9381 6.875C37.9381 3.08344 41.0318 0 44.8359 0L65.5294 0C66.4441 0 67.3214 0.36216 67.9682 1.00682C68.6149 1.65147 68.9783 2.52582 68.9783 3.4375V20.625L68.968 30.6591C68.999 31.0406 69.6543 40.0813 63.1462 47.1213ZM6.89783 0L27.5913 0C28.506 0 29.3833 0.36216 30.0301 1.00682C30.6769 1.65147 31.0402 2.52582 31.0402 3.4375V20.625L31.0299 30.6591C31.0609 31.0406 31.7162 40.0813 25.2081 47.1213C20.3693 52.3497 13.0472 55 3.44891 55H0V45.3097L2.77293 44.7563C7.49795 43.8144 10.7848 41.9616 12.5437 39.2425C13.4615 37.7777 13.982 36.1005 14.0543 34.375L3.44891 34.375C2.53421 34.375 1.65696 34.0128 1.01016 33.3682C0.363365 32.7235 0 31.8492 0 30.9375V6.875C0 3.08344 3.09368 0 6.89783 0Z" fill="black" fill-opacity="0.25"/>
</svg>

After

Width:  |  Height:  |  Size: 1.1 KiB

3
theme_eco_refine/static/src/img/quotes-before.svg

@ -0,0 +1,3 @@
<svg width="69" height="55" viewBox="0 0 69 55" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M5.8538 7.87875C10.6926 2.65031 18.0147 0 27.613 0H31.0619V9.69031L28.289 10.2437C23.564 11.1856 20.2772 13.0384 18.5182 15.7575C17.6004 17.2223 17.0799 18.8995 17.0076 20.625H27.613C28.5277 20.625 29.405 20.9872 30.0518 21.6318C30.6986 22.2765 31.0619 23.1508 31.0619 24.0625V48.125C31.0619 51.9166 27.9682 55 24.1641 55H3.4706C2.55589 55 1.67865 54.6378 1.03185 53.9932C0.385053 53.3485 0.0216862 52.4742 0.0216862 51.5625V34.375L0.032033 24.3409C0.000992778 23.9594 -0.654301 14.9187 5.8538 7.87875ZM62.1022 55H41.4087C40.494 55 39.6167 54.6378 38.9699 53.9932C38.3231 53.3485 37.9598 52.4742 37.9598 51.5625V34.375L37.9701 24.3409C37.9391 23.9594 37.2838 14.9187 43.7919 7.87875C48.6307 2.65031 55.9528 0 65.5511 0H69V9.69031L66.2271 10.2437C61.5021 11.1856 58.2152 13.0384 56.4563 15.7575C55.5385 17.2223 55.018 18.8995 54.9457 20.625H65.5511C66.4658 20.625 67.343 20.9872 67.9898 21.6318C68.6366 22.2765 69 23.1508 69 24.0625V48.125C69 51.9166 65.9063 55 62.1022 55Z" fill="black" fill-opacity="0.25"/>
</svg>

After

Width:  |  Height:  |  Size: 1.1 KiB

BIN
theme_eco_refine/static/src/img/refurbished-img.jpg

Binary file not shown.

After

Width:  |  Height:  |  Size: 413 KiB

5
theme_eco_refine/static/src/img/return.svg

@ -0,0 +1,5 @@
<svg width="30" height="30" viewBox="0 0 30 30" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M22 10.8003V16.4003H8" stroke="black" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M11.5 12.1997L8 16.3997L11.5 20.5997" stroke="black" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M27.8333 1H2.16667C1.52233 1 1 1.6268 1 2.4V27.6C1 28.3732 1.52233 29 2.16667 29H27.8333C28.4777 29 29 28.3732 29 27.6V2.4C29 1.6268 28.4777 1 27.8333 1Z" stroke="black" stroke-linecap="round" stroke-linejoin="round"/>
</svg>

After

Width:  |  Height:  |  Size: 538 B

Some files were not shown because too many files changed in this diff

Loading…
Cancel
Save