@import "https://fonts.googleapis.com/css2?family=Rye&family=Nunito:wght@400;600;700;800&family=Caveat:wght@600&display=swap";.navbar{background:var(--forest);z-index:100;justify-content:space-between;align-items:center;padding:14px 40px;display:flex;position:sticky;top:0;box-shadow:0 2px 12px #0000004d}.nav-logo{color:var(--tan);align-items:center;gap:10px;font-family:Rye,serif;font-size:1.25rem;text-decoration:none;display:flex}.nav-links{align-items:center;gap:28px;list-style:none;display:flex}.nav-links a,.nav-links button{color:var(--tan);letter-spacing:.08em;text-transform:uppercase;opacity:.85;cursor:pointer;background:0 0;border:none;padding:0;font-family:Nunito,sans-serif;font-size:.88rem;font-weight:700;text-decoration:none;transition:opacity .2s,color .2s}.nav-links a:hover,.nav-links button:hover{opacity:1;color:var(--gold)}.nav-cta{border-radius:30px;background:var(--rust)!important;color:#fff!important;opacity:1!important;padding:8px 20px!important}.nav-cta:hover{background:var(--gold)!important;color:var(--forest)!important}@media (width<=768px){.navbar{padding:14px 20px}.nav-links{display:none}}.footer{background:var(--forest);color:var(--tan);padding:50px 20px 28px}.footer-inner{grid-template-columns:2fr 1fr 1fr;gap:48px;margin-bottom:36px;display:grid}.footer-logo{color:var(--gold);margin-bottom:10px;font-family:Rye,serif;font-size:1.5rem}.footer-about{opacity:.72;font-size:.88rem;line-height:1.7}.footer h4{color:var(--gold);margin-bottom:14px;font-family:Rye,serif;font-size:.95rem}.footer ul{list-style:none}.footer ul li{opacity:.72;margin-bottom:9px;font-size:.88rem}.footer ul li a,.footer ul li button{color:var(--tan);cursor:pointer;background:0 0;border:none;padding:0;font-family:Nunito,sans-serif;font-size:.88rem;text-decoration:none}.footer ul li a:hover,.footer ul li button:hover{color:var(--gold)}.footer-bottom{text-align:center;opacity:.45;border-top:1px solid #f5edd626;padding-top:22px;font-size:.82rem}@media (width<=768px){.footer-inner{grid-template-columns:1fr;gap:28px}}.hero{background:linear-gradient(180deg, #1a3009 0%, var(--forest) 50%, var(--pine) 80%, var(--sage) 100%);text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:94vh;padding:60px 20px 100px;display:flex;position:relative;overflow:hidden}.stars{pointer-events:none;height:50%;position:absolute;top:0;left:0;right:0}.star{background:#fff;border-radius:50%;animation:3s ease-in-out infinite twinkle;position:absolute}.hero-badge{background:var(--gold);color:var(--forest);z-index:1;border-radius:30px;margin-bottom:22px;padding:6px 22px;font-family:Caveat,cursive;font-size:1.1rem;font-weight:600;animation:.7s both fadeDown;display:inline-block;position:relative;box-shadow:0 2px 10px #0003}.hero-title{color:var(--cream);text-shadow:3px 4px #0000004d,0 0 80px #d4943a40;z-index:1;font-family:Rye,serif;font-size:clamp(3.2rem,9vw,6.5rem);line-height:1.05;animation:.7s .1s both fadeDown;position:relative}.hero-title span{color:var(--gold)}.hero-tag{color:var(--tan);z-index:1;margin:16px 0 12px;font-family:Caveat,cursive;font-size:clamp(1.2rem,3vw,1.75rem);animation:.7s .2s both fadeDown;position:relative}.hero-sub{color:#f5edd6b8;z-index:1;max-width:460px;margin-bottom:36px;font-size:1rem;line-height:1.75;animation:.7s .25s both fadeDown;position:relative}.hero-btns{z-index:1;flex-wrap:wrap;justify-content:center;gap:14px;animation:.7s .35s both fadeDown;display:flex;position:relative}.trees-row{pointer-events:none;justify-content:space-around;align-items:flex-end;padding:0 10px;display:flex;position:absolute;bottom:0;left:0;right:0}.tree-svg{transform-origin:bottom;animation:5s ease-in-out infinite sway}.tree-svg:nth-child(2n){animation-delay:-2.5s}.about{background:var(--tan);border-top:4px dashed var(--bark);border-bottom:4px dashed var(--bark);padding:80px 20px}.about-inner{grid-template-columns:1fr 1fr;align-items:center;gap:60px;display:grid}.cabin-box{background:var(--forest);aspect-ratio:4/3;box-shadow:8px 8px 0 var(--bark);border-radius:14px;flex-direction:column;justify-content:center;align-items:center;gap:12px;font-size:5rem;display:flex}.cabin-tag{color:var(--gold);font-family:Caveat,cursive;font-size:1.4rem!important}@media (width<=768px){.about-inner{grid-template-columns:1fr}}.activities{background:var(--cream);padding:80px 20px}.act-grid{grid-template-columns:repeat(3,1fr);gap:22px;margin-top:44px;display:grid}.act-card:last-child:nth-child(3n-1){grid-column:span 1}.act-card:last-child:nth-child(3n-2){grid-column:2}.act-card{border:2px solid var(--tan);text-align:center;box-shadow:4px 4px 0 var(--tan);background:#fff;border-radius:16px;padding:30px 22px;transition:transform .2s,box-shadow .2s;position:relative;overflow:hidden}.act-card:before{content:"";height:5px;position:absolute;top:0;left:0;right:0}.act-card:first-child:before{background:var(--rust)}.act-card:nth-child(2):before{background:var(--sage)}.act-card:nth-child(3):before{background:var(--gold)}.act-card:nth-child(4):before{background:var(--sky)}.act-card:nth-child(5):before{background:var(--bark)}.act-card:hover{box-shadow:4px 9px 0 var(--tan);transform:translateY(-5px)}.act-icon{margin-bottom:14px;font-size:2.8rem;display:block}.act-card h3{color:var(--forest);margin-bottom:8px;font-family:Rye,serif;font-size:1.05rem}.act-card p{color:#5a5a4a;font-size:.87rem;line-height:1.6}@media (width<=768px){.act-grid{grid-template-columns:1fr}.act-card:last-child:nth-child(3n-2){grid-column:1}}.who{background:var(--forest);text-align:center;padding:80px 20px}.section-label.gold{color:var(--gold)}.section-title.light{color:var(--cream)}.section-body.light{color:var(--tan);max-width:100%;margin:0 auto 16px}.sizes{flex-wrap:wrap;justify-content:center;gap:28px;margin-top:44px;display:flex}.size-card{text-align:center;background:#ffffff14;border:2px solid #f5edd640;border-radius:16px;flex-direction:column;align-items:center;gap:6px;padding:28px 36px;transition:background .2s;display:flex}.size-card:hover{background:#ffffff24}.size-emoji{margin-bottom:6px;font-size:2.8rem;display:block}.size-card strong{color:var(--gold);font-family:Rye,serif;font-size:.95rem;display:block}.size-card span{color:var(--tan);font-size:.82rem}.who-note{color:#f5edd673;margin-top:28px;font-size:.82rem}.pricing{background:var(--cream);padding:80px 20px}.price-grid{grid-template-columns:repeat(2,1fr);gap:28px;max-width:700px;margin-top:44px;display:grid}.price-card{text-align:center;border:2px solid var(--tan);box-shadow:5px 5px 0 var(--tan);background:#fff;border-radius:20px;padding:40px 32px;transition:transform .2s;position:relative}.price-card:hover{transform:translateY(-4px)}.price-card.featured{background:var(--forest);color:var(--cream);border-color:var(--forest);box-shadow:5px 5px 0 var(--bark)}.pop-tag{background:var(--rust);color:#fff;letter-spacing:.1em;text-transform:uppercase;white-space:nowrap;border-radius:20px;padding:4px 16px;font-size:.72rem;font-weight:800;position:absolute;top:-13px;left:50%;transform:translate(-50%)}.price-card h3{margin-bottom:8px;font-family:Rye,serif;font-size:1.3rem}.price-card.featured h3{color:var(--gold)}.price-amt{color:var(--rust);margin:16px 0 2px;font-size:2.8rem;font-weight:800;line-height:1}.price-card.featured .price-amt{color:var(--gold)}.price-per{color:#999;margin-bottom:6px;font-size:.82rem}.price-card.featured .price-per{color:#f5edd68c}.price-savings{background:var(--sage);color:#fff;border-radius:20px;margin-bottom:20px;padding:3px 12px;font-size:.75rem;font-weight:800;display:inline-block}.price-card.featured .price-savings{background:var(--gold);color:var(--forest)}.price-features{text-align:left;color:#555;margin-bottom:28px;font-size:.9rem;line-height:2.1;list-style:none}.price-card.featured .price-features{color:var(--tan)}.price-features li:before{content:"✓ ";color:var(--sage);font-weight:800}.price-card.featured .price-features li:before{color:var(--gold)}.btn-card{background:var(--rust);color:#fff;letter-spacing:.05em;text-transform:uppercase;border-radius:30px;padding:13px;font-family:Nunito,sans-serif;font-size:.9rem;font-weight:800;text-decoration:none;transition:opacity .2s;display:block}.btn-card:hover{opacity:.82}.price-card.featured .btn-card{background:var(--gold);color:var(--forest)}.price-note{color:#888;margin-top:20px;font-size:.82rem;font-style:italic}@media (width<=768px){.price-grid{grid-template-columns:1fr;max-width:100%}}.testimonials{background:var(--cream);padding:80px 20px}.testi-grid{grid-template-columns:repeat(3,1fr);gap:22px;margin-top:44px;display:grid}.testi-card{background:#fff;border-radius:16px;padding:28px;position:relative;box-shadow:4px 4px #8b5e3c26}.testi-card:before{content:"\"";color:var(--tan);font-family:Rye,serif;font-size:4.5rem;line-height:1;position:absolute;top:-8px;left:18px}.testi-card p{color:#4a4a3a;margin-top:22px;margin-bottom:18px;font-size:.93rem;font-style:italic;line-height:1.75}.testi-author{align-items:center;gap:12px;display:flex}.testi-av{background:var(--forest);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:42px;height:42px;font-size:1.4rem;display:flex}.testi-name{color:var(--forest);font-size:.88rem;font-weight:800}.testi-dog{color:var(--rust);font-family:Caveat,cursive;font-size:.95rem}@media (width<=768px){.testi-grid{grid-template-columns:1fr}}.how{background:var(--tan);border-top:4px dashed var(--bark);padding:80px 20px}.steps{grid-template-columns:repeat(4,1fr);gap:22px;margin-top:44px;display:grid;position:relative}.steps:before{content:"";background:repeating-linear-gradient(90deg, var(--sage) 0, var(--sage) 10px, transparent 10px, transparent 20px);height:2px;position:absolute;top:34px;left:10%;right:10%}.step{text-align:center;z-index:1;position:relative}.step-num{background:var(--forest);width:68px;height:68px;color:var(--gold);border:4px solid var(--tan);box-shadow:0 0 0 3px var(--forest);border-radius:50%;justify-content:center;align-items:center;margin:0 auto 18px;font-family:Rye,serif;font-size:1.5rem;display:flex}.step h3{color:var(--forest);margin-bottom:7px;font-family:Rye,serif;font-size:.95rem}.step p{color:#5a5a4a;font-size:.85rem;line-height:1.6}.step-link{color:var(--rust);letter-spacing:.03em;margin-top:10px;font-size:.82rem;font-weight:800;text-decoration:none;display:inline-block}.step-link:hover{text-decoration:underline}@media (width<=768px){.steps{grid-template-columns:1fr 1fr}.steps:before{display:none}}@media (width<=480px){.steps{grid-template-columns:1fr}}.cta-section{background:var(--rust);text-align:center;padding:80px 20px;position:relative;overflow:hidden}.cta-section:before{content:"🌲🌲🌲🌲🌲🌲🌲🌲🌲🌲";letter-spacing:10px;opacity:.15;pointer-events:none;font-size:2rem;line-height:1.2;position:absolute;top:0;left:0;right:0}.cta-section h2{color:#fff;text-shadow:2px 3px #0003;margin-bottom:14px;font-family:Rye,serif;font-size:clamp(1.8rem,4vw,3rem);position:relative}.cta-section p{color:#ffffffd1;margin-bottom:34px;font-size:1.05rem;position:relative}.gallery-hero{background:var(--forest);text-align:center;padding:70px 20px}.gallery-hero h1{color:var(--cream);margin-bottom:10px;font-family:Rye,serif;font-size:clamp(2rem,5vw,3.5rem)}.gallery-hero p{color:var(--tan);font-family:Caveat,cursive;font-size:1.3rem}.gallery-section{background:var(--cream);padding:60px 20px}.masonry-grid{columns:3;column-gap:16px;margin-bottom:48px}.gallery-item{break-inside:avoid;box-shadow:3px 3px 0 var(--tan);border-radius:12px;margin-bottom:16px;transition:transform .2s;position:relative;overflow:hidden}.gallery-item:hover{transform:scale(1.02)}.gallery-item img{width:100%;height:auto;display:block}.photo-caption{color:var(--tan);background:#2d5016d9;padding:8px 12px;font-family:Caveat,cursive;font-size:1rem;position:absolute;bottom:0;left:0;right:0}.gallery-item.placeholder{background:var(--forest);cursor:default;flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:40px 20px;display:flex}.gallery-item.placeholder:nth-child(3n+2){background:var(--pine);padding:60px 20px}.gallery-item.placeholder:nth-child(3n+3){background:var(--bark);padding:50px 20px}.ph-emoji{font-size:3rem}.ph-label{color:var(--tan);font-family:Caveat,cursive;font-size:1rem}.gallery-submit{background:var(--tan);border:2px dashed var(--bark);text-align:center;border-radius:14px;max-width:600px;margin:0 auto;padding:32px}.gallery-submit h3{color:var(--forest);margin-bottom:10px;font-family:Rye,serif;font-size:1.2rem}.gallery-submit p{color:#5a5a4a;font-size:.9rem;line-height:1.7}.gallery-submit a{color:var(--rust);font-weight:700}@media (width<=768px){.masonry-grid{columns:2}}@media (width<=480px){.masonry-grid{columns:1}}:root{--forest:#2d5016;--pine:#3e6b22;--sage:#7a9e5a;--cream:#f5edd6;--tan:#e8d5a3;--bark:#8b5e3c;--rust:#c4622d;--gold:#d4943a;--sky:#7bbfcf}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--cream);color:var(--forest);font-family:Nunito,sans-serif;overflow-x:hidden}.container{max-width:1060px;margin:0 auto}.section-label{color:var(--rust);letter-spacing:.04em;margin-bottom:8px;font-family:Caveat,cursive;font-size:1.2rem;display:block}.section-title{color:var(--forest);margin-bottom:14px;font-family:Rye,serif;font-size:clamp(1.8rem,4vw,2.8rem);line-height:1.15}.section-body{color:#4a4a3a;max-width:580px;font-size:1rem;line-height:1.8}.btn-primary{background:var(--rust);color:#fff;letter-spacing:.05em;text-transform:uppercase;cursor:pointer;border:none;border-radius:50px;padding:15px 34px;font-family:Nunito,sans-serif;font-size:1rem;font-weight:800;text-decoration:none;transition:transform .2s,box-shadow .2s;display:inline-block;box-shadow:0 4px 20px #c4622d80}.btn-primary:hover{transform:translateY(-3px);box-shadow:0 8px 28px #c4622d99}.btn-outline{border:2px solid var(--tan);color:var(--tan);letter-spacing:.05em;text-transform:uppercase;cursor:pointer;background:0 0;border-radius:50px;padding:13px 30px;font-family:Nunito,sans-serif;font-size:1rem;font-weight:700;text-decoration:none;transition:all .2s;display:inline-block}.btn-outline:hover{background:var(--tan);color:var(--forest)}.btn-white{color:var(--rust);letter-spacing:.05em;text-transform:uppercase;cursor:pointer;background:#fff;border:none;border-radius:50px;padding:15px 40px;font-family:Nunito,sans-serif;font-size:1rem;font-weight:800;text-decoration:none;transition:transform .2s,box-shadow .2s;display:inline-block;box-shadow:0 4px 20px #0000002e}.btn-white:hover{transform:translateY(-3px);box-shadow:0 8px 26px #0000003d}.banner{background:var(--rust);color:#fff;text-align:center;letter-spacing:.06em;text-transform:uppercase;padding:13px;font-size:.88rem;font-weight:700}@keyframes fadeDown{0%{opacity:0;transform:translateY(-16px)}to{opacity:1;transform:translateY(0)}}@keyframes twinkle{0%,to{opacity:.8;transform:scale(1)}50%{opacity:.15;transform:scale(.5)}}@keyframes sway{0%,to{transform:rotate(-1.2deg)}50%{transform:rotate(1.2deg)}}
