/* =====================================================
SONORAN HOME CARE
OPTIMIZED LUXURY DESIGN SYSTEM
===================================================== */


:root{

--navy:#20384E;
--gold:#B89A5A;
--darkgold:#8D6420;
--ivory:#F6F3ED;
--white:#ffffff;
--text:#4b5560;
--shadow:0 20px 50px rgba(0,0,0,.08);

}


*{

margin:0;
padding:0;
box-sizing:border-box;

}


html{

scroll-behavior:smooth;

}


body{

background:var(--ivory);
color:var(--navy);
font-family:"Libre Baskerville",serif;
overflow-x:hidden;

}


img{

max-width:100%;
display:block;

}


a{

text-decoration:none;
color:inherit;

}


/* =====================================================
TYPOGRAPHY
===================================================== */


h1,
h2,
h3{

font-family:"Cinzel",serif;

}


p{

line-height:1.9;
color:var(--text);

}


/* =====================================================
NAVBAR
===================================================== */


.navbar{

position:fixed;
top:0;
left:0;

width:100%;
height:90px;

padding:0 7%;

display:flex;
align-items:center;
justify-content:space-between;

background:rgba(246,243,237,.95);
backdrop-filter:blur(15px);

z-index:1000;

border-bottom:1px solid rgba(184,154,90,.25);

}



.nav-logo img{

height:65px;
width:auto;

}



.nav-links{

display:flex;
gap:35px;

}



.nav-links a{

font-size:14px;
letter-spacing:1px;
transition:.3s;

}



.nav-links a:hover{

color:var(--gold);

}



.nav-button{

background:var(--navy);

color:white;

padding:15px 30px;

border-radius:50px;

border:1px solid var(--gold);

transition:.3s;

}



.nav-button:hover{

background:var(--gold);
color:var(--navy);

}


/* =====================================================
BUTTONS
===================================================== */


.primary-button,
.secondary-button{

display:inline-block;

padding:18px 45px;

border-radius:50px;

letter-spacing:2px;

transition:.35s;

}



.primary-button{

background:var(--navy);
color:white;

}



.secondary-button{

border:2px solid var(--gold);

}



.primary-button:hover,
.secondary-button:hover{

transform:translateY(-5px);

background:var(--gold);

color:var(--navy);

}
/* =====================================================
HERO SECTION
===================================================== */


.hero{

min-height:100vh;

padding-top:120px;

display:flex;
align-items:center;
justify-content:center;

text-align:center;

position:relative;

overflow:hidden;

}



.hero-content{

position:relative;
z-index:2;

}



.hero-logo{

width:240px;

margin:auto;

animation:float 5s infinite ease-in-out;

}



@keyframes float{

0%,100%{
transform:translateY(0);
}

50%{
transform:translateY(-15px);
}

}



.gold-divider{

height:3px;

width:120px;

background:var(--gold);

margin:35px auto;

}



.hero h1{

font-size:90px;

letter-spacing:15px;

}



.hero h2{

font-size:28px;

letter-spacing:12px;

color:var(--darkgold);

}



.hero-text{

max-width:650px;

margin:35px auto;

font-size:19px;

line-height:2;

}



.hero-buttons{

display:flex;

justify-content:center;

gap:20px;

flex-wrap:wrap;

}



/* Desert Decoration */


.hero-desert{

position:absolute;

bottom:-80px;

width:120%;

height:180px;

}



.desert-wave{

position:absolute;

width:100%;

height:140px;

border-radius:50%;

}



.wave-one{

background:var(--gold);

bottom:30px;

}



.wave-two{

background:var(--darkgold);

bottom:-20px;

}



/* =====================================================
GENERAL SECTIONS
===================================================== */


section{

padding:110px 8%;

}



.section-header{

max-width:800px;

margin:0 auto 60px;

text-align:center;

}



.section-header span{

color:var(--darkgold);

letter-spacing:4px;

font-size:14px;

}



.section-header h2{

font-size:48px;

margin:20px 0;

}



.section-header p{

line-height:2;

}



.large-text{

max-width:900px;

margin:auto;

text-align:center;

font-size:18px;

line-height:2;

}



/* =====================================================
TRUST BANNER
===================================================== */


.trust-banner{

background:var(--navy);

display:flex;

justify-content:center;

gap:70px;

flex-wrap:wrap;

padding:80px 8%;

color:white;

text-align:center;

}



.trust-item h3{

color:var(--gold);

font-size:25px;

}



.trust-item p{

color:white;

margin-top:10px;

}



/* =====================================================
CARD SYSTEM
===================================================== */


.about-grid,
.service-grid,
.why-grid,
.pricing-grid{

display:flex;

justify-content:center;

align-items:stretch;

gap:30px;

flex-wrap:wrap;

margin-top:60px;

}



