/*======================================
Triyom Paying Guest
Premium Landing Page
======================================*/

*{
margin:0;
padding:0;
box-sizing:border-box;
}

html{
scroll-behavior:smooth;
}

body{

font-family:'Poppins',sans-serif;

background:#f8fafc;

color:#1f2937;

line-height:1.7;

overflow-x:hidden;

}

img{

width:100%;

display:block;

}

a{

text-decoration:none;

color:inherit;

}

ul{

list-style:none;

}

.container{

width:90%;

max-width:1200px;

margin:auto;

}

/*=========================
HEADER
=========================*/

.header{

position:fixed;

top:0;

left:0;

width:100%;

background:white;

box-shadow:0 8px 30px rgba(0,0,0,.08);

z-index:1000;

}

.header .container{

display:flex;

justify-content:space-between;

align-items:center;

height:80px;

}

.logo{

font-size:26px;

font-weight:700;

color:#0f766e;

display:flex;

align-items:center;

gap:10px;

}

.logo i{

color:#f59e0b;

}

#navbar ul{

display:flex;

gap:35px;

}

#navbar a{

font-weight:500;

transition:.3s;

}

#navbar a:hover{

color:#0f766e;

}

#menu-btn{

display:none;

font-size:26px;

cursor:pointer;

}

/*=========================
BUTTONS
=========================*/

.btn{

display:inline-block;

padding:15px 35px;

border-radius:50px;

background:#0f766e;

color:white;

font-weight:600;

transition:.4s;

box-shadow:0 10px 25px rgba(15,118,110,.25);

}

.btn:hover{

transform:translateY(-4px);

}

.secondary{

background:#f59e0b;

}

/*=========================
HERO
=========================*/

.hero{

padding-top:120px;

padding-bottom:90px;

background:linear-gradient(135deg,#effdf8,#eef8ff);

}

.hero-content{

display:grid;

grid-template-columns:1fr 1fr;

gap:70px;

align-items:center;

}

.badge{

display:inline-block;

background:#dcfce7;

padding:8px 20px;

border-radius:30px;

font-weight:600;

margin-bottom:20px;

}

.hero h1{

font-size:58px;

line-height:1.1;

margin-bottom:25px;

}

.hero h1 span{

display:block;

color:#0f766e;

}

.hero p{

font-size:18px;

margin-bottom:35px;

color:#555;

}

.hero-buttons{

display:flex;

gap:20px;

margin-bottom:40px;

}

.stats{

display:flex;

gap:50px;

}

.stats h2{

font-size:34px;

color:#0f766e;

}

.hero-right img{

border-radius:25px;

box-shadow:0 30px 60px rgba(0,0,0,.18);

}

/*=========================
SECTION
=========================*/

section{

padding:90px 0;

}

.section-title{

text-align:center;

font-size:40px;

margin-bottom:50px;

}

.section-header{

text-align:center;

margin-bottom:60px;

}

.section-header span{

color:#0f766e;

font-weight:700;

}

.section-header h2{

font-size:42px;

margin-top:10px;

margin-bottom:15px;

}

.section-header p{

max-width:650px;

margin:auto;

color:#666;

}

/*=========================
WHY CHOOSE
=========================*/

.why{

background:white;

}

.why-grid{

display:grid;

grid-template-columns:repeat(4,1fr);

gap:30px;

}

.card{

background:white;

padding:35px;

border-radius:20px;

box-shadow:0 20px 40px rgba(0,0,0,.06);

transition:.4s;

text-align:center;

}

.card:hover{

transform:translateY(-10px);

}

.card i{

font-size:42px;

color:#0f766e;

margin-bottom:20px;

}

.card h3{

margin-bottom:15px;

}

/*=========================
FACILITIES
=========================*/

#facilities{

background:#f8fafc;

}

.facility-grid{

display:grid;

grid-template-columns:repeat(4,1fr);

gap:25px;

}

