
:root{
  --green:#8eb39f;
  --green-dark:#729786;
  --peach:#e8bfa5;
  --cream:#fbf8f3;
  --cream-2:#f5efe6;
  --white:#fff;
  --text:#44555e;
  --muted:#7f8f97;
  --line:rgba(68,85,94,.12);
  --shadow:0 18px 50px rgba(0,0,0,.08);
  --shadow-lg:0 25px 70px rgba(0,0,0,.12);
  --radius:24px;
  --container:1180px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:Inter,system-ui,-apple-system,sans-serif;
  color:var(--text);
  background:
    radial-gradient(circle at top left, rgba(142,179,159,.16), transparent 28%),
    radial-gradient(circle at top right, rgba(232,191,165,.18), transparent 26%),
    linear-gradient(180deg,#fffdfa 0%,var(--cream) 55%,var(--cream-2) 100%);
  padding-top:116px;
}
img{max-width:100%;display:block}
a{text-decoration:none;color:inherit}
.site-shell{width:min(calc(100% - 28px),var(--container));margin:0 auto}
.top-banner{
  position:fixed;top:0;left:0;width:100%;z-index:1100;
  background:linear-gradient(90deg,var(--green-dark),var(--green),#aac6b7);
  color:#fff;box-shadow:0 6px 18px rgba(114,151,134,.24)
}
.top-banner-inner{
  width:min(calc(100% - 28px),var(--container));min-height:52px;margin:0 auto;
  padding:10px 0;display:flex;align-items:center;justify-content:center;gap:14px;
  flex-wrap:wrap;text-align:center
}
.top-banner p{margin:0;font-weight:700;font-size:.96rem}
.btn-banner{
  display:inline-flex;align-items:center;justify-content:center;
  padding:10px 18px;border-radius:999px;background:rgba(255,255,255,.18);
  border:1px solid rgba(255,255,255,.28);color:#fff;font-weight:700;transition:.25s ease
}
.btn-banner:hover{background:rgba(255,255,255,.28);color:#fff}
.nav-wrap{position:fixed;top:60px;left:0;width:100%;z-index:1050}
.custom-nav{
  width:min(calc(100% - 28px),var(--container));margin:0 auto;
  background:rgba(255,255,255,.86);backdrop-filter:blur(14px);
  border:1px solid rgba(255,255,255,.9);box-shadow:var(--shadow);border-radius:999px;
  padding:12px 18px;display:flex;align-items:center;justify-content:space-between;gap:18px
}
.brand{display:flex;align-items:center;gap:12px;min-width:0}
.brand img{width:54px;height:54px;object-fit:contain;border-radius:14px;background:rgba(255,255,255,.9);padding:4px}
.brand-copy strong{display:block;color:var(--text);font-size:1rem;line-height:1.1}
.brand-copy span{display:block;color:var(--muted);font-size:.82rem}
.nav-links{display:flex;align-items:center;gap:6px;flex-wrap:wrap;justify-content:center}
.nav-links a{padding:10px 14px;border-radius:999px;font-weight:700;font-size:.95rem;transition:.25s ease}
.nav-links a:hover,.nav-links a.active{color:var(--green-dark);background:rgba(142,179,159,.12)}
.nav-actions{display:flex;align-items:center;gap:10px}
.btn-main,.btn-soft,.btn-outline-light,.btn-bottom{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  border-radius:999px;font-weight:800;border:none;cursor:pointer;transition:.25s ease
}
.btn-main{background:linear-gradient(135deg,var(--green),var(--green-dark));color:#fff;padding:12px 20px;box-shadow:0 12px 24px rgba(114,151,134,.24)}
.btn-main:hover,.btn-soft:hover,.btn-outline-light:hover{transform:translateY(-2px)}
.btn-soft{background:rgba(232,191,165,.2);color:var(--text);padding:12px 20px;border:1px solid rgba(232,191,165,.4)}
.btn-outline-light{padding:12px 20px;color:#fff;border:1px solid rgba(255,255,255,.35);background:rgba(255,255,255,.12)}
.section{padding:48px 0}
.hero{padding:48px 0 30px}
.hero-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:22px;align-items:center}
.hero-copy h1,.section-head h2,.page-hero-copy h1,.form-title,.cta-copy h2{
  font-family:"Baloo 2",cursive;color:var(--text);letter-spacing:-.02em
}
.eyebrow{
  display:inline-flex;align-items:center;gap:8px;padding:9px 16px;border-radius:999px;
  background:rgba(255,255,255,.75);border:1px solid rgba(142,179,159,.22);
  color:var(--green-dark);font-weight:800;font-size:.85rem;box-shadow:var(--shadow)
}
.hero-copy h1{font-size:clamp(3rem,7vw,5.4rem);line-height:.93;margin:14px 0 12px}
.hero-copy p,.section-head p,.copy-muted,.panel p,.card p,.card li,.info-card p,.footer-panel p,.footer-panel li,.footer-panel a{color:var(--text)}
.hero-copy p{font-size:1.08rem;max-width:620px;margin-bottom:22px}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:22px}
.hero-points,.list-clean{list-style:none;padding:0;margin:0;display:grid;gap:10px}
.hero-points li,.list-clean li{display:flex;gap:10px;align-items:flex-start}
.hero-points i,.list-clean i{color:var(--green-dark);margin-top:4px}
.mini-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.mini-card,.card,.panel,.footer-panel,.hero-visual-card,.form-shell,.info-shell{
  background:rgba(255,255,255,.86);border:1px solid rgba(255,255,255,.92);
  box-shadow:var(--shadow);backdrop-filter:blur(14px);border-radius:var(--radius)
}
.mini-card{padding:16px}
.mini-card strong{display:block;color:var(--text)}
.mini-card span{display:block;font-size:.9rem;color:var(--muted);margin-top:4px}
.hero-visual-card{padding:14px}
.hero-media{
  min-height:500px;border-radius:18px;overflow:hidden;position:relative;
  background:linear-gradient(180deg,rgba(68,85,94,.05),rgba(68,85,94,.16)),url('img/1.jpg') center/cover
}
.float-pill,.float-box{
  position:absolute;background:rgba(255,255,255,.9);border:1px solid rgba(255,255,255,.96);
  box-shadow:var(--shadow-lg)
}
.float-pill{top:18px;left:18px;padding:12px 16px;border-radius:999px;color:var(--green-dark);font-weight:800}
.float-box{right:18px;bottom:18px;width:240px;border-radius:20px;padding:16px}
.float-box strong{display:block;color:var(--text);margin-bottom:6px}
.section-head{max-width:760px;margin:0 auto 28px;text-align:center}
.section-head h2{font-size:clamp(2.2rem,5vw,3.6rem);line-height:.98;margin:14px 0 10px}
.feature-grid,.gallery-grid,.packages-grid,.info-grid,.footer-grid{display:grid;gap:18px}
.feature-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.card{padding:24px;height:100%}
.feature-icon,.info-icon{
  width:58px;height:58px;display:grid;place-items:center;border-radius:18px;
  background:linear-gradient(135deg,rgba(142,179,159,.18),rgba(232,191,165,.2));
  color:var(--green-dark);font-size:1.2rem;margin-bottom:14px
}
.card h3,.package-card h3,.info-card h3{margin:0 0 8px;color:var(--text);font-size:1.18rem}
.gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.gallery-card{overflow:hidden;position:relative}
.gallery-card img{width:100%;height:320px;object-fit:cover;transition:transform .45s ease}
.gallery-card:hover img{transform:scale(1.05)}
.gallery-overlay{
  position:absolute;left:14px;right:14px;bottom:14px;border-radius:16px;padding:12px 14px;
  background:rgba(255,255,255,.9);border:1px solid rgba(255,255,255,.96);
  display:flex;justify-content:space-between;align-items:center;gap:12px;color:var(--text);font-weight:700
}
.packages-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.package-card{padding:24px;height:100%}
.package-card.featured{background:linear-gradient(180deg,rgba(142,179,159,.16),rgba(255,255,255,.88));border:1px solid rgba(142,179,159,.28);box-shadow:var(--shadow-lg)}
.package-tag{
  display:inline-flex;padding:8px 12px;border-radius:999px;background:rgba(232,191,165,.18);
  color:var(--text);font-size:.8rem;font-weight:800;margin-bottom:12px
}
.price{color:var(--green-dark);font-family:"Baloo 2",cursive;font-size:2.2rem;line-height:1;margin:10px 0 12px}
.package-card ul{list-style:none;padding:0;margin:0 0 20px;display:grid;gap:10px}
.package-card li{display:flex;gap:10px;align-items:flex-start}
.package-btn{width:100%}
.two-col{display:grid;grid-template-columns:1.05fr .95fr;gap:22px}
.page-hero{padding:42px 0 24px}
.page-hero-panel{padding:32px;display:grid;grid-template-columns:1.05fr .95fr;gap:22px;align-items:center}
.page-hero-copy h1{font-size:clamp(2.6rem,6vw,4.7rem);line-height:.95;margin:14px 0 10px}
.page-hero-card{
  min-height:320px;border-radius:22px;overflow:hidden;position:relative;
  background:linear-gradient(180deg,rgba(68,85,94,.08),rgba(68,85,94,.18)),url('img/2.jpg') center/cover
}
.form-shell,.info-shell{padding:28px}
.form-title{font-size:clamp(2rem,4vw,3rem);line-height:.98;margin:14px 0 8px}
.section-subtitle{margin:0 0 22px;color:var(--muted)}
.form-grid{display:grid;gap:18px}
.form-section{padding:22px;border-radius:24px;background:rgba(245,239,230,.58);border:1px solid rgba(215,195,161,.18)}
.form-section h3{font-family:"Baloo 2",cursive;margin:0 0 16px;font-size:1.6rem;line-height:1}
.fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.field,.field-full{display:flex;flex-direction:column;gap:8px}
.field-full{grid-column:1/-1}
label{font-size:.94rem;font-weight:800;color:var(--text)}
input,select,textarea{
  width:100%;border:1px solid rgba(81,99,109,.14);background:rgba(255,255,255,.94);
  color:var(--text);border-radius:16px;padding:14px 16px;font:inherit;outline:none;transition:.2s ease
}
input:focus,select:focus,textarea:focus{border-color:rgba(114,151,134,.55);box-shadow:0 0 0 4px rgba(142,179,159,.14)}
textarea{min-height:120px;resize:vertical}
.field-hint{font-size:.82rem;color:var(--muted)}
.submit-row{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;padding-top:8px}
.submit-row p{margin:0;color:var(--muted);font-size:.92rem}
.info-stack{display:grid;gap:16px}
.info-card{padding:18px;border-radius:22px;background:rgba(245,239,230,.58);border:1px solid rgba(215,195,161,.18)}
.mini-links{display:grid;gap:10px;margin-top:8px}
.mini-links a{display:inline-flex;align-items:center;gap:10px;color:var(--green-dark);font-weight:800}
.cta-panel{
  background:linear-gradient(135deg,var(--green-dark),var(--green),var(--peach));color:#fff;border-radius:32px;
  box-shadow:var(--shadow-lg);padding:30px;display:grid;grid-template-columns:1.05fr .95fr;gap:22px;align-items:center
}
.cta-copy h2{color:#fff;font-size:clamp(2.2rem,4vw,3.5rem);line-height:.98;margin:12px 0 10px}
.cta-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:22px}
.cta-summary{display:grid;gap:12px}
.summary-item{padding:16px 18px;border-radius:18px;background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.14)}
.summary-item strong{display:block;margin-bottom:4px}
footer{padding:0 0 32px}
.footer-panel{padding:24px}
.footer-grid{grid-template-columns:1.2fr 1fr 1fr 1fr}
.footer-panel h4{margin:0 0 12px;color:var(--text);font-size:1rem}
.footer-panel ul{list-style:none;padding:0;margin:0;display:grid;gap:8px}
.footer-brand{display:flex;align-items:center;gap:12px;margin-bottom:12px}
.footer-brand img{width:50px;height:50px;object-fit:contain}
.footer-meta{border-top:1px solid var(--line);margin-top:18px;padding-top:16px;display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:.95rem}
.back-to-top{
  position:fixed;right:18px;bottom:88px;width:52px;height:52px;border-radius:50%;
  background:linear-gradient(135deg,var(--green),var(--green-dark));color:#fff;display:inline-flex;align-items:center;justify-content:center;
  box-shadow:var(--shadow-lg);z-index:1000
}
.bottom-nav{
  position:fixed;left:0;right:0;bottom:0;z-index:1040;padding:0 14px 14px
}
.bottom-nav-inner{
  width:min(100%,760px);margin:0 auto;padding:10px;border-radius:24px;background:rgba(255,255,255,.92);
  backdrop-filter:blur(14px);border:1px solid rgba(255,255,255,.95);box-shadow:var(--shadow-lg);
  display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px
}
.btn-bottom{
  min-height:60px;padding:10px 8px;flex-direction:column;font-size:.78rem;color:var(--text);
  background:rgba(245,239,230,.78);border:1px solid rgba(215,195,161,.18);text-align:center
}
.btn-bottom i{color:var(--green-dark);font-size:1rem}
.btn-bottom.active{background:linear-gradient(135deg,var(--green),var(--green-dark));color:#fff}
.btn-bottom.active i{color:#fff}
.sr-only{
  position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0
}
@media (max-width:1100px){
  .hero-grid,.page-hero-panel,.two-col,.cta-panel,.footer-grid{grid-template-columns:1fr}
  .feature-grid,.gallery-grid,.packages-grid,.info-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .nav-links{display:none}
}
@media (max-width:768px){
  body{padding-top:18px;padding-bottom:92px}
  .top-banner,.nav-wrap{display:none}
  .hero{padding-top:20px}
  .hero-grid,.mini-grid,.feature-grid,.gallery-grid,.packages-grid,.info-grid,.fields{grid-template-columns:1fr}
  .hero-media,.page-hero-card{min-height:320px}
  .float-pill,.float-box{position:static;width:auto;margin:14px}
  .page-hero-panel,.form-shell,.info-shell,.footer-panel,.card,.package-card{padding:20px}
  .back-to-top{bottom:92px}
}
