/* ===============================
BASE
================================ */
.ravasa-page {
font-family: "Inter", system-ui, sans-serif;
color: #000;
}
.inner {
max-width: 1320px;
margin: 0 auto;
padding: 0 32px;
}
/* ===============================
TYPOGRAPHY (FIXED — ONLY CHANGES)
================================ */
.ravasa-page h1,
.ravasa-page h2,
.ravasa-page h3,
.ravasa-page h4,
.ravasa-page h5,
.ravasa-page h6 {
font-family: "Inter Tight", "Inter", system-ui, sans-serif;
font-weight: 600;
line-height: 1.05;
margin-bottom: 20px;
letter-spacing: -0.015em;
}
.ravasa-page h1 {
font-size: clamp(47px, 5.4vw, 68px);
}
.ravasa-page h2 {
font-size: clamp(38px, 3.7vw, 49px);
}
.ravasa-page p,
.ravasa-page li {
font-family: "Inter", system-ui, sans-serif;
font-size: 18px;
line-height: 1.55;
font-weight: 400;
color: #1f2933;
max-width: 640px;
}
@media (min-width: 901px) {
.ravasa-page p,
.ravasa-page li {
font-size: 22px;
font-weight: 400;
}
}
/* ===============================
BUTTONS
================================ */
.btn {
background: #f37021;
color: #fff;
padding: 16px 34px;
border-radius: 8px;
font-weight: 600;
text-decoration: none;
display: inline-flex;
align-items: center;
justify-content: center;
transition: background 0.25s ease;
}
.btn:hover {
background: #2f7d6a;
color: #fff;
}
.phone-link {
font-size: 22px;
font-weight: 700;
color: #0b3c5d;
text-decoration: none;
}
/* ===============================
IMAGE HOVER
================================ */
img {
transition: transform 0.35s ease;
}
img:hover {
transform: translateY(-6px) scale(1.015);
}
/* ===============================
HERO
================================ */
.hero {
width: 100vw;
margin-left: calc(50% - 50vw);
padding: 28px 0 64px;
background: linear-gradient(180deg, #ffffff, #f6f9fb);
}
.hero-grid {
display: grid;
grid-template-columns: 1.2fr 0.8fr;
gap: 72px;
align-items: flex-end;
}
.hero-content {
display: flex;
flex-direction: column;
justify-content: flex-end;
}
.hero-cta {
display: flex;
align-items: center;
gap: 24px;
margin-top: 24px;
}
.hero-reviews {
font-size: 18px;
font-weight: 700;
text-align: center;
color: #2f5e5a;
}
.hero-reviews span {
display: block;
}
.hero-image-wrap {
position: relative;
}
.hero-image {
width: 90%;
max-width: 460px;
height: 460px;
object-fit: cover;
border-radius: 240px 240px 0 0;
}
.hero-badge {
position: absolute;
top: -10px;
right: -12px;
width: 110px;
height: 110px;
background: #6a8f8b;
color: #fff;
border-radius: 50%;
font-weight: 700;
font-size: 14px;
display: flex;
align-items: center;
justify-content: center;
text-align: center;
}
/* ===============================
HERO SLIDESHOW
================================ */
.hero-slideshow {
position: relative;
width: 460px;
height: 460px;
border-radius: 28px;
overflow: hidden;
background: #e9efee;
}
.hero-slideshow .slide {
position: absolute;
inset: 0;
width: 100%;
height: 100%;
object-fit: cover;
opacity: 0;
transition: opacity 0.9s ease;
}
.hero-slideshow .slide.active {
opacity: 1;
}
/* Badge stays clean */
.hero-badge {
z-index: 5;
}
/* ===============================
REVIEWS
================================ */
.reviews {
padding: 96px 0;
}
.review-track {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 32px;
margin-top: 48px;
}
.review {
background: #f2f6f5;
padding: 28px;
border-radius: 14px;
}
.review-head {
display: flex;
align-items: center;
gap: 12px;
margin-bottom: 12px;
}
.review-head img {
width: 36px;
height: 36px;
border-radius: 50%;
}
/* ===============================
SEO
================================ */
.seo {
width: 100vw;
margin-left: calc(50% - 50vw);
background:
linear-gradient(180deg, #ffffff, #f4f8f7),
repeating-linear-gradient(
45deg,
rgba(106,143,139,0.05),
rgba(106,143,139,0.05) 2px,
transparent 2px,
transparent 6px
);
padding: 96px 0;
}
.seo-title {
text-align: center;
margin-bottom: 16px;
}
.seo-sub {
text-align: center;
font-size: 22px;
color: #4f6f6b;
margin-bottom: 64px;
}
.seo-row {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 64px;
align-items: center;
margin-bottom: 72px;
}
.seo img {
width: 100%;
max-height: 400px;
object-fit: cover;
border-radius: 16px;
}
.seo-cta {
display: flex;
gap: 24px;
align-items: center;
margin-top: 24px;
}
.btn-outline {
background: #0b3c5d; /* blue */
color: #fff;
}
.btn-outline:hover {
background: #f37021; /* orange hover (inverse) */
}
/* ===============================
SERVICES
================================ */
.services {
padding: 96px 0 72px;
}
.services-grid {
display: grid;
grid-template-columns: repeat(4, 1fr);
gap: 24px;
margin-top: 48px;
}
.service {
position: relative;
height: 220px;
border-radius: 16px;
overflow: hidden;
}
.service::after {
content: "";
position: absolute;
inset: 0;
background: linear-gradient(to top, rgba(0,0,0,.55), rgba(0,0,0,.15));
}
.service img {
width: 100%;
height: 100%;
object-fit: cover;
}
.service span {
position: absolute;
bottom: 16px;
left: 16px;
color: #fff;
font-weight: 700;
z-index: 2;
}
/* ===============================
FAQ
================================ */
.faq {
padding: 64px 0;
background: linear-gradient(180deg, #ffffff, #f6f9fb);
}
.faq-item {
border-bottom: 1px solid #ddd;
padding: 18px 0;
cursor: pointer;
}
.faq-item p {
display: none;
margin-top: 12px;
}
.faq-item.open p {
display: block;
}
/* ===============================
CTA
================================ */
.cta {
width: 100vw;
margin-left: calc(50% - 50vw);
background: #0e2f2d;
color: #fff;
padding: 96px 0;
}
.cta h2 {
color: #fff;
text-align: center;
}
.cta-steps {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 32px;
margin: 48px 0;
text-align: center;
}
.cta-actions {
display: flex;
align-items: center;
gap: 32px;
justify-content: center;
}
.cta .phone-link {
color: #fff;
}
/* ===============================
TEAM SPOTLIGHT
================================ */
.team-spotlight {
padding: 72px 0;
background: #ffffff;
}
.team-grid {
display: grid;
grid-template-columns: 0.9fr 1.1fr;
gap: 64px;
align-items: center;
}
.team-image {
height: 480px;
}
.team-image img {
height: 100%;
width: 100%;
object-fit: cover;
}
.team-content h2 {
margin-bottom: 20px;
}
.team-content p {
margin-bottom: 16px;
}
.team-highlight {
color: #2f5e5a;
margin-top: 12px;
}
.team-spotlight {
display: block;
}
.team-grid {
display: grid;
}
/* ===============================
CONNECT WITH TRICIA LINK
================================ */
.connect-tricia {
display: inline-flex;
align-items: center;
gap: 10px;
margin-top: 28px;
font-size: 24px;
text-decoration: none;
color: #1a7f5a;
}
.connect-tricia .arrow {
font-weight: 800;
letter-spacing: 1px;
}
.connect-tricia:hover {
opacity: 0.85;
}
/* ===============================
MOBILE
================================ */
@media (max-width: 900px) {
/* ------------------------------------------------
GLOBAL OFFSET FIX (prevents hero being pushed down)
------------------------------------------------ */
main#main,
body {
margin-top: 0 !important;
padding-top: 0 !important;
}
@media (max-width: 900px) {
.ravasa-page h2 {
font-size: 32px;
}
}
/* ------------------------------------------------
SECTION SPACING (MOBILE RHYTHM)
------------------------------------------------ */
.hero {
padding: 28px 0 40px;
}
.reviews { padding: 48px 0; }
.seo {
padding: 40px 0 24px; /* controlled bottom */
}
.services {
padding: 32px 0 40px; /* FIXED: no extra top gap */
}
.faq { padding: 56px 0; }
.cta { padding: 56px 0; }
.final-seo { padding: 48px 0; }
/* ------------------------------------------------
HERO (LOCKED — matches your good version)
------------------------------------------------ */
.hero-grid {
grid-template-columns: 1fr;
gap: 24px;
text-align: center;
}
.hero-image-wrap { order: -1; }
.hero-image {
width: 100%;
height: 220px;
margin-bottom: 12px;
}
@media (max-width: 900px) {
.hero-slideshow {
width: 320px;
height: 280px;
margin: 0 auto;
}
.ravasa-page .hero h1 {
font-size: 36px;
line-height: 1.15;
font-weight: 600;
letter-spacing: -0.02em;
}
}
.hero-content { align-items: center; }
.hero-reviews { font-size: 14px; }
/* ------------------------------------------------
BUTTONS (MOBILE SCALE — NOT GIANT)
------------------------------------------------ */
.btn {
padding: 12px 22px;
font-size: 15px;
}
.phone-link {
font-size: 18px;
}
/* ------------------------------------------------
REVIEWS
------------------------------------------------ */
.review-track {
display: flex;
overflow-x: auto;
gap: 20px;
}
.review {
min-width: 280px;
}
/* ------------------------------------------------
SEO (THIS IS THE IMPORTANT FIX)
------------------------------------------------ */
.seo-row {
grid-template-columns: 1fr;
gap: 8px;
margin-bottom: 24px; /* 🔑 OVERRIDES DESKTOP 72px */
}
.seo-row img {
order: -1;
}
.seo img {
max-height: 260px;
}
.seo-row p {
margin-bottom: 8px; /* paragraph spacing controlled */
}
@media (max-width: 900px) {
.seo-row p {
margin-top: 16px;
}
}
/* MOBILE — SEO buttons 65% / 35% */
.seo-cta {
display: flex;
flex-direction: row;
width: 100%;
gap: 12px;
}
.seo-cta .btn:first-child {
flex: 0 0 50%;
}
.seo-cta .btn:last-child {
flex: 0 0 50%;
}
/* ------------------------------------------------
SERVICES (FIXES BIG GAP ABOVE GRID)
------------------------------------------------ */
.services-grid {
grid-template-columns: repeat(2, 1fr);
margin-top: 16px; /* was too large */
}
.service {
height: 180px;
}
/* ------------------------------------------------
Team Spotlight (MOBILE)
------------------------------------------------ */
.team-spotlight {
padding: 40px 0 0;
}
.team-grid {
grid-template-columns: 1fr;
gap: 24px;
text-align: center;
}
.team-image {
height: auto; /* 🔑 VERY IMPORTANT */
}
.team-image img {
display: block;
width: 100%;
max-width: 240px;
height: auto; /* 🔑 PREVENTS TALL IMAGE */
margin: 0 auto;
object-fit: contain; /* portrait-safe */
}
document.addEventListener("DOMContentLoaded", function () {
const slides = document.querySelectorAll(".hero-slideshow .slide");
let current = 0;
if (slides.length {
slides[current].classList.remove("active");
current = (current + 1) % slides.length;
slides[current].classList.add("active");
}, 3500);
});
Take the irritation out of your irrigation
Expert irrigation, drainage, lighting & water management services.
What Customers Say
Mike R.★★★★★ Outstanding service.
Sarah L.★★★★★ Fast & professional.
John D.★★★★★ Highly recommended.
Reliable Irrigation Solutions
Designed for efficiency, longevity, and Florida landscapes
Installed by licensed professionals you can trust and trust this and trust that and help them trust all this and build this here and move this there and we can help by doing all of this great stuff in sarasota and help build you up and build your remodel and build all these seo pages from scratch and by storm and by this and thay and help with all of this great stuff so that you can get what you need..
Installed by licensed professionals you can trust and trust this and trust that and help them trust all this and build this here and move this there and we can help by doing all of this great stuff in sarasota and help build you up and build your remodel and build all these seo pages from scratch and by storm and by this and thay and help with all of this great stuff so that you can get what you need..
Frequently Asked Questions
How fast is service?Usually within 24–48 hours.
Do you offer warranties?Yes.
Are estimates free?Absolutely.
Get Started in 3 Easy Steps
1. Request service
2. Get estimate
3. We fix it
Meet the People Behind Ravasa Group
Co-owner and irrigation specialist [First Name] brings years of hands-on
experience designing, repairing, and maintaining efficient irrigation systems
built for Florida landscapes.
As a licensed professional and co-owner, she ensures every project meets the
highest standards for performance, water conservation, and long-term
reliability.
✔ Family-owned & operated
✔ Licensed & insured irrigation professionals
✔ Trusted by Florida homeowners for 30+ years
Connect with Tricia ➡️