Website Refresh
Gitea CI/CD / build (push) Failing after 5m0s

This commit is contained in:
clive
2026-08-11 21:27:27 +10:00
parent 9dab8984ca
commit c72bd65bfa
28 changed files with 1903 additions and 1205 deletions
-12
View File
@@ -37,18 +37,6 @@ namespace clivelancaster.Controllers
} }
return View(subscription); return View(subscription);
} }
public IActionResult About()
{
return View();
}
public IActionResult Clients()
{
return View();
}
public IActionResult Services()
{
return View();
}
public IActionResult Terms() public IActionResult Terms()
{ {
return View(); return View();
+9 -1
View File
@@ -2,4 +2,12 @@
Id SERIAL PRIMARY KEY, -- Auto-incrementing primary key Id SERIAL PRIMARY KEY, -- Auto-incrementing primary key
Email VARCHAR(255) NOT NULL, -- Email field, required with a max length of 255 characters Email VARCHAR(255) NOT NULL, -- Email field, required with a max length of 255 characters
DateSubscribed TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP -- Date and time of subscription DateSubscribed TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP -- Date and time of subscription
); );
### Tailwind
npm install tailwindcss @tailwindcss/cli
@import "tailwindcss";
## dev
npx @tailwindcss/cli -i ./wwwroot/css/site.css -o ./wwwroot/lib/tailwind/tailwindcss.css --watch
## build
npx @tailwindcss/cli -i ./wwwroot/css/site.css -o ./wwwroot/lib/tailwind/tailwindcss.css --minify
+103 -58
View File
@@ -1,75 +1,120 @@
@model clivelancaster.Models.ContactFormModel @model clivelancaster.Models.ContactFormModel
@{ @{
ViewData["Title"] = "Contact"; ViewData["Title"] = "Contact";
Layout = "~/Views/Shared/_Layout.cshtml"; Layout = "~/Views/Shared/_PageLayout.cshtml";
} }
<div class="container py-4"> <partial name="_PartialPageNavigation" />
<header class="pb-3 mb-4 border-bottom">
<span class="fs-4"><i class="bi bi-envelope-fill"></i> @ViewData["Title"]</span>
</header>
<div class="p-5 mb-4 bg-body-tertiary rounded-3 border">
<div class="container-fluid py-5">
<h2>Contact</h2>
@if (ViewBag.Message != null) <header class="pt-32 pb-12 bg-slate-50 text-center px-6">
<h1 class="text-4xl md:text-5xl font-bold text-slate-900 mb-4">Let's Start a Conversation</h1>
<p class="text-lg text-slate-600 max-w-2xl mx-auto">Whether you have a product idea to validate or need expert consulting for your enterprise, I'm here to help.</p>
</header>
<main class="flex-grow max-w-7xl mx-auto px-6 py-12 w-full">
<div class="grid lg:grid-cols-2 gap-16">
<div>
<div class="mb-10">
<h2 class="text-2xl font-bold text-slate-900 mb-6">Get in Touch</h2>
<p class="text-slate-600 mb-8 leading-relaxed">
I am currently accepting new roles and consulting opportunities. Please fill out the form, and I will get back to you within 24 hours.
</p>
<div class="space-y-6">
<div class="flex items-start">
<div class="w-12 h-12 bg-blue-100 rounded-lg flex items-center justify-center text-blue-600 text-xl mr-4 flex-shrink-0">
<a href="/img/CV_Clive_Lancaster.pdf" target="_blank"><i class="fas fa-download"></i></a>
</div>
<div>
<h3 class="font-bold text-slate-900">Download</h3>
<p class="text-slate-600">CV availble for <a href="/img/CV_Clive_Lancaster.pdf" target="_blank"><u>download</u></a>.</p>
</div>
</div>
<div class="flex items-start">
<div class="w-12 h-12 bg-blue-100 rounded-lg flex items-center justify-center text-blue-600 text-xl mr-4 flex-shrink-0">
<i class="fas fa-map-marker-alt"></i>
</div>
<div>
<h3 class="font-bold text-slate-900">Location</h3>
<p class="text-slate-600">Based in Sydney, Australia.<br>Available for remote work globally.</p>
</div>
</div>
</div>
</div>
<div class="border-t border-slate-200 pt-8">
<h3 class="font-bold text-slate-900 mb-4">Frequently Asked Questions</h3>
<div class="space-y-4">
<details class="group bg-slate-50 p-4 rounded-lg cursor-pointer">
<summary class="flex justify-between items-center font-medium list-none text-slate-800">
<span>Are you actively searching for a new role?</span>
<span class="transition group-open:rotate-180"><i class="fas fa-chevron-down text-sm"></i></span>
</summary>
<p class="text-slate-600 text-sm mt-3 leading-relaxed">Yes, I am always open to opportunities where I can add meaningful value and make a positive impact.</p>
</details>
<details class="group bg-slate-50 p-4 rounded-lg cursor-pointer">
<summary class="flex justify-between items-center font-medium list-none text-slate-800">
<span>Do you have a preference for full-time permanent or contract roles?</span>
<span class="transition group-open:rotate-180"><i class="fas fa-chevron-down text-sm"></i></span>
</summary>
<p class="text-slate-600 text-sm mt-3 leading-relaxed">Permanent roles are preferred, though I am open to contract opportunities.</p>
</details>
<details class="group bg-slate-50 p-4 rounded-lg cursor-pointer">
<summary class="flex justify-between items-center font-medium list-none text-slate-800">
<span>Do you have full working rights in Australia or UK?</span>
<span class="transition group-open:rotate-180"><i class="fas fa-chevron-down text-sm"></i></span>
</summary>
<p class="text-slate-600 text-sm mt-3 leading-relaxed">Yes, I have full working rights in Australia & UK.</p>
</details>
</div>
</div>
</div>
<div class="bg-white p-8 rounded-2xl shadow-xl border border-slate-100">
@if (@ViewBag.Message != null)
{ {
<div class="alert alert-info">@ViewBag.Message</div>
}
<form asp-action="Index" method="post"> <h2 class="text-2xl font-bold text-blue-600">Thank you for getting in touch!</h2>
<div class="form-group"> <p class="text-slate-600 mb-8 leading-relaxed">Weve received your message and will get back to you as soon as possible.</p>
<label asp-for="Name" class="incognito-field"></label> <a href="/Home" class="px-8 py-4 bg-white text-slate-700 border border-slate-200 font-semibold rounded-lg hover:bg-slate-50 transition text-center">Back to Home<i class="fas fa-home ml-2"></i></a>
<input asp-for="Name" class="form-control incognito-field" autocomplete="off" tabindex="-1" /> }
<label asp-for="NameIncognito"></label> else {
<input asp-for="NameIncognito" class="form-control" /> <form asp-action="Index" method="post" id="contactForm" class="space-y-6">
<div class="grid md:grid-cols-2 gap-6">
<div>
<label asp-for="Name" class="incognito-field"></label>
<input asp-for="Name" class="form-control incognito-field" autocomplete="off" tabindex="-1" />
<label asp-for="NameIncognito" class="block text-sm font-semibold text-slate-700 mb-2"></label>
<input asp-for="NameIncognito" class="w-full px-4 py-3 rounded-lg border border-slate-300 focus:border-blue-500 focus:ring-2 focus:ring-blue-200 outline-none transition" placeholder="John Doe" />
</div>
<div>
<label asp-for="Email" class="block text-sm font-semibold text-slate-700 mb-2"></label>
<input asp-for="Email" class="w-full px-4 py-3 rounded-lg border border-slate-300 focus:border-blue-500 focus:ring-2 focus:ring-blue-200 outline-none transition" placeholder="[email protected]" />
<span asp-validation-for="Email" class="text-danger"></span>
</div>
</div> </div>
<div class="form-group"> <div>
<label asp-for="Email"></label>
<input asp-for="Email" class="form-control" />
<span asp-validation-for="Email" class="text-danger"></span>
</div>
<div class="form-group">
<label asp-for="Subject" class="incognito-field"></label> <label asp-for="Subject" class="incognito-field"></label>
<input asp-for="Subject" class="form-control incognito-field" autocomplete="off" tabindex="-1" /> <input asp-for="Subject" class="form-control incognito-field" autocomplete="off" tabindex="-1" />
<label asp-for="SubjectIncognito"></label> <label asp-for="SubjectIncognito" class="block text-sm font-semibold text-slate-700 mb-2"></label>
<input asp-for="SubjectIncognito" class="form-control" /> <select asp-for="SubjectIncognito" class="w-full px-4 py-3 rounded-lg border border-slate-300 focus:border-blue-500 focus:ring-2 focus:ring-blue-200 outline-none transition bg-white">
<option>General Inquiry</option>
<option>Job Opportunity</option>
<option>Software Development</option>
<option>Product Strategy Consulting</option>
<option>Speaking Opportunity</option>
</select>
</div> </div>
<div class="form-group"> <div>
<label asp-for="Message" class="incognito-field"></label> <label asp-for="Message" class="incognito-field"></label>
<textarea asp-for="Message" class="form-control incognito-field" autocomplete="off" tabindex="-1"></textarea> <textarea asp-for="Message" class="form-control incognito-field" autocomplete="off" tabindex="-1"></textarea>
<label asp-for="MessageIncognito"></label> <label asp-for="MessageIncognito" for="message" class="block text-sm font-semibold text-slate-700 mb-2"></label>
<textarea asp-for="MessageIncognito" class="form-control"></textarea> <textarea asp-for="MessageIncognito" rows="5" class="w-full px-4 py-3 rounded-lg border border-slate-300 focus:border-blue-500 focus:ring-2 focus:ring-blue-200 outline-none transition" placeholder="Tell me a bit about your project..."></textarea>
</div> </div>
<div class="p-2"></div> <button type="submit" class="w-full bg-blue-600 text-white font-bold py-4 rounded-lg hover:bg-blue-700 transition shadow-lg transform active:scale-95 flex items-center justify-center">Send Message<i class="fas fa-paper-plane ml-2"></i></button>
<button type="submit" class="btn btn-primary">Send Message</button>
</form> </form>
}
</div> </div>
</div> </div>
</main>
<div class="row align-items-md-stretch">
<div class="col-md-6">
<div class="h-100 p-5 text-bg-dark rounded-3">
<h2>Phone</h2>
<i class="bi bi-telephone-fill"></i>
<p><a href="tel:0401089305" style="color:#fff;">0401089305</a></p>
<h2>Email</h2>
<i class="bi bi-envelope-at-fill"></i>
<p><a href="mailto:[email protected]" style="color:#fff;">[email protected]</a></p>
<h2>Telegram</h2>
<i class="bi bi-telegram"></i>
<p><a href="https://t.me/clivelancaster" style="color:#fff;">https://t.me/clivelancaster</a></p>
</div>
</div>
<div class="col-md-6">
<div class="h-100 p-5 bg-body-tertiary border rounded-3">
<h2>Location</h2>
<i class="bi bi-geo-alt-fill"></i>
<p>Sydney Australia</p>
<h2>Social</h2>
<i class="bi bi-linkedin"></i>
<p><a href="https://www.linkedin.com/in/clivelancaster/" style="color:#5a5a5a;">https://www.linkedin.com/in/clivelancaster/</a></p>
</div>
</div>
</div>
</div>
-172
View File
@@ -1,172 +0,0 @@
@{
ViewData["Title"] = "About";
Layout = "~/Views/Shared/_Layout.cshtml";
}
<div class="container py-4">
<header class="pb-3 mb-4 border-bottom">
<span class="fs-4"><i class="bi bi-file-person-fill"></i> @ViewData["Title"]</span>
</header>
<div class="p-5 mb-4 bg-body-tertiary rounded-3 border">
<div class="container-fluid py-2">
<p class="float-end">
<img src="~/img/member-1.jpg" class="bd-about-img rounded-circle" alt="Clive Lancaster" width="200px" />
</p>
<h1 class="display-6 fw-bold">Profile</h1>
<p class="col-md-8 fs-6">
Accomplished and results-driven <strong>Digital Product Manager</strong> with a diverse background in <i>health-tech, prop-tech, HR, and e-commerce</i>. Expertise as both a <i>business analyst</i> and <i>full-stack software developer</i>, excelling at delivering innovative digital solutions. Known for an analytical and customer-centric approach, adept at balancing strategic business imperatives with exceptional user experiences, fostering collaboration, and driving measurable success.
</p>
<a href="/img/CV_Clive_Lancaster.pdf" class="btn btn-primary" type="button"><i class="bi bi-file-pdf-fill"></i> Dowload CV</a>
</div>
</div>
<div class="p-5 mb-4 bg-body-tertiary rounded-3 border">
<div class="container-fluid py-2">
<h1 class="display-6 fw-bold">Key Achievements</h1>
<ul class="col-md-12 fs-6">
<li>
<strong>Enhanced clinical decision support, operational efficiency, and long-term product sustainability</strong> by managing the successful replatforming and rebranding of Telstra Healths Medicines Information management system into Entry Point, and spearheading a UX and technology stack upgrade of the AusDI product for internal and external customers.
</li>
<li>
<strong>Positioned Telstra Health as a national leader in digital health interoperability</strong> by leading delivery of Australias first secure, interoperable SMART on FHIR work capacity certificate, resulting in subsequent multi-million-dollar government contracts (ReturnToWorkSA).
</li>
<li>
<strong>Created a new recurring revenue stream for MedicalDirector</strong> by establishing and launching the organisations first medicines Clinical Decision Support (CDS) Data-as-a-Service platform, mapped to AMT (SNOMED CT-AU), achieving a signed customer contract (20182019).
</li>
<li>
<strong>Generated £400k+ in incremental annual revenue</strong> for the UKs #1 personalised gifts retailer (Getting Personal) by defining, building, and delivering a custom retail data analytics platform directly aligned to core business KPIs.
</li>
<li>
<strong>Improved conversion, reduced churn, and elevated brand quality</strong> across 290+ independent hotels by leading the end-to-end rebranding and delivery of Best Western Hotels UK/Europe business-critical marketing and e-commerce platform in collaboration with internal teams and external partners.
</li>
<li>
<strong>Reduced financial processing time by 80% and eliminated manual errors</strong> by leading the automation of credit-card reconciliation workflows across Best Western Hotels phone-based sales channels.
</li>
</ul>
</div>
</div>
<div class="p-5 mb-4 bg-body-tertiary rounded-3 border">
<div class="container-fluid py-2">
<h1 class="display-6 fw-bold">Core Competencies</h1>
<p class="col-md-8 fs-6">
<table class="table table-striped-columns">
<thead>
<tr>
<td>Competency</td>
<td>Description</td>
<td>Tools/Methodologies</td>
</tr>
</thead>
<tbody class="table-group-divider">
<tr>
<td>Product Strategy Development</td>
<td>Define product vision and roadmap aligned with business goals and user needs. Prioritize features based on market trends and competition.</td>
<td>North Star Metric, OKRs, SWOT Analysis, Business Model Canvas</td>
</tr>
<tr>
<td>User-Centered Design & UX Focus</td>
<td>Advocate for users by applying UX/UI best practices to create intuitive, user-friendly products.</td>
<td>Design Thinking, Figma, User Personas</td>
</tr>
<tr>
<td>Data-Driven Decision Making</td>
<td>Use data to validate decisions and guide product improvements based on customer behavior and performance metrics.</td>
<td>Google Analytics, A/B Testing, SQL Microsoft Power BI, Tableau</td>
</tr>
<tr>
<td>Agile Methodology & Product Development Lifecycle</td>
<td>Lead teams through agile processes, ensuring smooth product development from ideation to launch.</td>
<td>Scrum, Kanban, Jira, Confluence</td>
</tr>
<tr>
<td>Stakeholder Management & Communication</td>
<td>Align cross-functional teams and communicate product value effectively to all stakeholders.</td>
<td>RACI Matrix, Microsoft Teams, Miro, PowerPoint</td>
</tr>
<tr>
<td>Technical Acumen</td>
<td>Understand technology and development processes to bridge the gap between business and engineering.</td>
<td>APIs, Postman, GitHub, DevOps principles</td>
</tr>
<tr>
<td>Roadmap & Backlog Prioritization</td>
<td>Prioritize features to maximize value and impact using structured frameworks.</td>
<td>MoSCoW, RICE, Trello, Productboard</td>
</tr>
<tr>
<td>Market & Competitive Analysis</td>
<td>Analyze market trends and competition to ensure product differentiation and growth.</td>
<td>Porters Five Forces, SEMrush, Ahrefs</td>
</tr>
<tr>
<td>Customer Empathy & Feedback Loops</td>
<td>Regularly engage users to gather feedback and iterate product features based on customer pain points.</td>
<td>NPS, UserTesting, Customer Journey Mapping</td>
</tr>
<tr>
<td>Financial Acumen & Business Value Creation</td>
<td>Align product goals with business outcomes like revenue, profitability, and customer retention.</td>
<td>P&L Management, ROI Calculations, Pricing Models</td>
</tr>
<tr>
<td>Growth Mindset & Continuous Learning</td>
<td>Stay updated on industry trends and continuously improve skills and processes.</td>
<td>Linkin Learning, Product-Led Growth, Lean Startup</td>
</tr>
<tr>
<td>Risk Management & Problem Solving</td>
<td>Identify risks early and develop solutions to ensure successful product delivery.</td>
<td>Risk Matrix, Root Cause Analysis, Fishbone Diagram</td>
</tr>
</tbody>
</table>
</p>
</div>
</div>
<div class="p-5 mb-4 bg-body-tertiary rounded-3 border">
<div class="container-fluid py-2">
<h1 class="display-6 fw-bold">Education</h1>
<ul class="col-md-8 fs-6">
<li>BSc (Hon) Computer Studies (2.1) Teesside University, Middlesbrough, 2002 to 2004<br />
<i>Dissertation on Medical Information System using Microsoft Technologies</i>
</li>
<li>
HND Computing (Information Technology) Teesside University, Middlesbrough, 2000 to 2002
</li>
</ul>
</div>
</div>
<div class="p-5 mb-4 bg-body-tertiary rounded-3 border">
<div class="container-fluid py-2">
<h1 class="display-6 fw-bold">Training & Certification</h1>
<ul class="col-md-8 fs-6">
<li>
Certified Scrum Product Owner (CSPO) Scrum Alliance, 2022
</li>
<li>
First Aid St John Ambulance Australia (NSW)
</li>
<li>
ICARE Customer Services Course Interchange & Consort Hotels, York, 2011
</li>
<li>
City & Guilds AutoCAD 2D & 3D Design York College of Further & Higher Education, York, 1999 to 2000
</li>
<li>
8th Kyu Shodokan Aikido York, England
</li>
<li>
7th Kyu Shorinji Kan Jiu Jitsu York, England
</li>
<li>
2nd Kyu Kano Institute of Judo Randburg, South Africa
</li>
</ul>
</div>
</div>
</div>
-247
View File
@@ -1,247 +0,0 @@
@{
ViewData["Title"] = "Clients";
Layout = "~/Views/Shared/_Layout.cshtml";
}
<div class="container py-4">
<header class="pb-3 mb-4 border-bottom">
<span class="fs-4"><i class="bi bi-people-fill"></i> @ViewData["Title"]</span>
</header>
<div class="p-5 mb-4 bg-body-tertiary rounded-3 border">
<div class="container-fluid py-2">
<p class="float-end">
<img src="~/img/client-1.png" alt="Telstra Health" width="150px" />
</p>
<h1 class="display-8 fw-bold">Telstra Health Pty Ltd.</h1>
<p class="col-md-8 fs-6">Telstra Health is Australias largest eHealth software and technology company.</p>
<p class="col-md-8 fs-6">
<strong>Product Manager</strong><br />
Sydney, September 2022 to Present
</p>
<ul>
<li>
Define quarterly OKRs and roadmap scope for Clinical Decision Support (CDS) products including AusDI, Medicines DaaS, AIDH, DRTC, Entry Point and Access Control System (ACS), reporting to Product Lead.
</li>
<li>
Own backlog prioritisation and stakeholder alignment across clinical, technical, and commercial teams.
</li>
<li>
Partner with sales and pre-sales to shape government and enterprise deals.
</li>
<li>
Drive data-informed iteration using customer feedback loops and usage analytics.
</li>
</ul>
</div>
<div class="container-fluid py-2">
<p class="col-md-8 fs-6">
<strong>Product Owner</strong><br />
Sydney, December 2020 to September 2022
</p>
<ul>
<li>
Planned and executed roadmap for Kyra Secure Messaging (Argus), ConnectingCare & eReferrals, aligning with hospital and GP strategies.
</li>
<li>
Led cross-functional squads (812 engineers, UX, QA) to deliver secure, compliant integrations.
</li>
<li>
Supported BD in winning government tenders and private healthcare contracts.
</li>
</ul>
<a href="https://www.telstrahealth.com/" style="color:#212529bf;">www.telstrahealth.com</a>
</div>
</div>
<div class="p-5 mb-4 bg-body-tertiary rounded-3 border">
<div class="container-fluid py-2">
<p class="float-end">
<img src="~/img/client-2.png" alt="CoreLogic Asia Pacific" width="150px" />
</p>
<h1 class="display-6 fw-bold">RP Data Pty Ltd t/a CoreLogic Asia Pacific</h1>
<p class="col-md-8 fs-6">
Cotality (formerly RP Data Pty Ltd t/a CoreLogic Asia Pacific) is a global leading property market data and insights solutions provider within Australia, NewZealand and America.
</p>
<p class="col-md-8 fs-6">
<strong>Snr. Professional Product Owner</strong> <br />Sydney, January 2020 to December 2020
</p>
<ul><li>
Developed and executed product roadmap successfully achieving key business goals and KPIs within budget
</li>
<li>
Provided guidance to the recent sales agile delivery team in order to achieve business goals and objectives
</li>
<li>
Collaborated with other businesses units and customer stakeholders to deliver positive customer outcomes
</li>
<li>
Developed the business case for the Recent Sales division insight of the covid-19 pandemic
</li>
</ul>
<a href="https://www.corelogic.com.au/" style="color:#212529bf;">www.corelogic.com.au</a>
</div>
</div>
<div class="p-5 mb-4 bg-body-tertiary rounded-3 border">
<div class="container-fluid py-2">
<p class="float-end">
<img src="~/img/client-3.png" alt="MedicalDirector" width="150px" />
</p>
<h1 class="display-6 fw-bold">Health Communication Network Pty Ltd t/a MedicalDirector</h1>
<p class="col-md-8 fs-6">
Telstra Health (formerly MedicalDirector) is a healthcare management software solutions and information provider and leader in the Australian market.
</p>
<p class="col-md-8 fs-6">
<strong>
Product Manager </strong><br />
Sydney, May 2017 to Nov 2019
</p>
<ul><li>
Developed product roadmap and managed product backlog for the Clinical Content division in line with the product strategy
</li>
<li>
Managed the delivery of a business first Medicines DaaS from conception to initial customer contract
</li>
<li>
Increased customer satisfaction and Net Promoter Score for AusDI by working with integration partners including the SHPA, IMGateway and FDB to deliver additional product offerings
</li>
<li>
Enhanced efficiency and sustainability of pharmaceutical document management by managing the migration and delivery of a current version of Allette Systems PageSeeder
</li>
<li>
Developed feature wireframes and mock-ups for AusDI desktop and mobile using insights from UX designers
</li>
<li>
Delivering support and maintaining relationships for government state held health contracts
</li>
</ul>
</div>
<div class="container-fluid py-2">
<p class="col-md-8 fs-6">
<strong>
Senior Business Analyst
</strong><br />
Sydney, Dec 2016 to May 2017
</p>
<ul><li>
Owned the customer requirements for the Clinical Content division
</li>
<li>
Enhanced delivery management and efficiency of both business and technical processes
</li>
<li>
Responsible for Agile process and Sprint management
</li>
<li>
External and internal stakeholder management
</li>
<li>
Leadership and management of delivery channels
</li>
</ul>
<a href="https://www.medicaldirector.com/" style="color:#212529bf;">www.medicaldirector.com</a>
</div>
</div>
<div class="p-5 mb-4 bg-body-tertiary rounded-3 border">
<div class="container-fluid py-2">
<p class="float-end">
<img src="~/img/client-4.png" alt="X Channel Marketing" width="150px" />
</p>
<h1 class="display-6 fw-bold">X Channel Marketing Ltd. </h1>
<p class="col-md-8 fs-6">
X Channel Marketing is a data services company specialising in retail data collection transformation and analysis.
</p><p class="col-md-8 fs-6">
<strong>
Business Analyst
</strong><br />
York, April 2016 to September 2016
</p>
<ul>
<li>
Collaborated with retail clients to capture onboarding and change-request requirements, producing clear functional specifications supporting product and data platform updates.
</li>
<li>
Improved internal analysis and documentation processes, increasing efficiency and consistency across delivery teams.
</li>
<li>
Supported the design and enhancement of FRS documentation for clients including Boohoo, Jack Wills, Ann Summers and Getting Personal.
</li>
<li>
Contributed to extending the ETL data warehouse to support new analytics capabilities for marketing and sales insights.
</li>
<li>
Coordinated internal and client-facing project activities, strengthening stakeholder communication and delivery alignment.
</li>
</ul>
<a href="https://www.xcm-uk.com/" style="color:#212529bf;">www.xcm-uk.com</a>
</div>
</div>
<div class="p-5 mb-4 bg-body-tertiary rounded-3 border">
<div class="container-fluid py-2">
<p class="float-end">
<img src="~/img/client-5.png" alt="World Nomads Group" width="150px" />
</p>
<h1 class="display-6 fw-bold">World Nomads Group Pty Ltd. </h1>
<p class="col-md-8 fs-6">
nib Travel (formerly World Nomads Group) are an online travel insurance company specialising in providing short term insurance cover.
</p>
<p class="col-md-8 fs-6">
<strong>
Software Developer
</strong><br />
Sydney, Dec. 2014 to May 2015
</p> <ul>
<li>
Delivered enhancements across customer-facing travel insurance products, working in Agile teams and collaborating with product owners using C#, .NET, AngularJS and CMS platforms.
</li>
</ul>
<a href="https://www.worldnomads.com/au/" style="color:#212529bf;">www.worldnomads.com</a>
</div>
</div>
<div class="p-5 mb-4 bg-body-tertiary rounded-3 border">
<div class="container-fluid py-2">
<p class="float-end">
<img src="~/img/client-6.png" alt="Maximus International" width="150px" />
</p>
<h1 class="display-6 fw-bold">Maximus International Pty Ltd. </h1>
<p class="col-md-8 fs-6">Maximus International are a business consultancy which provides leadership development and talent management services to some of the biggest business in Australia.</p>
<p class="col-md-8 fs-6">
<strong>
Senior Software Developer / Business Analyst
</strong><br />Hybrid role including full Business Systems Analysis responsibilities<br />
Sydney, June 2011 to Oct. 2014
</p> <ul>
<li>
Hybrid BA/product/engineering role designing and delivering SaaS HR and talent management solutions for enterprise clients including Telstra, Johnson & Johnson and 3M.
</li>
</ul>
<a href="https://maximus.com.au/" style="color:#212529bf;">www.maximus.com.au</a>
</div>
</div>
<div class="p-5 mb-4 bg-body-tertiary rounded-3 border">
<div class="container-fluid py-2">
<p class="float-end">
<img src="~/img/client-7.png" alt="Best Western Hotels" width="150px" />
</p>
<h1 class="display-6 fw-bold">Best Western Hotels Ltd. </h1>
<p class="col-md-8 fs-6">
Best Western along with sister company Beacon Purchasing provide hotel marketing and management services to privately owned hotels.
</p>
<p class="col-md-8 fs-6">
<strong>Software Developer / Analyst Programmer</strong><br />
York, Apr. 2005 to Mar. 2011
</p>
<ul><li>
Developed and maintained web and business systems, conducted requirements analysis, and supported delivery of technology solutions for hospitality operations across multiple brands.
</li>
</ul>
<a href="https://www.bestwestern.co.uk/" style="color:#212529bf;">www.bestwestern.co.uk</a>
</div>
</div>
</div>
+257 -149
View File
@@ -1,170 +1,278 @@
@model clivelancaster.Models.SubscribeFormModel @{
@{
ViewData["Title"] = "Home Page"; ViewData["Title"] = "Home Page";
} }
<div id="myCarousel" class="carousel slide" data-bs-ride="carousel" data-bs-interval="5500"> <nav class="fixed w-full z-50 bg-white/95 backdrop-blur-md border-b border-slate-100 transition-all duration-300" id="navbar">
<div class="carousel-indicators"> <div class="max-w-7xl mx-auto px-6 h-20 flex items-center justify-between">
<button type="button" data-bs-target="#myCarousel" data-bs-slide-to="0" class="active" aria-current="true" aria-label="Slide 1"></button> <a href="/Home" class="text-2xl font-bold text-slate-900 tracking-tight hover:opacity-80 transition">CLIVE <span class="text-blue-600">LANCASTER</span></a>
<button type="button" data-bs-target="#myCarousel" data-bs-slide-to="1" aria-label="Slide 2"></button>
<button type="button" data-bs-target="#myCarousel" data-bs-slide-to="2" aria-label="Slide 3"></button>
<button type="button" data-bs-target="#myCarousel" data-bs-slide-to="3" aria-label="Slide 4"></button>
</div>
<div class="carousel-inner">
<div class="carousel-item active">
<div class="container">
<div class="carousel-caption text-end">
<h1>Unlock Growth Potential.</h1>
<p>Our consulting services empower your business to achieve its full potential by aligning product strategies with your overarching goals. We help you create a clear product vision that resonates in the marketplace, ensuring your offerings are not just competitive but truly exceptional.</p>
<p><a class="btn btn-lg btn-primary" href="/Contact"><i class="bi bi-play-fill"></i> Get started today!</a></p>
</div>
</div>
</div>
<div class="carousel-item">
<div class="container">
<div class="carousel-caption text-end">
<h1>Reduce Risk and Increase Efficiency.</h1>
<p>By validating new product ideas and features before heavy investments, we help minimize financial risk. Our structured ideation process ensures that your resources are focused on initiatives with the highest potential for success.</p>
<p><a class="btn btn-lg btn-primary" href="/Contact"><i class="bi bi-play-fill"></i> Get started today!</a></p>
</div>
</div>
</div>
<div class="carousel-item">
<div class="container">
<div class="carousel-caption text-end">
<h1>Streamline Product Lifecycle Management.</h1>
<p>Our expertise in product lifecycle management enables you to take control of your products journey—from inception to market launch. We prioritize features that matter most to your customers and tackle technical challenges head-on, driving efficiency and effectiveness in your development processes.</p>
<p><a class="btn btn-lg btn-primary" href="/Contact"><i class="bi bi-play-fill"></i> Get started today!</a></p>
</div>
</div>
</div>
<div class="carousel-item">
<div class="container">
<div class="carousel-caption text-end">
<h1>Achieve Sustainable Success.</h1>
<p>With our comprehensive approach to product management, we not only help you meet immediate goals but also lay the groundwork for long-term growth and adaptability in a constantly evolving market.</p>
<p><a class="btn btn-lg btn-primary" href="/Contact"><i class="bi bi-play-fill"></i> Get started today!</a></p>
</div>
</div>
</div>
</div>
<button class="carousel-control-prev" type="button" data-bs-target="#myCarousel" data-bs-slide="prev">
<span class="carousel-control-prev-icon" aria-hidden="true"></span>
<span class="visually-hidden">Previous</span>
</button>
<button class="carousel-control-next" type="button" data-bs-target="#myCarousel" data-bs-slide="next">
<span class="carousel-control-next-icon" aria-hidden="true"></span>
<span class="visually-hidden">Next</span>
</button>
</div>
<div class="container marketing"> <div class="hidden md:flex space-x-8 items-center">
<!-- Three columns of text below the carousel --> <a href="/Home#about" class="text-slate-600 hover:text-blue-600 font-medium transition">About</a>
<div class="row"> <a href="/Home#services" class="text-slate-600 hover:text-blue-600 font-medium transition">Services</a>
<div class="col-lg-4"> <a href="/Home#experience" class="text-slate-600 hover:text-blue-600 font-medium transition">Experience</a>
<svg class="bd-about-img rounded-circle" width="140" height="140" xmlns="http://www.w3.org/2000/svg" role="img" aria-label="About" preserveAspectRatio="xMidYMid slice" focusable="false"><title>About</title><rect width="100%" height="100%" fill="none" /></svg> <a href="https://blog.clivelancaster.com" class="text-slate-600 hover:text-blue-600 font-medium transition">Blog</a>
<a href="/Contact" class="px-5 py-2.5 bg-blue-600 text-white font-semibold rounded-lg hover:bg-blue-700 transition shadow-lg shadow-blue-600/20">Get Started</a>
<h2 class="fw-normal">About</h2> </div>
<p>Learn more about Clive Lancaster.</p>
<p><a class="btn btn-secondary" href="/Home/About"><i class="bi bi-file-person-fill"></i> View details</a></p>
</div><!-- /.col-lg-4 -->
<div class="col-lg-4">
<svg class="bd-clients-img rounded-circle" width="140" height="140" xmlns="http://www.w3.org/2000/svg" role="img" aria-label="Clients" preserveAspectRatio="xMidYMid slice" focusable="false"><title>Clients</title><rect width="100%" height="100%" fill="none" /></svg>
<h2 class="fw-normal">Clients</h2>
<p>Explore customer success stories.</p>
<p><a class="btn btn-secondary" href="/Home/Clients"><i class="bi bi-people-fill"></i> View details</a></p>
</div><!-- /.col-lg-4 -->
<div class="col-lg-4">
<svg class="bd-services-img rounded-circle" width="140" height="140" xmlns="http://www.w3.org/2000/svg" role="img" aria-label="Services" preserveAspectRatio="xMidYMid slice" focusable="false"><title>Services</title><rect width="100%" height="100%" fill="none" /></svg>
<h2 class="fw-normal">Services</h2>
<p>Discover capabilities and services.</p>
<p><a class="btn btn-secondary" href="/Home/Services"><i class="bi bi-box-fill"></i> View details</a></p>
</div><!-- /.col-lg-4 -->
</div><!-- /.row -->
<div class="bg-body-tertiary rounded-3 border" style="padding:20px; margin-top:15px;"> <button id="mobile-menu-btn" class="md:hidden text-slate-600 text-2xl focus:outline-none p-2" aria-label="Toggle Menu">
<div class="row featurette"> <i class="fas fa-bars"></i>
<div class="col-md-10"> </button>
<h2 class="featurette-heading fw-normal lh-1">Domain Expertise <span class="text-body-secondary">Across Key Industries.</span></h2>
<p class="lead">With deep domain experience in medical, real estate, retail, hospitality, and human resources, services rendered bring tailored solutions that address the unique challenges of each sector. With a proven track record of delivering technology and product solutions that streamline operations, enhance customer experiences, and drive growth. Whether you need innovative healthcare platforms, cutting-edge retail solutions, or dynamic HR tools, expertises spanning a diverse range of industries.</p>
</div>
<div class="col-md-2">
<img src="./img/banner-1.jpg" class="bd-placeholder-img bd-placeholder-img-lg featurette-image img-fluid mx-auto" style="border-radius: .3rem !important;" width="250" height="250" xmlns="http://www.w3.org/2000/svg" role="img" aria-label="Domain" preserveAspectRatio="xMidYMid slice" focusable="false"><rect width="100%" height="100%" fill="var(--bs-secondary-bg)" /><text x="50%" y="50%" fill="var(--bs-secondary-color)" dy=".3em"></text>
</div>
</div>
</div> </div>
<div class="bg-body-tertiary rounded-3 border" style="padding:20px; margin-top:15px;"> <div id="mobile-menu" class="hidden md:hidden absolute top-20 left-0 w-full bg-white border-b border-slate-100 shadow-xl">
<div class="row featurette"> <div class="flex flex-col px-6 py-4 space-y-4">
<div class="col-md-10 order-md-2"> <a href="/Home#about" class="mobile-link text-slate-600 hover:text-blue-600 font-medium text-lg block py-2 border-b border-slate-50">About</a>
<h2 class="featurette-heading fw-normal lh-1">Over 18 Years <span class="text-body-secondary"> of Product and Software Excellence.</span></h2> <a href="/Home#services" class="mobile-link text-slate-600 hover:text-blue-600 font-medium text-lg block py-2 border-b border-slate-50">Services</a>
<p class="lead">Backed by over 18 years of experience in Product Management and Software Development, knowing how to take ideas from concept to market success. With a long-standing history of leading high-performing teams, launching world-class products, and driving digital transformation. From SaaS platforms to custom enterprise solutions, ensuring every product is built to meet business needs and exceed user expectations.</p> <a href="/Home#experience" class="mobile-link text-slate-600 hover:text-blue-600 font-medium text-lg block py-2 border-b border-slate-50">Experience</a>
</div> <a href="https://blog.clivelancaster.com" class="mobile-link text-slate-600 hover:text-blue-600 font-medium text-lg block py-2 border-b border-slate-50">Blog</a>
<div class="col-md-2 order-md-1"> <a href="/Contact" class="mobile-link block w-full text-center px-5 py-3 bg-blue-600 text-white font-semibold rounded-lg hover:bg-blue-700 transition">Get Started</a>
<img src="./img/banner-2.jpg" class="bd-placeholder-img bd-placeholder-img-lg featurette-image img-fluid mx-auto" style="border-radius: .3rem !important;" width="250" height="250" xmlns="http://www.w3.org/2000/svg" role="img" aria-label="Experience" preserveAspectRatio="xMidYMid slice" focusable="false"><rect width="100%" height="100%" fill="var(--bs-secondary-bg)" /><text x="50%" y="50%" fill="var(--bs-secondary-color)" dy=".3em"></text>
</div> </div>
</div> </div>
</div> </nav>
<div class="bg-body-tertiary rounded-3 border" style="padding:20px; margin-top:15px;"> <header class="hero-bg pt-32 pb-20 lg:pt-48 lg:pb-32" id="home">
<div class="row featurette"> <div class="max-w-7xl mx-auto px-6 grid lg:grid-cols-2 gap-12 items-center">
<div class="col-md-10"> <div class="order-2 lg:order-1">
<h2 class="featurette-heading fw-normal lh-1">International Experience <span class="text-body-secondary">Across Europe and Asia Pacific.</span></h2> <div class="inline-block px-3 py-1 bg-blue-100 text-blue-700 rounded-full text-sm font-semibold mb-6">
<p class="lead">With extensive international experience across Europe and the Asia Pacific, and an understanding of the complexities of global markets and diverse user needs. Our ability to navigate different cultures, regulatory environments, and market dynamics enables us to deliver products that scale internationally. Whether launching a new product in a local market or expanding globally, we leverage a global perspective to drive success across borders.</p> Digital Product Management & Ownership
</div>
<h1 class="text-5xl lg:text-6xl font-bold text-slate-900 leading-tight mb-6">
Reduce Risk. <br>
<span class="gradient-text">Increase Value.</span>
</h1>
<p class="text-lg lg:text-xl text-slate-600 mb-8 leading-relaxed max-w-lg">
Bridging customer expectations, commercial objectives and technology capabilities to shape products that solve meaningful problems, create measurable value and deliver sustainable competitive advantage.
</p>
<div class="flex flex-col sm:flex-row gap-4">
<a href="#contact" class="px-8 py-4 bg-slate-900 text-white font-semibold rounded-lg hover:bg-slate-800 transition text-center shadow-xl">
Schedule a Consultation
</a>
<a href="#experience" class="px-8 py-4 bg-white text-slate-700 border border-slate-200 font-semibold rounded-lg hover:bg-slate-50 transition text-center">
View Portfolio
</a>
</div>
</div> </div>
<div class="col-md-2">
<img src="./img/banner-3.jpg" class="bd-placeholder-img bd-placeholder-img-lg featurette-image img-fluid mx-auto" style="border-radius: .3rem !important;" width="250" height="250" xmlns="http://www.w3.org/2000/svg" role="img" aria-label="International" preserveAspectRatio="xMidYMid slice" focusable="false"><rect width="100%" height="100%" fill="var(--bs-secondary-bg)" /><text x="50%" y="50%" fill="var(--bs-secondary-color)" dy=".3em"></text> <div class="relative order-1 lg:order-2">
<div class="bg-white p-8 rounded-2xl shadow-2xl border border-slate-100 relative z-10">
<div class="flex items-center justify-between mb-8">
<div>
<h3 class="font-bold text-slate-900 text-lg">Product Success Metrics</h3>
<p class="text-sm text-slate-500">Quarterly Performance</p>
</div>
<div class="h-10 w-10 bg-green-100 rounded-full flex items-center justify-center text-green-600">
<i class="fas fa-arrow-up"></i>
</div>
</div>
<div class="flex items-end space-x-4 h-48">
<div class="w-1/4 bg-blue-100 rounded-t-lg h-3/5 relative group">
<div class="absolute -top-8 left-1/2 -translate-x-1/2 bg-slate-800 text-white text-xs px-2 py-1 rounded opacity-0 group-hover:opacity-100 transition">Idea</div>
</div>
<div class="w-1/4 bg-blue-200 rounded-t-lg h-4/5 relative group">
<div class="absolute -top-8 left-1/2 -translate-x-1/2 bg-slate-800 text-white text-xs px-2 py-1 rounded opacity-0 group-hover:opacity-100 transition">Validate</div>
</div>
<div class="w-1/4 bg-blue-400 rounded-t-lg h-2/3 relative group">
<div class="absolute -top-8 left-1/2 -translate-x-1/2 bg-slate-800 text-white text-xs px-2 py-1 rounded opacity-0 group-hover:opacity-100 transition">Build</div>
</div>
<div class="w-1/4 bg-blue-600 rounded-t-lg h-full relative group">
<div class="absolute -top-8 left-1/2 -translate-x-1/2 bg-slate-800 text-white text-xs px-2 py-1 rounded opacity-0 group-hover:opacity-100 transition">Scale</div>
</div>
</div>
<div class="mt-6 border-t border-slate-100 pt-4 flex justify-between text-sm">
<span class="font-semibold text-slate-700">ROI Calculation</span>
<span class="text-green-600 font-bold">+125%</span>
</div>
</div>
<div class="absolute -top-6 -right-6 w-24 h-24 bg-blue-400 rounded-full mix-blend-multiply filter blur-2xl opacity-20 animate-pulse"></div>
<div class="absolute -bottom-8 -left-8 w-32 h-32 bg-purple-400 rounded-full mix-blend-multiply filter blur-2xl opacity-20 animate-pulse"></div>
</div> </div>
</div> </div>
</header>
<section class="bg-slate-900 py-12 text-white">
<div class="max-w-7xl mx-auto px-6 grid grid-cols-1 md:grid-cols-3 gap-8 text-center divide-y md:divide-y-0 md:divide-x divide-slate-700">
<div class="px-4 py-2">
<p class="text-4xl font-bold text-blue-400 mb-1">12+</p>
<p class="text-slate-400 text-sm uppercase tracking-wide font-medium">Years of Excellence</p>
<p class="text-xs text-slate-500 mt-1">Digital Product Management</p>
</div> </div>
<div class="bg-body-tertiary rounded-3 border" style="padding:20px; margin-top:15px;"> <div class="px-4 py-2">
<section class="py-2 text-center container"> <p class="text-4xl font-bold text-blue-400 mb-1">Global</p>
<div class="row py-lg-2"> <p class="text-slate-400 text-sm uppercase tracking-wide font-medium">International Reach</p>
<div class="col-lg-10 col-md-8 mx-auto"> <p class="text-xs text-slate-500 mt-1">Europe & Asia Pacific</p>
<h1 class="fw-light">Digital Product Management</h1> </div>
<p class="lead text-muted text-start">Partner with us to harness the full potential of your products and drive your business towards sustained success!</p> <div class="px-4 py-2">
<p> <p class="text-4xl font-bold text-blue-400 mb-1">Diverse</p>
<a href="/Contact" class="btn btn-primary my-2"><i class="bi bi-play-fill"></i> Get started today!</a> <p class="text-slate-400 text-sm uppercase tracking-wide font-medium">Industry Expertise</p>
<a href="/Home/About" class="btn btn-secondary my-2"><i class="bi bi-book-fill"></i> Learn More</a> <p class="text-xs text-slate-500 mt-1">Medical, Retail, Real Estate, HR</p>
</div>
</div>
</section>
<section id="about" class="py-24 bg-white">
<div class="max-w-7xl mx-auto px-6">
<div class="flex flex-col lg:flex-row gap-16 items-center">
<div class="lg:w-1/2">
<div class="relative">
<img src="~/img/meeting-01.jpg?ixlib=rb-1.2.1&auto=format&fit=crop&w=1000&q=80" alt="Product Planning" class="rounded-2xl shadow-xl relative z-10">
<div class="absolute -bottom-6 -right-6 w-full h-full border-2 border-blue-100 rounded-2xl z-0"></div>
</div>
</div>
<div class="lg:w-1/2">
<h2 class="text-sm font-bold text-blue-600 uppercase tracking-widest mb-2">About Clive</h2>
<h3 class="text-3xl font-bold text-slate-900 mb-6">Connecting Customer, Business & Engineering</h3>
<p class="text-slate-600 mb-8 leading-relaxed">
Accomplished and results-driven Digital Product Manager with a diverse background spanning health-tech, prop-tech, HR and e-commerce. Combining experience across <strong>Product Management, Product Ownership, Business Analysis and full-stack software development</strong> to translate customer needs and business objectives into valuable, technology-enabled products.
</p> </p>
<p class="text-slate-600 mb-8 leading-relaxed">
Known for an analytical, customer-centric approach and the ability to balance <strong>strategic business priorities, customer experience and technical feasibility</strong>. Experienced in shaping product strategy, defining roadmaps, validating opportunities, prioritising investment and leading cross-functional delivery to achieve measurable outcomes.
</p>
<p class="text-slate-600 mb-8 leading-relaxed">
From delivering <strong>interoperable and compliant clinical decision support solutions</strong> to improving <strong>workflow automation and digital experiences</strong>, the focus remains on solving the right problems, reducing product risk and creating sustainable customer and commercial value.
</p>
<div class="grid grid-cols-2 gap-4">
<div class="flex items-center space-x-3">
<i class="fas fa-check-circle text-green-500"></i>
<span class="text-slate-700 font-medium">Product Strategy & Vision</span>
</div>
<div class="flex items-center space-x-3">
<i class="fas fa-check-circle text-green-500"></i>
<span class="text-slate-700 font-medium">Customer Discovery & User-Centric Design</span>
</div>
<div class="flex items-center space-x-3">
<i class="fas fa-check-circle text-green-500"></i>
<span class="text-slate-700 font-medium">Roadmapping & Prioritisation</span>
</div>
<div class="flex items-center space-x-3">
<i class="fas fa-check-circle text-green-500"></i>
<span class="text-slate-700 font-medium">Stakeholder & Cross-Functional Leadership</span>
</div>
<div class="flex items-center space-x-3">
<i class="fas fa-check-circle text-green-500"></i>
<span class="text-slate-700 font-medium">Data-Driven Decision Making</span>
</div>
<div class="flex items-center space-x-3">
<i class="fas fa-check-circle text-green-500"></i>
<span class="text-slate-700 font-medium">AI Product Management</span>
</div>
</div>
</div> </div>
</div> </div>
</section>
</div> </div>
<hr class="featurette-divider"> </section>
<div class="container">
<footer class="py-1">
<div class="row">
<div class="col-6 col-md-3 mb-3">
<h5>Overview</h5>
<ul class="nav flex-column">
<li class="nav-item mb-2"><a href="/Home/About" class="nav-link p-0 text-body-secondary">About</a></li>
<li class="nav-item mb-2"><a href="/Home/Services" class="nav-link p-0 text-body-secondary">Services</a></li>
<li class="nav-item mb-2"><a href="/Home/Clients" class="nav-link p-0 text-body-secondary">Clients</a></li>
</ul>
</div>
<div class="col-6 col-md-3 mb-3">
<h5>News</h5>
<ul class="nav flex-column">
<li class="nav-item mb-2"><a href="https://blog.clivelancaster.com" class="nav-link p-0 text-body-secondary">Blog</a></li>
<li class="nav-item mb-2"><a href="/Contact" class="nav-link p-0 text-body-secondary">Contact</a></li>
</ul>
</div>
<div class="col-md-6 offset-md-0 mb-2"> <section id="services" class="py-24 bg-slate-50">
<form asp-action="Index" method="post"> <div class="max-w-7xl mx-auto px-6">
<h5>Subscribe to our newsletter</h5> <div class="text-center mb-16">
<p>Monthly digest of what's new and exciting from us.</p> <h2 class="text-3xl font-bold text-slate-900 mb-4">Core Competencies</h2>
<div class="d-flex flex-column flex-sm-row w-100 gap-2"> <p class="text-slate-600 max-w-2xl mx-auto">Comprehensive product management services designed to take your concept from ideation to sustainable market success.</p>
<label asp-for="email" for="email" class="visually-hidden">Email address</label> </div>
<input asp-for="email" id="email" type="text" class="form-control" placeholder="Email address">
<span asp-validation-for="email" class="text-danger"></span> <div class="grid md:grid-cols-2 lg:grid-cols-4 gap-8">
<button class="btn btn-primary" type="submit">Subscribe</button> <div class="service-card bg-white p-8 rounded-xl shadow-sm border border-slate-100">
</div> <div class="w-12 h-12 bg-blue-50 rounded-lg flex items-center justify-center text-blue-600 text-xl mb-6">
</form> <i class="fas fa-rocket"></i>
</div>
<h3 class="font-bold text-slate-900 text-lg mb-3">Unlock Growth</h3>
<p class="text-slate-600 text-sm leading-relaxed">Align product strategies with overarching goals. Create a clear product vision that resonates in the marketplace.</p>
</div>
<div class="service-card bg-white p-8 rounded-xl shadow-sm border border-slate-100">
<div class="w-12 h-12 bg-blue-50 rounded-lg flex items-center justify-center text-blue-600 text-xl mb-6">
<i class="fas fa-shield-alt"></i>
</div>
<h3 class="font-bold text-slate-900 text-lg mb-3">Reduce Risk</h3>
<p class="text-slate-600 text-sm leading-relaxed">Validate ideas before heavy investment. Use structured ideation to focus resources on high-potential initiatives.</p>
</div>
<div class="service-card bg-white p-8 rounded-xl shadow-sm border border-slate-100">
<div class="w-12 h-12 bg-blue-50 rounded-lg flex items-center justify-center text-blue-600 text-xl mb-6">
<i class="fas fa-cogs"></i>
</div>
<h3 class="font-bold text-slate-900 text-lg mb-3">Streamline Lifecycle</h3>
<p class="text-slate-600 text-sm leading-relaxed">Take control of the journey from inception to launch. Prioritize features that matter most to customers.</p>
</div>
<div class="service-card bg-white p-8 rounded-xl shadow-sm border border-slate-100">
<div class="w-12 h-12 bg-blue-50 rounded-lg flex items-center justify-center text-blue-600 text-xl mb-6">
<i class="fas fa-chart-pie"></i>
</div>
<h3 class="font-bold text-slate-900 text-lg mb-3">Sustainable Success</h3>
<p class="text-slate-600 text-sm leading-relaxed">Lay the groundwork for long-term growth and adaptability in a constantly evolving market.</p>
</div>
</div>
</div>
</section>
<section id="experience" class="py-24 bg-white">
<div class="max-w-7xl mx-auto px-6">
<div class="mb-16">
<h2 class="text-3xl font-bold text-slate-900 mb-4">Track Record of Success</h2>
<div class="h-1 w-20 bg-blue-600"></div>
</div>
<div class="space-y-12">
<div class="flex flex-col md:flex-row gap-8 items-start border-b border-slate-100 pb-12">
<div class="md:w-1/3">
<span class="text-sm font-bold text-blue-600 uppercase">Healthcare / API</span>
<h3 class="text-2xl font-bold text-slate-900 mt-2">Telstra Health & MedicalDirector</h3>
</div>
<div class="md:w-2/3">
<p class="text-slate-600 mb-4">
<strong>Vision:</strong> Establish Telstra Health & MedicalDirector as a trusted, interoperable digital health platform by connecting clinicians, healthcare organisations and government services through secure, standards-based APIs and digital workflows.
</p>
<p class="text-slate-600">
<strong>Key Result:</strong> Expanded Telstra Health & MedicalDirector's market position and created a new API-based revenue opportunity by taking the Medicines DaaS platform from <strong>concept through to commercial contract execution.</strong>
</p>
</div> </div>
</div> </div>
</footer>
</div> <div class="flex flex-col md:flex-row gap-8 items-start border-b border-slate-100 pb-12">
</div> <div class="md:w-1/3">
<span class="text-sm font-bold text-blue-600 uppercase">SaaS / Enterprise</span>
<h3 class="text-2xl font-bold text-slate-900 mt-2">Cotality & XCM</h3>
</div>
<div class="md:w-2/3">
<p class="text-slate-600 mb-4">
<strong>Vision:</strong> Transform complex property, customer and marketing data into actionable intelligence that enables organisations to make informed decisions, identify opportunities and create measurable customer and commercial value.
</p>
<p class="text-slate-600">
<strong>Key Result:</strong> Bridged business, customer and technology needs to shape data-driven products and analytics solutions that convert complex datasets into <strong>clear, actionable insights and measurable business value.</strong>
</p>
</div>
</div>
<div class="flex flex-col md:flex-row gap-8 items-start">
<div class="md:w-1/3">
<span class="text-sm font-bold text-blue-600 uppercase">E-Commerce / Retail</span>
<h3 class="text-2xl font-bold text-slate-900 mt-2">Best Western</h3>
</div>
<div class="md:w-2/3">
<p class="text-slate-600 mb-4">
<strong>Vision:</strong> Create data-driven digital marketing experiences that improve customer engagement, strengthen brand value and deliver measurable commercial growth.
</p>
<p class="text-slate-600">
<strong>Key Result:</strong> Supported revenue growth and enhanced brand recognition for over <strong>290+ privately owned Best Western hotels.</strong>
</p>
</div>
</div>
</div>
</div>
</section>
<section id="contact" class="py-24 bg-blue-600 relative overflow-hidden">
<div class="absolute inset-0 bg-[url('https://www.transparenttextures.com/patterns/cubes.png')] opacity-10"></div>
<div class="max-w-4xl mx-auto px-6 text-center relative z-10">
<h2 class="text-3xl md:text-4xl font-bold text-white mb-6">Ready to harness the full potential of your product?</h2>
<p class="text-blue-100 text-lg mb-10">Partner with me to drive your business towards sustained success and digital transformation.</p>
<div class="flex flex-col sm:flex-row justify-center gap-4">
<a href="/Contact" class="px-8 py-4 bg-white text-blue-600 font-bold rounded-lg hover:bg-slate-100 transition shadow-lg flex items-center justify-center">
<i class="fas fa-envelope mr-2"></i> Contact Me
</a>
<a href="https://www.linkedin.com/in/clivelancaster/" target="_blank" class="px-8 py-4 bg-transparent border-2 border-white text-white font-bold rounded-lg hover:bg-white/10 transition flex items-center justify-center">
<i class="fab fa-linkedin mr-2"></i> LinkedIn
</a>
</div>
</div>
</section>
+78 -94
View File
@@ -1,99 +1,83 @@
@{ @{
ViewData["Title"] = "Privacy Policy"; ViewData["Title"] = "Privacy Policy";
Layout = "~/Views/Shared/_PageLayout.cshtml";
} }
<div class="container py-4"> <partial name="_PartialPageNavigation" />
<header class="pb-3 mb-4 border-bottom">
<span class="fs-4">@ViewData["Title"]</span> <header class="pt-32 pb-12 bg-slate-50 text-center px-6">
</header> <h1 class="text-4xl md:text-5xl font-bold text-slate-900 mb-4">@ViewData["Title"]</h1>
<div class="p-5 mb-4 bg-body-tertiary rounded-3 border"> <p class="text-slate-500 text-xs uppercase tracking-widest font-bold">Last Updated: January 2026</p>
<div class="container-fluid py-2"> </header>
<h1 class="display-6 fw-bold">Privacy Policy</h1>
<p class="col-md-8 fs-6"> <main class="flex-grow max-w-7xl mx-auto px-6 py-12 w-full">
<strong>Introduction</strong> <div class="max-w-6xl mx-auto">
</p><p class="col-md-8 fs-6"> <div class="bg-white p-8 md:p-12 rounded-2xl shadow-sm border border-slate-100">
At Clive Lancaster, we are committed to protecting your privacy and ensuring the security of your personal information. This Privacy Policy outlines how we collect, use, and protect the information you provide to us when you use our website. By accessing or using our website, you agree to the terms of this Privacy Policy.
</p><p class="col-md-8 fs-6"> <div class="prose prose-slate max-w-none">
<strong> <h2 class="text-xl font-bold text-slate-900 mb-4">Introduction</h2>
Information We Collect</strong> <p class="text-slate-600 leading-relaxed mb-6">
</p><p class="col-md-8 fs-6"> At Clive Lancaster, we are committed to protecting your privacy and ensuring the security of your personal information. This Privacy Policy outlines how we collect, use, and protect the information you provide to us when you use our website. By accessing or using our website, you agree to the terms of this Privacy Policy.
We may collect the following types of information when you visit our website: </p>
</p><ol>
<li> <h2 class="text-xl font-bold text-slate-900 mb-4">Information We Collect</h2>
Personal Information: This includes information you voluntarily provide, such as your name, email address, phone number, or other contact details when you fill out forms, sign up for newsletters, or contact us. <p class="text-slate-600 leading-relaxed mb-4">
</li><li> We may collect the following types of information when you visit our website:
Non-Personal Information: We collect non-personally identifiable information automatically as you interact with our website, such as IP addresses, browser type, device information, and browsing behavior through cookies or analytics tools. </p>
</li> <ul class="list-disc pl-5 space-y-3 text-slate-600 mb-6">
Cookies: Our website uses cookies to enhance your user experience. Cookies are small files stored on your device that help us analyze site traffic, improve functionality, and personalize content. You can adjust your browser settings to decline cookies, but this may affect your experience on our website. <li>
</li> <strong class="text-slate-900">Personal Information:</strong> This includes information you voluntarily provide, such as your name, email address, phone number, or other contact details when you fill out forms, sign up for newsletters, or contact us.
</ol><p class="col-md-8 fs-6"> </li>
<strong> <li>
How We Use Your Information</strong> <strong class="text-slate-900">Non-Personal Information:</strong> We collect non-personally identifiable information automatically as you interact with our website, such as IP addresses, browser type, device information, and browsing behavior through cookies or analytics tools.
</p><p class="col-md-8 fs-6"> </li>
We use the information we collect to: <li>
</p><ul> <strong class="text-slate-900">Cookies:</strong> Our website uses cookies to enhance your user experience. Cookies are small files stored on your device that help us analyze site traffic, improve functionality, and personalize content.
<li> Provide and improve our websites functionality and services. </li>
</li> <li>Respond to your inquiries or requests. </ul>
</li>
<li> <h2 class="text-xl font-bold text-slate-900 mb-4">How We Use Your Information</h2>
Send you relevant updates, newsletters, or marketing materials (if you have opted in). <p class="text-slate-600 leading-relaxed mb-4">
</li> We use the information we collect to:
<li> </p>
Analyze website usage and trends to enhance your experience. <ul class="list-disc pl-5 space-y-2 text-slate-600 mb-6">
</li> <li>Provide and improve our websites functionality and services.</li>
<li> <li>Respond to your inquiries or requests.</li>
Ensure the security and integrity of our website. <li>Send you relevant updates or marketing materials (if opted in).</li>
</li> <li>Analyze website usage and trends to enhance your experience.</li>
<li>How We Share Your Information <li>Ensure the security and integrity of our website.</li>
</li> </ul>
</ul><p class="col-md-8 fs-6">
We do not sell, trade, or rent your personal information to third parties. However, we may share your information with trusted service providers who assist us in operating our website, conducting business, or servicing you, provided they agree to keep your information confidential. <h2 class="text-xl font-bold text-slate-900 mb-4">How We Share Your Information</h2>
</p><p class="col-md-8 fs-6"> <p class="text-slate-600 leading-relaxed mb-6">
We may also disclose your information if required by law, to enforce our website policies, or to protect our or others rights, property, or safety. We do not sell, trade, or rent your personal information to third parties. However, we may share your information with trusted service providers who assist us in operating our website, provided they agree to keep your information confidential.
</p><p class="col-md-8 fs-6"> </p>
<strong>
Third-Party Links</strong> <h2 class="text-xl font-bold text-slate-900 mb-4">Third-Party Links</h2>
</p><p class="col-md-8 fs-6"> <p class="text-slate-600 leading-relaxed mb-6">
Our website may contain links to third-party websites. We are not responsible for the privacy practices of these external sites. We encourage you to review the privacy policies of any third-party websites you visit. Our website may contain links to third-party websites. We are not responsible for the privacy practices of these external sites. We encourage you to review the privacy policies of any third-party websites you visit.
</p><p class="col-md-8 fs-6"> </p>
<strong>
Data Security</strong> <h2 class="text-xl font-bold text-slate-900 mb-4">Data Security</h2>
</p><p class="col-md-8 fs-6"> <p class="text-slate-600 leading-relaxed mb-6">
We take appropriate measures to safeguard your personal information from unauthorized access, alteration, or disclosure. However, no method of transmission over the internet or electronic storage is completely secure, and we cannot guarantee its absolute security. We take appropriate measures to safeguard your personal information from unauthorized access, alteration, or disclosure. However, no method of transmission over the internet is completely secure.
</p><p class="col-md-8 fs-6"> </p>
<strong>
Your Rights</strong> <h2 class="text-xl font-bold text-slate-900 mb-4">Your Rights</h2>
</p><p class="col-md-8 fs-6"> <ul class="list-disc pl-5 space-y-2 text-slate-600 mb-6">
You have the right to: <li>Access, update, or delete your personal information.</li>
</p><ul> <li>Opt out of receiving marketing communications from us.</li>
<li> <li>Request that we limit the use of your personal information.</li>
</ul>
Access, update, or delete your personal information.
</li> <div class="mt-10 pt-10 border-t border-slate-100">
<li> <h2 class="text-xl font-bold text-slate-900 mb-2">Contact Us</h2>
Opt out of receiving marketing communications from us. <p class="text-slate-600 mb-1">If you have any questions or concerns about this policy, please contact us at:</p>
</li> <p class="font-bold text-slate-900">Clive Lancaster</p>
<li> <p class="text-sm text-slate-500 mt-4">Effective Date: 01/01/2026</p>
Request that we limit the use of your personal information. </div>
</li> </div>
<li>
To exercise any of these rights, please contact us.
</li>
</ul><p class="col-md-8 fs-6">
<strong>
Changes to This Privacy Policy</strong>
</p><p class="col-md-8 fs-6">
We may update this Privacy Policy from time to time to reflect changes in our practices or legal requirements. We will notify you of any significant changes by posting the revised policy on our website.
</p><p class="col-md-8 fs-6">
<strong>
Contact Us</strong>
</p><p class="col-md-8 fs-6">
If you have any questions or concerns about this Privacy Policy or how we handle your personal information, please contact us at:
</p><p class="col-md-8 fs-6">
Clive Lancaster
</p><p class="col-md-8 fs-6">
Effective Date: 01/11/2024
</p>
</<div>
</div>
</div> </div>
</div>
</main>
-131
View File
@@ -1,131 +0,0 @@
@{
ViewData["Title"] = "Services";
Layout = "~/Views/Shared/_Layout.cshtml";
}
<div class="container py-4 album">
<header class="pb-3 mb-4 border-bottom">
<span class="fs-4"><i class="bi bi-box-fill"></i> Services</span>
</header>
<div class="container px-4 py-5 bg-body-tertiary rounded-3 border" id="hanging-icons">
<h1 class="display-6 fw-bold">Services</h1>
<div class="row g-4 py-5 row-cols-1 row-cols-lg-3">
<div class="col d-flex align-items-start">
<div class="icon-square text-body-emphasis bg-body-secondary d-inline-flex align-items-center justify-content-center fs-4 flex-shrink-0 me-3">
<i class="bi bi-bar-chart-steps" width="1em" height="1em"></i>
</div>
<div>
<h3 class="fs-2 text-body-emphasis">Product Management</h3>
<p>
As a product management professional, I provide end-to-end services to lead and drive the development and lifecycle of digital products. I collaborate with stakeholders to define product vision and strategy, ensuring alignment with business goals. By leveraging data-driven decision-making and agile methodologies, I prioritize features, manage roadmaps, and coordinate cross-functional teams to deliver high-quality products that meet customer needs and market demands.
</p>
<a href="/Contact" class="btn btn-primary">
<i class="bi bi-chat-dots-fill"></i> Enquire Today!
</a>
</div>
</div>
<div class="col d-flex align-items-start">
<div class="icon-square text-body-emphasis bg-body-secondary d-inline-flex align-items-center justify-content-center fs-4 flex-shrink-0 me-3">
<i class="bi bi-kanban" width="1em" height="1em"></i>
</div>
<div>
<h3 class="fs-2 text-body-emphasis">Product Owner</h3>
<p>As a Product Owner, I serve as the key liaison between business stakeholders and development teams, ensuring the successful delivery of features and solutions. I define and prioritize the product backlog, clarify requirements, and guide teams through iterative development cycles. My approach ensures that every feature delivers maximum value to the business and end users, while maintaining alignment with the overall product vision and objectives.</p>
<a href="/Contact" class="btn btn-primary">
<i class="bi bi-chat-dots-fill"></i> Enquire Today!
</a>
</div>
</div>
<div class="col d-flex align-items-start">
<div class="icon-square text-body-emphasis bg-body-secondary d-inline-flex align-items-center justify-content-center fs-4 flex-shrink-0 me-3">
<i class="bi bi-clipboard2-data-fill" width="1em" height="1em"></i>
</div>
<div>
<h3 class="fs-2 text-body-emphasis">Business Analysis</h3>
<p>I offer comprehensive business analysis services to identify and define business requirements, assess processes, and develop strategic solutions to improve efficiency. Through stakeholder engagement, data analysis, and workflow mapping, I provide actionable insights that drive informed decision-making and support business transformation. My focus is on bridging the gap between business needs and technical capabilities, ensuring successful project outcomes.</p>
<a href="/Contact" class="btn btn-primary">
<i class="bi bi-chat-dots-fill"></i> Enquire Today!
</a>
</div>
</div>
</div>
<div class="row g-4 py-5 row-cols-1 row-cols-lg-3">
<div class="col d-flex align-items-start">
<div class="icon-square text-body-emphasis bg-body-secondary d-inline-flex align-items-center justify-content-center fs-4 flex-shrink-0 me-3">
<i class="bi bi-code-slash" width="1em" height="1em"></i>
</div>
<div>
<h3 class="fs-2 text-body-emphasis">Software Development</h3>
<p>As a software development professional, I provide custom software solutions tailored to meet specific business requirements. Using modern programming languages and development frameworks, I design, build, and deploy applications that are scalable, secure, and efficient. I follow best practices in coding, testing, and version control to ensure robust solutions that align with both user needs and technical specifications.</p>
<a href="/Contact" class="btn btn-primary">
<i class="bi bi-chat-dots-fill"></i> Enquire Today!
</a>
</div>
</div>
<div class="col d-flex align-items-start">
<div class="icon-square text-body-emphasis bg-body-secondary d-inline-flex align-items-center justify-content-center fs-4 flex-shrink-0 me-3">
<i class="bi bi-diagram-3-fill" width="1em" height="1em"></i>
</div>
<div>
<h3 class="fs-2 text-body-emphasis">Systems Analysis</h3>
<p>In systems analysis, I evaluate and optimize the technical infrastructure of organizations by identifying system requirements and designing solutions that improve functionality, scalability, and security. Through comprehensive assessments, I ensure that all components of an IT system work harmoniously, enhancing performance and aligning with business goals. I help design and implement system architectures that support long-term growth and operational efficiency.</p>
<a href="/Contact" class="btn btn-primary">
<i class="bi bi-chat-dots-fill"></i> Enquire Today!
</a>
</div>
</div>
<div class="col d-flex align-items-start">
<div class="icon-square text-body-emphasis bg-body-secondary d-inline-flex align-items-center justify-content-center fs-4 flex-shrink-0 me-3">
<i class="bi bi-rulers" width="1em" height="1em"></i>
</div>
<div>
<h3 class="fs-2 text-body-emphasis">Computer-aided design (CAD)</h3>
<p>I provide advanced computer-aided design (CAD) services to create precise 2D and 3D models for various industries, including manufacturing, architecture, and engineering. Using industry-standard CAD software, I translate concepts and ideas into detailed digital representations that guide production processes, ensuring accuracy and efficiency. My CAD services help streamline design workflows and reduce errors, enabling faster time-to-market for products.</p>
<a href="/Contact" class="btn btn-primary">
<i class="bi bi-chat-dots-fill"></i> Enquire Today!
</a>
</div>
</div>
</div>
<div class="row g-4 py-5 row-cols-1 row-cols-lg-3">
<div class="col d-flex align-items-start">
<div class="icon-square text-body-emphasis bg-body-secondary d-inline-flex align-items-center justify-content-center fs-4 flex-shrink-0 me-3">
<i class="bi bi-camera-fill" width="1em" height="1em"></i>
</div>
<div>
<h3 class="fs-2 text-body-emphasis">Photography</h3>
<p>As a professional photographer, I offer high-quality imaging services for personal, corporate, and creative needs. I specialize in capturing visually compelling photographs for events, portraits, product shoots, and more. With a keen eye for detail, I ensure that each shot aligns with client expectations and enhances brand identity or personal expression. I provide end-to-end services, including editing and post-production, to deliver polished, high-resolution images.</p>
<a href="/Contact" class="btn btn-primary">
<i class="bi bi-chat-dots-fill"></i> Enquire Today!
</a>
</div>
</div>
<div class="col d-flex align-items-start">
<div class="icon-square text-body-emphasis bg-body-secondary d-inline-flex align-items-center justify-content-center fs-4 flex-shrink-0 me-3">
<i class="bi bi-camera-reels-fill" width="1em" height="1em"></i>
</div>
<div>
<h3 class="fs-2 text-body-emphasis">Videography</h3>
<p>I offer videography services to capture dynamic and engaging video content for a variety of purposes, including marketing, events, training, and entertainment. From pre-production planning to filming and post-production editing, I deliver professional-grade video content that resonates with audiences. My work ensures that stories are told in a visually captivating way, with a focus on high-quality production, sound, and editing to create compelling narratives.</p>
<a href="/Contact" class="btn btn-primary">
<i class="bi bi-chat-dots-fill"></i> Enquire Today!
</a>
</div>
</div>
<div class="col d-flex align-items-start">
<div class="icon-square text-body-emphasis bg-body-secondary d-inline-flex align-items-center justify-content-center fs-4 flex-shrink-0 me-3">
<i class="bi bi-hdd-network-fill" width="1em" height="1em"></i>
</div>
<div>
<h3 class="fs-2 text-body-emphasis">Networking</h3>
<p>With expertise in networking, I design and implement secure, efficient, and scalable networks for businesses and individuals. I provide services that range from network setup and optimization to troubleshooting and security enhancements. By ensuring the reliable flow of data and connectivity across systems, I help organizations maintain seamless communication and enhance productivity while safeguarding against cyber threats. My networking solutions are tailored to meet the specific needs of each client.</p>
<a href="/Contact" class="btn btn-primary">
<i class="bi bi-chat-dots-fill"></i> Enquire Today!
</a>
</div>
</div>
</div>
</div>
</div>
</div>
+85 -83
View File
@@ -1,90 +1,92 @@
@{ @{
ViewData["Title"] = "Terms"; ViewData["Title"] = "Terms & Conditions";
Layout = "~/Views/Shared/_Layout.cshtml"; Layout = "~/Views/Shared/_PageLayout.cshtml";
} }
<div class="container py-4"> <partial name="_PartialPageNavigation" />
<header class="pb-3 mb-4 border-bottom">
<span class="fs-4">@ViewData["Title"]</span> <header class="pt-32 pb-12 bg-slate-50 text-center px-6">
</header> <h1 class="text-4xl md:text-5xl font-bold text-slate-900 mb-4">@ViewData["Title"]</h1>
<div class="p-5 mb-4 bg-body-tertiary rounded-3 border"> <p class="text-slate-500 text-xs uppercase tracking-widest font-bold">Last Updated: 01/01/2026</p>
<div class="container-fluid py-2"> </header>
<h1 class="display-6 fw-bold">Terms & Conditions</h1>
<p class="col-md-8 fs-6"> <main class="flex-grow max-w-7xl mx-auto px-6 py-12 w-full">
Last Updated: 01/11/2024 <div class="max-w-6xl mx-auto">
<div class="bg-white p-8 md:p-12 rounded-2xl shadow-sm border border-slate-100">
<div class="space-y-8">
<section>
<h2 class="text-xl font-bold text-slate-900 mb-3">1. Acceptance of Terms</h2>
<p class="text-slate-600 leading-relaxed">
By accessing and using clivelancaster.com (the "Site"), you agree to be bound by these Terms and Conditions (the "Terms"). If you do not agree to these Terms, please do not use the Site. These Terms apply to all visitors, users, and others who access or use the Site.
</p>
</section>
<section>
<h2 class="text-xl font-bold text-slate-900 mb-3">2. Changes to Terms</h2>
<p class="text-slate-600 leading-relaxed">
We reserve the right to modify these Terms at any time. Any changes will be effective immediately upon posting to the Site. It is your responsibility to review the Terms regularly. Your continued use of the Site after the posting of changes constitutes your acceptance of the revised Terms.
</p>
</section>
<section>
<h2 class="text-xl font-bold text-slate-900 mb-3">3. Use of the Site</h2>
<p class="text-slate-600 leading-relaxed">
You agree to use the Site for lawful purposes only and in a way that does not infringe on the rights of, restrict, or inhibit anyone else's use of the Site. Prohibited behavior includes harassing or causing distress or inconvenience to any other user, transmitting obscene or offensive content, or disrupting the normal flow of dialogue within the Site.
</p>
</section>
<section>
<h2 class="text-xl font-bold text-slate-900 mb-3">4. Intellectual Property</h2>
<p class="text-slate-600 leading-relaxed">
All content on the Site, including but not limited to text, graphics, logos, icons, images, and software, is the property of clivelancaster.com or its content suppliers and is protected by copyright, trademark, and other intellectual property laws. You may not use, copy, reproduce, distribute, or exploit any content from the Site without express written permission from clivelancaster.com.
</p>
</section>
<section>
<h2 class="text-xl font-bold text-slate-900 mb-3">5. User-Generated Content</h2>
<p class="text-slate-600 leading-relaxed">
You may have the opportunity to post comments, reviews, or other content to the Site. By submitting such content, you grant clivelancaster.com a non-exclusive, royalty-free, perpetual, and worldwide license to use, reproduce, modify, publish, and display such content in any media.
</p>
</section>
<section>
<h2 class="text-xl font-bold text-slate-900 mb-3">6. Third-Party Links</h2>
<p class="text-slate-600 leading-relaxed">
The Site may contain links to third-party websites or services that are not owned or controlled by clivelancaster.com. We are not responsible for the content, privacy policies, or practices of any third-party websites.
</p>
</section>
<section>
<h2 class="text-xl font-bold text-slate-900 mb-3">7. Disclaimers</h2>
<p class="text-slate-600 leading-relaxed">
The content on the Site is provided "as is" without warranties of any kind, either express or implied. clivelancaster.com does not guarantee the accuracy, completeness, or reliability of any content or material on the Site.
</p>
</section>
<section>
<h2 class="text-xl font-bold text-slate-900 mb-3">8. Limitation of Liability</h2>
<p class="text-slate-600 leading-relaxed">
To the fullest extent permitted by law, clivelancaster.com shall not be liable for any direct, indirect, incidental, special, or consequential damages resulting from the use or inability to use the Site.
</p>
</section>
<section>
<h2 class="text-xl font-bold text-slate-900 mb-3">11. Governing Law</h2>
<p class="text-slate-600 leading-relaxed">
These Terms are governed by and construed in accordance with the laws of Australia. Any disputes arising from or relating to the use of the Site shall be subject to the exclusive jurisdiction of the courts in Australia.
</p>
</section>
<div class="mt-10 pt-10 border-t border-slate-100">
<h2 class="text-xl font-bold text-slate-900 mb-2">12. Contact Information</h2>
<p class="text-slate-600">
If you have any questions about these Terms, please contact us.
</p>
</div>
</div>
</p>
<p class="col-md-8 fs-6">
<strong> 1. Acceptance of Terms</strong><br />
By accessing and using clivelancaster.com (the "Site"), you agree to be bound by these Terms and Conditions (the "Terms"). If you do not agree to these Terms, please do not use the Site. These Terms apply to all visitors, users, and others who access or use the Site.
</p>
<p class="col-md-8 fs-6">
<strong>
2. Changes to Terms
</strong><br />
We reserve the right to modify these Terms at any time. Any changes will be effective immediately upon posting to the Site. It is your responsibility to review the Terms regularly. Your continued use of the Site after the posting of changes constitutes your acceptance of the revised Terms.
</p>
<p class="col-md-8 fs-6">
<strong>
3. Use of the Site
</strong><br />
You agree to use the Site for lawful purposes only and in a way that does not infringe on the rights of, restrict, or inhibit anyone else's use of the Site. Prohibited behavior includes harassing or causing distress or inconvenience to any other user, transmitting obscene or offensive content, or disrupting the normal flow of dialogue within the Site.
</p>
<p class="col-md-8 fs-6">
<strong>
4. Intellectual Property
</strong><br />
All content on the Site, including but not limited to text, graphics, logos, icons, images, and software, is the property of clivelancaster.com or its content suppliers and is protected by copyright, trademark, and other intellectual property laws. You may not use, copy, reproduce, distribute, or exploit any content from the Site without express written permission from clivelancaster.com.
</p>
<p class="col-md-8 fs-6">
<strong>
5. User-Generated Content
</strong><br />
You may have the opportunity to post comments, reviews, or other content to the Site. By submitting such content, you grant clivelancaster.com a non-exclusive, royalty-free, perpetual, and worldwide license to use, reproduce, modify, publish, and display such content in any media. You are solely responsible for the content you post, and you agree not to post content that is unlawful, defamatory, obscene, or infringing on intellectual property rights.
</p>
<p class="col-md-8 fs-6">
<strong>
6. Third-Party Links
</strong><br />
The Site may contain links to third-party websites or services that are not owned or controlled by clivelancaster.com. We are not responsible for the content, privacy policies, or practices of any third-party websites. You acknowledge and agree that [Website Name] is not liable for any damage or loss caused by or in connection with the use of any such third-party websites or services.
</p>
<p class="col-md-8 fs-6">
<strong>
7. Disclaimers
</strong><br />
The content on the Site is provided "as is" without warranties of any kind, either express or implied. clivelancaster.com does not guarantee the accuracy, completeness, or reliability of any content or material on the Site. Use of the Site and reliance on any information obtained from the Site is at your own risk.
</p>
<p class="col-md-8 fs-6">
<strong>
8. Limitation of Liability
</strong><br />
To the fullest extent permitted by law, clivelancaster.com shall not be liable for any direct, indirect, incidental, special, or consequential damages resulting from the use or inability to use the Site, including but not limited to damages for loss of profits, goodwill, data, or other intangible losses.
</p>
<p class="col-md-8 fs-6">
<strong>
9. Indemnification
</strong><br />
You agree to indemnify, defend, and hold harmless clivelancaster.com and its officers, directors, employees, and agents from any claims, liabilities, damages, losses, or expenses, including legal fees, arising out of your use of the Site or your violation of these Terms.
</p>
<p class="col-md-8 fs-6">
<strong>
10. Termination
</strong><br />
We reserve the right to terminate or suspend your access to the Site at any time, with or without notice, for any violation of these Terms or for any other reason.
</p>
<p class="col-md-8 fs-6">
<strong>
11. Governing Law
</strong><br />
These Terms are governed by and construed in accordance with the laws of Australia. Any disputes arising from or relating to the use of the Site shall be subject to the exclusive jurisdiction of the courts in Australia.
</p>
<p class="col-md-8 fs-6">
<strong>
12. Contact Information
</strong><br />
If you have any questions about these Terms, please contact us.
</p>
</div> </div>
</div> </div>
</div> </main>
+33 -23
View File
@@ -1,29 +1,39 @@
@{ @{
ViewData["Title"] = "Thank You"; ViewData["Title"] = "Thank You";
Layout = "~/Views/Shared/_Layout.cshtml"; Layout = "~/Views/Shared/_PageLayout.cshtml";
} }
<div class="container py-4"> <partial name="_PartialPageNavigation" />
<header class="pb-3 mb-4 border-bottom">
<span class="fs-4">@ViewData["Title"]</span> <header class="pt-32 pb-12 bg-slate-50 text-center px-6">
</header> <h1 class="text-4xl md:text-5xl font-bold text-slate-900 mb-4">@ViewData["Title"]</h1>
<div class="p-5 mb-4 bg-body-tertiary rounded-3 border"> </header>
<div class="container-fluid py-2">
<h1 class="display-6 fw-bold">Thank You for Subscribing!</h1> <main class="flex-grow max-w-7xl mx-auto px-6 py-12 w-full">
<p class="col-md-8 fs-6"> <div class="max-w-6xl mx-auto">
Were thrilled to have you as part of our community. <div class="bg-white p-8 md:p-12 rounded-2xl shadow-sm border border-slate-100">
</p><p class="col-md-8 fs-6">
We look forward to keeping you up to date with the latest news, industry insights, and exclusive updates to help you stay ahead in Product Management and Software Developent. <div class="prose prose-slate max-w-none">
</p><p class="col-md-8 fs-6"> <h2 class="text-xl font-bold text-slate-900 mb-4">Youre in. Lets build something great.</h2>
If you ever have any questions or feedback, feel free to reach out were here to help! <p class="text-slate-600 leading-relaxed mb-6">
</p><p class="col-md-8 fs-6"> Welcome to the inner circle. Product management moves fast, but you just got a head start.
Thanks again for subscribing, and stay tuned for exciting content coming your way soon. </p>
</p> <p class="text-slate-600 leading-relaxed mb-6">
<p class="col-md-8 fs-6"> We look forward to keeping you up to date with the latest news, industry insights, and exclusive updates to help you stay ahead in Product Management and Software Developent.
<a href="/Home/Index" class="btn btn-primary"> </p>
Explore! <p class="text-slate-600 leading-relaxed mb-6">
</a> If you ever have any questions or feedback, feel free to reach out were here to help!
</p> </p>
<p class="text-slate-600 leading-relaxed mb-6">
Thanks again for subscribing, and stay tuned for exciting content coming your way soon.
</p>
<p class="text-slate-600 leading-relaxed mb-6">
<a href="/Home/Index" class="px-8 py-4 bg-slate-900 text-white font-semibold rounded-lg hover:bg-slate-800 transition text-center shadow-xl">
Explore!
</a>
</p>
</div>
</div> </div>
</div> </div>
</div> </main>
+18 -57
View File
@@ -2,73 +2,34 @@
<html lang="en"> <html lang="en">
<head> <head>
<meta charset="utf-8" /> <meta charset="utf-8" />
<meta name="description" content="Clive Lancaster - Digital Product Manager"> <meta name="description" content="Accomplished Digital Product Manager with 12+ years of experience in health-tech, prop-tech, HR, and e-commerce. Reducing risk and increasing efficiency.">
<meta name="keywords" content="product, manager, owner, health, strategy, customer, commercial, management, agile, digital, clive, lancaster"> <meta name="keywords" content="product, manager, owner, health, strategy, customer, commercial, management, agile, digital, clive, lancaster">
<meta name="author" content="Clive Lancaster"> <meta name="author" content="Clive Lancaster">
<meta name="viewport" content="width=device-width, initial-scale=1.0" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>@ViewData["Title"] - Clive Lancaster - Digital Product Manager</title> <title>@ViewData["Title"] - Clive Lancaster - Digital Product Manager</title>
<link rel="stylesheet" href="~/lib/bootstrap/css/bootstrap.min.css" />
<link href="~/lib/bootstrap-icons/font/bootstrap-icons.min.css" rel="stylesheet" /> <link rel="stylesheet" href="~/lib/tailwind/tailwindcss.css" />
<link rel="stylesheet" href="~/css/site.css" asp-append-version="true" /> <link rel="stylesheet" href="~/css/main.css" asp-append-version="true" />
<link rel="stylesheet" href="~/css/carousel.css" asp-append-version="true" /> <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.0.0/css/all.min.css">
<link rel="stylesheet" href="~/clivelancaster.styles.css" asp-append-version="true" /> <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;600;700&display=swap">
<script defer src="https://analytics.rokoh.com/script.js" data-website-id="7c70ca5f-c4e8-46ef-9f49-8daae609f705"></script> <script defer src="https://analytics.rokoh.com/script.js" data-website-id="7c70ca5f-c4e8-46ef-9f49-8daae609f705"></script>
<link rel="icon" type="image/x-icon" href='@Url.Content("~/favicon.ico")'> <link rel="icon" type="image/x-icon" href='@Url.Content("~/favicon.ico")'>
</head> </head>
<body> <body class="text-slate-700 bg-white flex flex-col min-h-screen">
<header>
<nav class="navbar navbar-expand-sm navbar-toggleable-sm navbar-light bg-white border-bottom box-shadow fixed-top mb-3">
<div class="container">
<a class="navbar-brand" asp-area="" asp-controller="Home" asp-action="Index">CLIVE LANCASTER</a>
<button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target=".navbar-collapse" aria-controls="navbarSupportedContent"
aria-expanded="false" aria-label="Toggle navigation">
<span class="navbar-toggler-icon"></span>
</button>
<div class="navbar-collapse collapse d-sm-inline-flex justify-content-between">
<ul class="navbar-nav flex-grow-1">
<li class="nav-item">
<a class="nav-link" asp-area="" asp-controller="Home" asp-action="Index"><i class="bi bi-house-fill"></i> Home</a>
</li>
<li class="nav-item">
<a class="nav-link" asp-area="" asp-controller="Home" asp-action="About"><i class="bi bi-file-person-fill"></i> About</a>
</li>
<li class="nav-item">
<a class="nav-link" asp-area="" asp-controller="Home" asp-action="Services"><i class="bi bi-box-fill"></i> Services</a>
</li>
<li class="nav-item">
<a class="nav-link" asp-area="" asp-controller="Home" asp-action="Clients"><i class="bi bi-people-fill"></i> Clients</a>
</li>
<li class="nav-item">
<a class="nav-link" href="https://blog.clivelancaster.com" style="color:#595959;" onmouseover="this.style.color='#333333'" onmouseout="this.style.color='#595959'"><i class="bi bi-substack"></i> Blog</a>
</li>
<li class="nav-item">
<a class="nav-link" asp-area="" asp-controller="Contact" asp-action="Index"><i class="bi bi-envelope-fill"></i> Contact</a>
</li>
</ul>
</div>
</div>
</nav>
</header>
<main role="main" class="pb-3"> @RenderBody()
@RenderBody()
</main>
<div class="container"> <footer class="bg-slate-900 text-slate-400 py-16">
<footer class="py-2"> <div class="max-w-7xl mx-auto px-6 grid md:grid-cols-2 lg:grid-cols-4 gap-12">
<div class="d-flex flex-column flex-sm-row justify-content-between py-4 my-4 border-top"> <partial name="_PartialFooter" />
<p>Clive Lancaster &copy; @DateTime.Now.Year - <a style="color:#212529bf;" asp-area="" asp-controller="Home" asp-action="Privacy">Privacy Policy</a> | <a style="color:#212529bf;" asp-area="" asp-controller="Home" asp-action="Terms">Terms</a></p> <div>
<ul class="list-unstyled d-flex"> <partial name="_PartialFooterForm" />
<li class="ms-3"><a class="link-body-emphasis" href="https://www.linkedin.com/in/clivelancaster/"><i class="bi bi-linkedin"></i></a></li>
<li class="ms-3"><a class="link-body-emphasis" href="https://x.com/clivelancaster"><i class="bi bi-twitter-x"></i></a></li>
<li class="ms-3"><a class="link-body-emphasis" href="https://www.youtube.com/@@CliveLancaster/"><i class="bi bi-youtube"></i></a></li>
<li class="ms-3"><a class="link-body-emphasis" href="https://www.instagram.com/shotreact/"><i class="bi bi-instagram"></i></a></li>
</ul>
</div> </div>
</footer> </div>
</div> <partial name="_PartialLegal" />
<script src="~/lib/jquery/dist/jquery.min.js"></script> </footer>
<script src="~/lib/bootstrap/dist/js/bootstrap.bundle.min.js"></script>
<script src="~/js/site.js" asp-append-version="true"></script> <script src="~/js/site.js" asp-append-version="true"></script>
@await RenderSectionAsync("Scripts", required: false) @await RenderSectionAsync("Scripts", required: false)
</body> </body>
+33
View File
@@ -0,0 +1,33 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<meta name="description" content="Accomplished Digital Product Manager with 12+ years of experience in health-tech, prop-tech, HR, and e-commerce. Reducing risk and increasing efficiency.">
<meta name="keywords" content="product, manager, owner, health, strategy, customer, commercial, management, agile, digital, clive, lancaster">
<meta name="author" content="Clive Lancaster">
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>@ViewData["Title"] - Clive Lancaster - Digital Product Manager</title>
<link rel="stylesheet" href="~/lib/tailwind/tailwindcss.css" />
<link rel="stylesheet" href="~/css/main.css" asp-append-version="true" />
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.0.0/css/all.min.css">
<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;600;700&display=swap">
<script defer src="https://analytics.rokoh.com/script.js" data-website-id="7c70ca5f-c4e8-46ef-9f49-8daae609f705"></script>
<link rel="icon" type="image/x-icon" href='@Url.Content("~/favicon.ico")'>
</head>
<body class="text-slate-700 bg-slate-50 flex flex-col min-h-screen">
@RenderBody()
<footer class="bg-slate-900 text-slate-400 py-16">
<div class="max-w-7xl mx-auto px-6 grid md:grid-cols-3 lg:grid-cols-3 gap-12">
<partial name="_PartialFooter" />
</div>
<partial name="_PartialLegal" />
</footer>
<script src="~/js/site.js" asp-append-version="true"></script>
@await RenderSectionAsync("Scripts", required: false)
</body>
</html>
+52
View File
@@ -0,0 +1,52 @@
/* Please see documentation at https://learn.microsoft.com/aspnet/core/client-side/bundling-and-minification
for details on configuring this project to bundle and minify static web assets. */
.navbar > .container {
flex-direction: row-reverse;
}
a.navbar-brand {
white-space: normal;
text-align: center;
word-break: break-all;
}
a {
color: #808080;
}
.btn-primary {
color: #fff;
background-color: #1b6ec2;
border-color: #1861ac;
}
.nav-pills .nav-link.active, .nav-pills .show > .nav-link {
color: #fff;
background-color: #1b6ec2;
border-color: #1861ac;
}
.border-top {
border-top: 1px solid #e5e5e5;
}
.border-bottom {
border-bottom: 1px solid #e5e5e5;
}
/*.box-shadow {
box-shadow: 0 .25rem .75rem rgba(0, 0, 0, .05);
}*/
button.accept-policy {
font-size: 1rem;
line-height: inherit;
}
.footer {
position: absolute;
bottom: 0;
width: 100%;
white-space: nowrap;
line-height: 60px;
}
+28
View File
@@ -0,0 +1,28 @@
<div>
<h4 class="text-white text-xl font-bold mb-6">CLIVE LANCASTER</h4>
<p class="text-sm mb-6">Digital Product Management excellence backed by 12+ years of industry experience across Europe and Asia Pacific.</p>
<div class="flex space-x-4">
<a href="https://www.linkedin.com/in/clivelancaster/" class="text-white hover:text-blue-400 transition"><i class="fab fa-linkedin fa-lg"></i></a>
<a href="https://t.me/clivelancaster" class="text-white hover:text-blue-400 transition"><i class="fab fa-telegram fa-lg"></i></a>
</div>
</div>
<div>
<h4 class="text-white font-semibold mb-6">Overview</h4>
<ul class="space-y-2 text-sm">
<li><a href="/#about" class="hover:text-white transition">About</a></li>
<li><a href="/#services" class="hover:text-white transition">Services</a></li>
<li><a href="/#experience" class="hover:text-white transition">Clients</a></li>
<li><a href="/#experience" class="hover:text-white transition">Case Studies</a></li>
<li><a href="https://blog.clivelancaster.com" class="hover:text-white transition">Blog</a></li>
</ul>
</div>
<div>
<h4 class="text-white font-semibold mb-6">Contact</h4>
<ul class="space-y-2 text-sm">
<li><i class="fas fa-phone w-6"></i> <span id="contact-phone" class="hidden"></span></li>
<li><i class="fas fa-map-marker-alt w-6"></i> Sydney, Australia</li>
<li><i class="fas fa-globe w-6"></i> Remote / Global</li>
</ul>
</div>
+10
View File
@@ -0,0 +1,10 @@
@model clivelancaster.Models.SubscribeFormModel
<h4 class="text-white font-semibold mb-4">Stay Connected</h4>
<p class="text-xs mb-4">Subscribe for insights on product strategy and tech trends.</p>
<form asp-action="Index" class="flex flex-col gap-2" method="post">
<label asp-for="email" for="email" class="visually-hidden">Email address</label>
<input asp-for="email" id="email" type="text" placeholder="Email address" autocomplete="on" class="bg-slate-800 text-white border border-slate-700 rounded px-4 py-2 text-sm focus:outline-none focus:border-blue-500 transition">
<span asp-validation-for="email" class="text-danger"></span>
<button class="bg-blue-600 text-white font-semibold py-2 rounded hover:bg-blue-700 transition text-sm" type="submit">Subscribe</button>
</form>
+7
View File
@@ -0,0 +1,7 @@
<div class="max-w-7xl mx-auto px-6 mt-16 pt-8 border-t border-slate-800 flex flex-col md:flex-row justify-between items-center text-xs">
<p>&copy; @DateTime.Now.Year Clive Lancaster. All rights reserved.</p>
<div class="flex space-x-6 mt-4 md:mt-0">
<a href="/Home/Privacy" class="hover:text-white">Privacy Policy</a>
<a href="/Home/Terms" class="hover:text-white">Terms of Service</a>
</div>
</div>
@@ -0,0 +1,25 @@
<nav class="fixed w-full z-50 bg-white/95 backdrop-blur-md border-b border-slate-100 transition-all duration-300" id="navbar">
<div class="max-w-7xl mx-auto px-6 h-20 flex items-center justify-between">
<a href="/Home" class="text-2xl font-bold text-slate-900 tracking-tight hover:opacity-80 transition">CLIVE <span class="text-blue-600">LANCASTER</span></a>
<div class="hidden md:flex space-x-8 items-center">
<a href="/Home/#about" class="text-slate-600 hover:text-blue-600 font-medium transition">About</a>
<a href="/Home/#services" class="text-slate-600 hover:text-blue-600 font-medium transition">Services</a>
<a href="/Home/#experience" class="text-slate-600 hover:text-blue-600 font-medium transition">Experience</a>
<a href="https://blog.clivelancaster.com" class="text-slate-600 hover:text-blue-600 font-medium transition">Blog</a>
</div>
<button id="mobile-menu-btn" class="md:hidden text-slate-600 text-2xl focus:outline-none p-2" aria-label="Toggle Menu">
<i class="fas fa-bars"></i>
</button>
</div>
<div id="mobile-menu" class="hidden md:hidden absolute top-20 left-0 w-full bg-white border-b border-slate-100 shadow-xl">
<div class="flex flex-col px-6 py-4 space-y-4">
<a href="/Home/#about" class="mobile-link text-slate-600 hover:text-blue-600 font-medium text-lg block py-2 border-b border-slate-50">About</a>
<a href="/Home/#services" class="mobile-link text-slate-600 hover:text-blue-600 font-medium text-lg block py-2 border-b border-slate-50">Services</a>
<a href="/Home/#experience" class="mobile-link text-slate-600 hover:text-blue-600 font-medium text-lg block py-2 border-b border-slate-50">Experience</a>
<a href="https://blog.clivelancaster.com" class="mobile-link text-slate-600 hover:text-blue-600 font-medium text-lg block py-2 border-b border-slate-50">Blog</a>
</div>
</div>
</nav>
+1 -1
View File
@@ -12,7 +12,7 @@
"Password": "ilzk zwwq odrt ndjm" "Password": "ilzk zwwq odrt ndjm"
}, },
"ConnectionStrings": { "ConnectionStrings": {
"DefaultConnection": "Host=10.1.1.20;Database=clive;Username=clive;Password=Money247!" "DefaultConnection": "Host=10.10.0.20;Database=clive;Username=clive;Password=Money247!"
}, },
"AllowedHosts": "*" "AllowedHosts": "*"
} }
+7 -7
View File
@@ -17,17 +17,17 @@
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<PackageReference Include="MailKit" Version="4.8.0" /> <PackageReference Include="MailKit" Version="4.17.0" />
<PackageReference Include="Microsoft.AspNetCore.Razor.Language" Version="6.0.35" /> <PackageReference Include="Microsoft.AspNetCore.Razor.Language" Version="6.0.36" />
<PackageReference Include="Microsoft.VisualStudio.Azure.Containers.Tools.Targets" Version="1.21.0" /> <PackageReference Include="Microsoft.VisualStudio.Azure.Containers.Tools.Targets" Version="1.23.0" />
<PackageReference Include="Microsoft.VisualStudio.Web.CodeGeneration.Design" Version="8.0.6" /> <PackageReference Include="Npgsql.EntityFrameworkCore.PostgreSQL" Version="9.0.4" />
<PackageReference Include="Npgsql.EntityFrameworkCore.PostgreSQL" Version="8.0.10" /> <PackageReference Include="System.Text.Json" Version="10.0.10" />
<PackageReference Include="System.Text.Json" Version="8.0.5" /> <PackageReference Include="System.Windows.Extensions" Version="10.0.10" />
<PackageReference Include="System.Windows.Extensions" Version="8.0.0" />
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<Folder Include="wwwroot\img\" /> <Folder Include="wwwroot\img\" />
<Folder Include="wwwroot\lib\tailwind\" />
</ItemGroup> </ItemGroup>
</Project> </Project>
+1061
View File
File diff suppressed because it is too large Load Diff
+10
View File
@@ -0,0 +1,10 @@
{
"dependencies": {
"@tailwindcss/cli": "^4.1.18",
"tailwindcss": "^4.1.18"
},
"scripts": {
"watch": "npx @tailwindcss/cli -i ./wwwroot/css/site.css -o ./wwwroot/lib/tailwind/tailwindcss.css --watch",
"build": "npx @tailwindcss/cli -i ./wwwroot/css/site.css -o ./wwwroot/lib/tailwind/tailwindcss.css --minify"
}
}
+35
View File
@@ -0,0 +1,35 @@
body {
font-family: 'Inter', sans-serif;
}
.gradient-text {
background: linear-gradient(90deg, #1e3a8a 0%, #2563eb 100%);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
}
.hero-bg {
background: linear-gradient(to bottom right, #f8fafc, #e2e8f0);
}
html {
scroll-behavior: smooth;
}
.service-card {
transition: all 0.3s ease;
}
.service-card:hover {
transform: translateY(-5px);
}
.incognito-field {
opacity: 0;
position: absolute;
top: 0;
left: 0;
height: 0;
width: 0;
z-index: -1;
}
+1 -170
View File
@@ -1,170 +1 @@
:root { @import "tailwindcss";
/* Dark theme */
--dark-background: #eaeff2;
--dark-foregeound: #808080;
/* Light theme */
--light-background: #f4f2ee;
--light-foregeound: #808080;
/* Defaults */
--current-background: var(--light-background);
--current-foreground: var(--light-foregeound);
}
.btn-primary {
background-color: #1667c0;
border-color: #1667c0;
}
.btn-primary:hover {
background-color: #074280;
border-color: #074280;
}
.incognito-field {
opacity: 0;
position: absolute;
top: 0;
left: 0;
height: 0;
width: 0;
z-index: -1;
}
@media (prefers-color-scheme: light) {
: root {
--current-background: var(--dark-background);
--current-foreground: var(--dark-foregeound);
}
}
body {
background-color: var(--current-background);
color: var(--current-foreground);
}
html {
font-size: 14px;
}
.bg-white {
background-color: #ffffff;
}
.bg-grey {
background-color: #eaeff2;
}
@media (min-width: 768px) {
html {
font-size: 16px;
}
.carousel-caption p {
padding-left: 140px;
}
.bd-placeholder-img-lg {
font-size: 3.5rem;
}
}
.btn:focus, .btn:active:focus, .btn-link.nav-link:focus, .form-control:focus, .form-check-input:focus {
box-shadow: 0 0 0 0.1rem white, 0 0 0 0.25rem #fff;
}
html {
position: relative;
min-height: 100%;
}
body {
margin-bottom: 60px;
}
.carousel-inner {
width: 100%;
height: 100%;
background-position: left;
background-size: 100% 100%;
background-repeat: no-repeat;
background-image: url('../img/bg-01.png');
}
.carousel-inner h1 {
color:#5a5a5a;
}
.carousel-inner p {
color: #5a5a5a;
}
.bd-placeholder-img {
font-size: 1.125rem;
text-anchor: middle;
-webkit-user-select: none;
-moz-user-select: none;
user-select: none;
}
.bd-about-img {
font-size: 1.125rem;
text-anchor: middle;
-webkit-user-select: none;
-moz-user-select: none;
user-select: none;
background-image: url('../img/member-1.jpg');
background-size: 150px;
}
.bd-clients-img {
font-size: 1.125rem;
text-anchor: middle;
-webkit-user-select: none;
-moz-user-select: none;
user-select: none;
background-image: url('../img/member-2.jpg');
background-size: 150px;
}
.bd-services-img {
font-size: 1.125rem;
text-anchor: middle;
-webkit-user-select: none;
-moz-user-select: none;
user-select: none;
background-image: url('../img/member-3.jpg');
background-size: 150px;
}
.feature-icon {
width: 4rem;
height: 4rem;
border-radius: .75rem;
}
.icon-square {
width: 3rem;
height: 3rem;
border-radius: .75rem;
}
.text-shadow-1 {
text-shadow: 0 .125rem .25rem rgba(0, 0, 0, .25);
}
.text-shadow-2 {
text-shadow: 0 .25rem .5rem rgba(0, 0, 0, .25);
}
.text-shadow-3 {
text-shadow: 0 .5rem 1.5rem rgba(0, 0, 0, .25);
}
.card-cover {
background-repeat: no-repeat;
background-position: center center;
background-size: cover;
}
.feature-icon-small {
width: 3rem;
height: 3rem;
}
Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.3 KiB

After

Width:  |  Height:  |  Size: 4.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 609 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.7 MiB

+48
View File
@@ -2,3 +2,51 @@
// for details on configuring this project to bundle and minify static web assets. // for details on configuring this project to bundle and minify static web assets.
// Write your JavaScript code. // Write your JavaScript code.
// Mobile Menu Logic
const btn = document.getElementById('mobile-menu-btn');
const menu = document.getElementById('mobile-menu');
const icon = btn.querySelector('i');
const links = menu.querySelectorAll('.mobile-link');
btn.addEventListener('click', () => {
menu.classList.toggle('hidden');
if (menu.classList.contains('hidden')) {
icon.classList.remove('fa-times');
icon.classList.add('fa-bars');
} else {
icon.classList.remove('fa-bars');
icon.classList.add('fa-times');
}
});
links.forEach(link => {
link.addEventListener('click', () => {
menu.classList.add('hidden');
icon.classList.remove('fa-times');
icon.classList.add('fa-bars');
});
});
// Sticky Navbar background on scroll
window.addEventListener('scroll', () => {
const nav = document.getElementById('navbar');
if (window.scrollY > 50) {
nav.classList.add('shadow-md');
nav.classList.replace('bg-white/95', 'bg-white/100');
} else {
nav.classList.remove('shadow-md');
nav.classList.replace('bg-white/100', 'bg-white/95');
}
});
document.addEventListener("DOMContentLoaded", function () {
// Telephone encoded in Base64
const encrypted = "KzYxICgwKTQwMSAwODkgMzA1";
const phone = document.getElementById("contact-phone");
// atob() decodes the Base64 string
const phoneNumber = atob(encrypted);
// Set the span and visible text
phone.textContent = phoneNumber;
// Remove the 'hidden' class to show the link
phone.classList.remove("hidden");
});
File diff suppressed because one or more lines are too long