.facility{

background:white;

padding:30px;

border-radius:18px;

text-align:center;

box-shadow:0 15px 30px rgba(0,0,0,.06);

transition:.4s;

}

.facility:hover{

transform:translateY(-8px);

}

.facility i{

font-size:38px;

margin-bottom:15px;

color:#0f766e;

}

/*=========================
RESIDENT RULES
=========================*/

.rules{

background:#ffffff;

}

.rules-grid{

display:grid;

grid-template-columns:repeat(3,1fr);

gap:30px;

margin-top:40px;

margin-bottom:50px;

}

.rule-card{

background:#f8fafc;

padding:35px;

border-radius:20px;

text-align:center;

box-shadow:0 15px 35px rgba(0,0,0,.06);

transition:.3s;

}

.rule-card:hover{

transform:translateY(-8px);

}

.rule-card i{

font-size:40px;

color:#0f766e;

margin-bottom:18px;

}

.rule-card h3{

margin-bottom:12px;

font-size:22px;

}

.rule-card p{

color:#666;

line-height:1.7;

}

/* Important Policies */

.important-rules{

max-width:900px;

margin:auto;

background:#fff8e8;

border-left:6px solid #f59e0b;

padding:35px;

border-radius:18px;

box-shadow:0 12px 30px rgba(0,0,0,.06);

}

.important-rules h3{

margin-bottom:25px;

font-size:28px;

color:#b45309;

display:flex;

align-items:center;

gap:12px;

}

.important-rules ul{

padding-left:25px;

}

.important-rules li{

margin-bottom:18px;

line-height:1.8;

font-size:17px;

color:#444;

}

@media(max-width:768px){

.rules-grid{

grid-template-columns:1fr;

}

.important-rules{

padding:25px;

}

}
/*=========================
GALLERY
=========================*/

.gallery{
background:#ffffff;
}

.gallery-grid{
display:grid;
grid-template-columns:repeat(3,1fr);
gap:30px;
}

.gallery-item{
position:relative;
overflow:hidden;
border-radius:20px;
cursor:pointer;
box-shadow:0 15px 35px rgba(0,0,0,.08);
}

.gallery-item img{
height:280px;
object-fit:cover;
transition:.5s;
}

.gallery-item:hover img{
transform:scale(1.08);
}

.gallery-overlay{
position:absolute;
top:0;
left:0;
width:100%;
height:100%;
background:rgba(15,118,110,.55);
display:flex;
justify-content:center;
align-items:center;
opacity:0;
transition:.4s;
}

.gallery-item:hover .gallery-overlay{
opacity:1;
}

.gallery-overlay i{
font-size:42px;
color:white;
}

/*=========================
PRICING
=========================*/

.pricing{
background:#f8fafc;
}

.pricing-card{
max-width:520px;
margin:auto;
background:white;
padding:50px;
border-radius:25px;
text-align:center;
box-shadow:0 25px 60px rgba(0,0,0,.08);
}

.price{
font-size:58px;
font-weight:700;
color:#0f766e;
margin-bottom:30px;
}

.price span{
font-size:22px;
font-weight:500;
color:#666;
}

.pricing-card ul{
margin:35px 0;
text-align:left;
}

.pricing-card li{
padding:14px 0;
border-bottom:1px solid #eee;
}

.pricing-card i{
color:#16a34a;
margin-right:10px;
}

/*=========================
REVIEWS
=========================*/

.google-review-box{

max-width:700px;

margin:auto;

padding:50px;

background:#fff;

border-radius:20px;

text-align:center;

box-shadow:0 15px 40px rgba(0,0,0,.08);

}

.google-logo{

font-size:60px;

color:#4285F4;

margin-bottom:20px;

}

.review-buttons{

display:flex;

justify-content:center;

gap:20px;

margin-top:30px;

flex-wrap:wrap;

}
/*=========================
CALL TO ACTION
=========================*/