.about-card,
.service-card,
.why-card,
.price-card{

background:white;

width:320px;

padding:40px 30px;

border-radius:20px;

box-shadow:var(--shadow);

border-top:4px solid var(--gold);

transition:.35s;

}



.about-card:hover,
.service-card:hover,
.why-card:hover,
.price-card:hover{

transform:translateY(-10px);

}



.about-card h3,
.service-card h3,
.why-card h3,
.price-card h3{

font-size:24px;

margin-bottom:20px;

}



.about-card p,
.service-card p,
.why-card p,
.price-card p{

line-height:1.8;

}



/* Service Icons */


.service-icon{

font-size:40px;

color:var(--gold);

margin-bottom:20px;

}



/* =====================================================
INNER PAGE HERO
===================================================== */


.page-hero{

padding-top:160px;
padding-bottom:40px;
text-align:center;
background:var(--ivory);


}



.page-hero h1{

font-size:55px;

letter-spacing:5px;

margin-bottom:20px;

}



.page-hero p{

max-width:750px;

margin:auto;

font-size:18px;

line-height:2;

}
/* =====================================================
ABOUT PAGE
===================================================== */


.page-content{

padding:100px 8%;

}



.page-content > p{

max-width:900px;

margin:auto;

text-align:center;

font-size:18px;

line-height:2;

}



/* =====================================================
SPLIT IMAGE/TEXT SECTIONS
===================================================== */


.split-section{

display:flex;

align-items:center;

gap:60px;

}



.split-section > div{

flex:1;

}



.split-section img{

border-radius:30px;

box-shadow:0 30px 60px rgba(0,0,0,.15);

}



/* =====================================================
CAREGIVER SECTION
===================================================== */


.caregiver-section{

display:flex;

align-items:center;

gap:60px;

background:white;

}



.caregiver-image,
.caregiver-content{

flex:1;

}



.caregiver-image img{

border-radius:30px;

box-shadow:0 30px 60px rgba(0,0,0,.15);

}



.caregiver-content span{

color:var(--darkgold);

letter-spacing:4px;

font-size:14px;

}



.caregiver-content h2{

font-size:45px;

margin:20px 0;

}



.caregiver-content p{

line-height:2;

margin-bottom:20px;

}



.caregiver-points div{

margin:15px 0;

color:var(--darkgold);

font-weight:bold;

}



/* =====================================================
PRICING
===================================================== */


.pricing-grid{

gap:35px;

}



.price-card{

width:350px;

padding:45px 35px;

position:relative;

}



.price-card.featured{

border:3px solid var(--gold);

transform:scale(1.05);

}



.price-card.featured:hover{

transform:scale(1.05) translateY(-10px);

}



.price-card h4{

margin-top:10px;

color:var(--darkgold);

}



.price{

font-size:55px;

font-weight:bold;

margin:25px 0;

color:var(--navy);

}



.price span{

font-size:18px;

font-weight:normal;

}



.price-card ul{

margin-top:25px;

}



.price-card li{

list-style:none;

margin:15px 0;

color:var(--text);

}



.popular{

position:absolute;

top:-18px;

left:50%;

transform:translateX(-50%);

background:var(--gold);

color:var(--navy);

padding:8px 25px;

border-radius:30px;

font-size:12px;

font-weight:bold;

}



.price-button{

display:block;

margin-top:30px;

background:var(--navy);

color:white;

padding:15px;

border-radius:40px;

text-align:center;

transition:.3s;

}



.price-button:hover{

background:var(--gold);

color:var(--navy);

}



/* =====================================================
PHILOSOPHY
===================================================== */


.philosophy{

background:white;

text-align:center;

}



.philosophy p{

max-width:900px;

margin:auto;

font-size:18px;

line-height:2;

}



/* =====================================================
WHY CHOOSE US
===================================================== */


.why-us{

background:var(--ivory);

}



/* =====================================================
EXPERIENCE SECTION
===================================================== */


.experience{

background:var(--navy);

color:white;

text-align:center;

}



.experience-box{

max-width:900px;

margin:auto;

}



.experience-box h2{

font-size:45px;

margin-bottom:30px;

}



.experience-box p{

color:white;

font-size:18px;

line-height:2;

}
/* =====================================================
CONTACT SECTIONS
===================================================== */


.contact-section,
.contact-page{

background:var(--navy);

color:white;

text-align:center;

}



.contact-section h2,
.contact-page h1{

font-size:50px;

}



.contact-section p,
.contact-page p{

color:white;

line-height:2;

margin:25px auto;

max-width:800px;

}



.phone-box a{

display:block;

font-size:35px;

color:var(--gold);

margin:20px;

}



/* =====================================================
CONTACT FORM
===================================================== */


.care-form{

max-width:700px;

margin:50px auto 0;

}



.form-row{

display:flex;

gap:20px;

}



.care-form input,
.care-form textarea{

width:100%;

padding:18px;

border-radius:10px;

border:none;

margin-bottom:20px;

font-family:inherit;

}



.care-form textarea{

resize:none;

}



.care-form button{

width:100%;

padding:18px;

border-radius:50px;

border:none;

background:var(--gold);

color:var(--navy);

font-weight:bold;

font-size:18px;

cursor:pointer;

transition:.3s;

}



.care-form button:hover{

background:var(--darkgold);

color:white;

}



/* =====================================================
CONTACT CARD
===================================================== */


.contact-card{

background:white;

color:var(--navy);

max-width:700px;

margin:50px auto;

padding:45px;

border-radius:25px;

box-shadow:var(--shadow);

}



/* =====================================================
FAQ
===================================================== */


.faq-container{

max-width:900px;

margin:auto;

}



.faq-item{

background:white;

padding:30px;

border-radius:15px;

margin-bottom:20px;

box-shadow:var(--shadow);

}



.faq-item h3{

font-size:22px;

margin-bottom:15px;

}



.faq-item p{

line-height:1.8;

}



/* =====================================================
FINAL CONSULTATION MESSAGE
===================================================== */


.final-message{

background:white;

text-align:center;

}



.final-message img{

width:160px;

margin:0 auto 30px;

}



.final-message h2{

font-size:45px;

max-width:900px;

margin:30px auto;

}



.final-message p{

max-width:800px;

margin:auto;

line-height:2;

}



/* =====================================================
FOOTER
===================================================== */


.footer{

background:#172B3C;

color:white;

text-align:center;

padding:60px 20px;

}



.footer-logo img{

width:120px;

margin:auto;

}



.footer-links{

display:flex;

justify-content:center;

gap:30px;

margin:30px;

}



.footer-links a:hover{

color:var(--gold);

}



.footer-contact a{

color:var(--gold);

}



.copyright{

margin-top:30px;

opacity:.7;

}
/* =====================================================
MOBILE RESPONSIVE
===================================================== */


@media(max-width:900px){


/* Navigation */


.nav-links{

display:none;

}


.navbar{

padding:0 5%;

}


/* Hero */


.hero h1{

font-size:45px;

letter-spacing:6px;

}


.hero h2{

font-size:18px;

letter-spacing:6px;

}


.hero-text{

font-size:16px;

}


/* Buttons */


.primary-button,
.secondary-button{

padding:15px 30px;

}


/* Sections */


section{

padding:80px 6%;

}


.section-header h2{

font-size:34px;

}



/* Cards */


.about-card,
.service-card,
.why-card,
.price-card{

width:100%;

max-width:350px;

}



.price-card.featured{

transform:none;

}



.price-card.featured:hover{

transform:translateY(-10px);

}



/* Split Sections */


.split-section,
.caregiver-section{

flex-direction:column;

gap:35px;

}



/* Caregiver */


.caregiver-content h2{

font-size:35px;

}



/* Pricing */


.price{

font-size:45px;

}



/* Contact */


.contact-section h2,
.contact-page h1{

font-size:35px;

}



.phone-box a{

font-size:25px;

}


/* Forms */


.form-row{

flex-direction:column;

}



/* Footer */


.footer-links{

flex-direction:column;

gap:15px;

}



}
@media(max-width:480px){

.hero h1{
font-size:35px;
}

.page-hero h1{
font-size:32px;
}

.section-header h2{
font-size:28px;
}

.primary-button,
.secondary-button{
width:100%;
}

}
/* =========================
HOME PAGE BUTTON FIX
========================= */

.about-preview,
.services-preview,
.caregiver-preview,
.contact-section{
    text-align:center;
}


.about-preview .primary-button,
.services-preview .primary-button,
.caregiver-preview .primary-button,
.contact-section .primary-button{
    display:inline-block;
    margin:30px auto 0;
}


/* Fix inner content alignment */
.section-header{
    margin-left:auto;
    margin-right:auto;
}


.caregiver-content{
    margin-left:auto;
    margin-right:auto;
    text-align:center;
}
/* MOBILE MENU */

.menu-toggle{

display:none;

background:none;

border:none;

font-family:"Libre Baskerville",serif;

font-size:14px;

letter-spacing:2px;

color:var(--navy);

cursor:pointer;

}



@media(max-width:900px){


.menu-toggle{

display:block;

}



.nav-links{

position:absolute;

top:80px;

left:0;

width:100%;

background:var(--ivory);

display:none;

flex-direction:column;

align-items:center;

padding:25px 0;

}



.nav-links.active{

display:flex;

}



.nav-links a{

padding:15px;

font-size:16px;

}



.nav-button{

display:none;

}


}