.cta{
background:linear-gradient(135deg,#0f766e,#115e59);
color:white;
text-align:center;
}

.cta h2{
font-size:42px;
margin-bottom:20px;
}

.cta p{
max-width:650px;
margin:auto;
margin-bottom:35px;
}

.cta-buttons{
display:flex;
justify-content:center;
gap:20px;
flex-wrap:wrap;
}

.cta .secondary{
background:white;
color:#0f766e;
}

/*=========================
FAQ
=========================*/

.faq{
background:#f8fafc;
}

.faq-container{
max-width:850px;
margin:auto;
}

.faq-item{
background:white;
margin-bottom:18px;
border-radius:15px;
overflow:hidden;
box-shadow:0 10px 25px rgba(0,0,0,.06);
}

.faq-question{
width:100%;
background:none;
border:none;
padding:22px;
display:flex;
justify-content:space-between;
align-items:center;
font-size:18px;
font-weight:600;
cursor:pointer;
}

.faq-answer{
display:none;
padding:0 22px 22px;
color:#555;
}

/*=========================
CONTACT
=========================*/

.contact-grid{
display:grid;
grid-template-columns:repeat(3,1fr);
gap:30px;
}

.contact-card{
background:white;
padding:40px;
text-align:center;
border-radius:20px;
box-shadow:0 15px 35px rgba(0,0,0,.07);
}

.contact-card i{
font-size:42px;
color:#0f766e;
margin-bottom:18px;
}

.contact-card a{
color:#0f766e;
font-weight:600;
}

/*=========================
MAP
=========================*/

.map iframe{
width:100%;
height:420px;
border:0;
}

/*=========================
FOOTER
=========================*/

footer{
background:#111827;
color:white;
padding:60px 0;
text-align:center;
}

.footer-links{
margin:25px 0;
display:flex;
justify-content:center;
gap:25px;
flex-wrap:wrap;
}

.footer-links a:hover{
color:#fbbf24;
}

/*=========================
FLOATING BUTTONS
=========================*/

.floating-whatsapp,
.floating-call,
#topBtn{

position:fixed;

right:20px;

width:60px;

height:60px;

border-radius:50%;

display:flex;

justify-content:center;

align-items:center;

color:white;

font-size:24px;

z-index:999;

text-decoration:none;

box-shadow:0 10px 30px rgba(0,0,0,.25);

}

.floating-whatsapp{
background:#25D366;
bottom:95px;
}

.floating-call{
background:#0f766e;
bottom:165px;
}

#topBtn{
background:#f59e0b;
border:none;
bottom:25px;
cursor:pointer;
display:none;
}

/*=========================
LIGHTBOX
=========================*/

#lightbox{

position:fixed;

top:0;

left:0;

width:100%;

height:100%;

background:rgba(0,0,0,.9);

display:none;

justify-content:center;

align-items:center;

z-index:5000;

}

#lightbox img{

max-width:90%;

max-height:90%;

border-radius:15px;

}

#closeLightbox{

position:absolute;

top:30px;

right:40px;

font-size:45px;

color:white;

cursor:pointer;

}

/*=========================
RESPONSIVE
=========================*/

@media(max-width:992px){

.hero-content,
.why-grid,
.gallery-grid,
.review-grid,
.contact-grid,
.facility-grid{

grid-template-columns:1fr 1fr;

}

.hero h1{
font-size:42px;
}

.stats{
flex-wrap:wrap;
}

}

@media(max-width:768px){

#navbar{

display:none;

}

#menu-btn{

display:block;

}

.hero-content,
.gallery-grid,
.review-grid,
.contact-grid,
.why-grid,
.facility-grid{

grid-template-columns:1fr;

}

.hero{

text-align:center;

}

.hero-buttons,
.stats,
.cta-buttons{

justify-content:center;

flex-wrap:wrap;

}

.section-title,
.section-header h2{

font-size:32px;

}

.price{

font-size:46px;

}

}

@media(max-width:480px){

.hero h1{

font-size:34px;

}

.btn{

width:100%;

text-align:center;

}

.pricing-card{

padding:30px;

}

.contact-card{

padding:25px;

}

}

