@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 li{align-items:center;gap:16px;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}}.nav-hamburger{color:var(--tan);cursor:pointer;background:0 0;border:none;padding:4px 8px;font-size:1.5rem;display:none}@media (width<=768px){.nav-hamburger{display:block}.nav-links{background:var(--forest);z-index:99;flex-direction:column;gap:16px;padding:20px;display:none;position:fixed;top:57px;left:0;right:0;box-shadow:0 4px 12px #0000004d}.nav-links.open{display:flex}}.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}.footer-inner .trail-image{width:7%;height:auto}@media (width<=768px){.footer-inner{grid-template-columns:1fr;gap:28px}}.hero{background:linear-gradient(180deg,#0a0016 0%, var(--forest) 50%, var(--pine) 80%, var(--sage) 100%);text-align:center;flex-direction:column;justify-content:flex-start;align-items:center;padding:60px 20px 0;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}.hero-pups{z-index:2;width:600px;margin-top:24px;margin-bottom:-8px;position:relative}.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-box>span:first-child{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:300px;height:300px;display:inline-flex;overflow:hidden}.cabin-box .about-image{object-fit:cover;object-position:0% 80%;width:100%;height:100%;display:block;transform:scale(.85)}.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);text-align:center;padding:80px 20px}.pricing .container{flex-direction:column;align-items:center;display:flex}.price-grid{grid-template-columns:repeat(2,1fr);gap:28px;width:100%;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;flex-direction:column;align-items:center;padding:40px 32px;transition:transform .2s;display:flex;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;padding:0;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{box-sizing:border-box;background:var(--rust);color:#fff;letter-spacing:.05em;text-transform:uppercase;border-radius:30px;width:100%;margin-top:auto;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 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}}.booking-wrap{background:var(--cream);min-height:100vh;padding:60px 20px}.booking-header{text-align:center;margin-bottom:48px}.booking-header .section-body{margin:0 auto}.custom-rate-badge{background:var(--forest);color:var(--cream);border-radius:30px;margin-top:14px;padding:8px 20px;font-family:Caveat,cursive;font-size:1.1rem;display:inline-block}.custom-rate-badge strong{color:var(--gold)}.booking-success{text-align:center;border:2px solid var(--tan);box-shadow:5px 5px 0 var(--tan);background:#fff;border-radius:20px;max-width:560px;margin:0 auto;padding:60px 40px}.success-icon{margin-bottom:16px;font-size:4rem;display:block}.booking-success h2{color:var(--forest);margin-bottom:16px;font-family:Rye,serif;font-size:2rem}.booking-success p{color:#555;margin-bottom:12px;font-size:1rem;line-height:1.7}.success-sub{color:#888!important;margin-bottom:28px!important;font-size:.88rem!important}.btn-primary{background:var(--rust);color:#fff;cursor:pointer;border:none;border-radius:30px;padding:14px 32px;font-family:Nunito,sans-serif;font-size:.95rem;font-weight:800;transition:opacity .2s}.btn-primary:hover{opacity:.88}.calendar-card{border:2px solid var(--tan);box-shadow:5px 5px 0 var(--tan);background:#fff;border-radius:20px;padding:32px}.booking-layout{grid-template-columns:1fr 360px;align-items:start;gap:32px;display:grid}.cal-nav{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.cal-nav-btn{background:var(--forest);color:#fff;cursor:pointer;border:none;border-radius:50%;width:36px;height:36px;font-size:1rem;transition:background .2s}.cal-nav-btn:hover{background:var(--rust)}.cal-month{color:var(--forest);font-family:Rye,serif;font-size:1.2rem}.cal-instruction{text-align:center;color:var(--rust);margin-bottom:16px;font-family:Caveat,cursive;font-size:1.1rem}.cal-grid{grid-template-columns:repeat(7,1fr);gap:4px;display:grid}.cal-day-label{text-align:center;color:#aaa;text-transform:uppercase;letter-spacing:.05em;padding:4px 0 8px;font-size:.72rem;font-weight:800}.cal-date{aspect-ratio:1;color:var(--forest);cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;font-family:Nunito,sans-serif;font-size:.9rem;font-weight:600;transition:background .15s,color .15s;display:flex}.cal-date:hover:not(:disabled){background:var(--tan)}.cal-date.past{color:#ccc;cursor:not-allowed}.cal-date.unavailable{color:#ddd;cursor:not-allowed;background:#f5f5f5;text-decoration:line-through}.cal-date.in-range{background:#2d50161a;border-radius:0}.cal-date.check-in{background:var(--forest);color:#fff;border-radius:8px 0 0 8px}.cal-date.check-out{background:var(--forest);color:#fff;border-radius:0 8px 8px 0}.cal-legend{justify-content:center;gap:20px;margin-top:20px;display:flex}.dot{border-radius:3px;width:12px;height:12px;display:inline-block}.dot.available{background:var(--cream);border:2px solid var(--tan)}.dot.unavailable-dot{background:#f5f5f5;border:2px solid #ddd}.dot.selected{background:var(--forest)}.dog-selector{border-top:2px dashed var(--tan);margin-top:24px;padding-top:20px}.dog-selector-title{color:var(--forest);margin-bottom:12px;font-family:Rye,serif;font-size:.95rem}.dog-checkbox-label{background:var(--cream);cursor:pointer;border:2px solid #0000;border-radius:10px;align-items:center;gap:12px;margin-bottom:8px;padding:12px 16px;transition:background .15s;display:flex}.dog-checkbox-label:hover{background:var(--tan)}.dog-checkbox-label input[type=checkbox]{width:17px;height:17px;accent-color:var(--forest);flex-shrink:0}.dog-checkbox-info{flex-direction:column;flex:1;display:flex}.dog-checkbox-info strong{color:var(--forest);font-size:.95rem}.dog-checkbox-info span{color:#888;font-size:.78rem}.dog-rate{color:var(--rust);white-space:nowrap;font-size:.8rem;font-weight:800}.btn-add-dog-link{color:var(--rust);cursor:pointer;background:0 0;border:none;margin-top:6px;padding:0;font-family:Nunito,sans-serif;font-size:.85rem;font-weight:700}.btn-add-dog-link:hover{text-decoration:underline}.summary-card{border:2px solid var(--tan);box-shadow:5px 5px 0 var(--tan);background:#fff;border-radius:20px;padding:28px;position:sticky;top:90px}.summary-card h3{color:var(--forest);margin-bottom:20px;font-family:Rye,serif;font-size:1.2rem}.summary-prompt{color:#aaa;margin-bottom:20px;font-size:.9rem;line-height:1.6}.summary-row{color:#555;justify-content:space-between;align-items:center;margin-bottom:10px;font-size:.9rem;display:flex}.summary-row strong{color:var(--forest);font-weight:800}.summary-row.discount{color:var(--sage);font-weight:700}.summary-row.dog-extra{color:var(--bark);font-size:.82rem}.summary-row.total{color:var(--forest);font-size:1rem;font-weight:800}.summary-row.deposit strong{color:var(--rust);font-size:1.1rem}.summary-row.legacy-rate{color:var(--forest);background:var(--tan);border-radius:6px;margin-bottom:8px;padding:6px 10px;font-size:.85rem;font-weight:700}.summary-divider{background:var(--tan);height:1px;margin:14px 0}.summary-policy{color:var(--forest);background:#f0f7ed;border-radius:8px;margin:14px 0;padding:10px 12px;font-size:.82rem;font-weight:700}.summary-error{color:#721c24;background:#f8d7da;border-radius:8px;margin-bottom:14px;padding:10px 12px;font-size:.85rem}.btn-book{background:var(--rust);color:#fff;cursor:pointer;border:none;border-radius:12px;width:100%;margin-top:8px;padding:16px;font-family:Nunito,sans-serif;font-size:1rem;font-weight:800;transition:opacity .2s,transform .2s}.btn-book:hover:not(:disabled){opacity:.88;transform:translateY(-2px)}.btn-book:disabled{cursor:not-allowed;background:#ccc;transform:none}.summary-login-note{color:#888;text-align:center;margin-top:12px;font-size:.82rem}.link-btn{color:var(--rust);cursor:pointer;background:0 0;border:none;margin-left:4px;font-family:Nunito,sans-serif;font-size:.82rem;font-weight:700}@media (width<=900px){.booking-layout{grid-template-columns:1fr}.summary-card{position:static}}.account-wrap{background:var(--cream);min-height:100vh;padding:60px 20px}.account-loading{min-height:100vh;color:var(--forest);background:var(--cream);justify-content:center;align-items:center;font-family:Rye,serif;font-size:1.4rem;display:flex}.account-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:32px;display:flex}.account-header-actions{align-items:center;gap:12px;display:flex}.account-setup-banner{background:var(--gold);color:var(--forest);border-radius:12px;align-items:flex-start;gap:12px;margin-bottom:24px;padding:16px 20px;font-size:.95rem;line-height:1.6;display:flex}.account-setup-banner span{flex-shrink:0;font-size:1.8rem}.account-setup-banner strong{margin-bottom:4px;font-size:1rem;display:block}.btn-pay-deposit{background:var(--rust);color:#fff;border-radius:20px;margin-top:6px;padding:8px 16px;font-family:Nunito,sans-serif;font-size:.82rem;font-weight:800;text-decoration:none;transition:opacity .2s;display:inline-block}.btn-pay-deposit:hover{opacity:.85}.btn-book-another{background:var(--forest);color:#fff;cursor:pointer;border:none;border-radius:30px;padding:10px 20px;font-family:Nunito,sans-serif;font-size:.88rem;font-weight:800;transition:background .2s}.btn-book-another:hover{background:var(--rust)}.btn-signout{border:2px solid var(--tan);color:#888;cursor:pointer;background:0 0;border-radius:30px;padding:10px 20px;font-family:Nunito,sans-serif;font-size:.88rem;font-weight:700;transition:all .2s}.btn-signout:hover{border-color:var(--rust);color:var(--rust)}.account-message{color:#155724;background:#d4edda;border-radius:10px;margin-bottom:24px;padding:12px 16px;font-size:.9rem;font-weight:700}.account-error{color:#721c24;background:#f8d7da;border-radius:10px;margin-bottom:24px;padding:12px 16px;font-size:.9rem;line-height:1.6}.account-tabs{border-bottom:2px solid var(--tan);gap:8px;margin-bottom:32px;display:flex}.account-tab{color:#888;cursor:pointer;background:0 0;border:none;border-bottom:3px solid #0000;margin-bottom:-2px;padding:12px 20px;font-family:Nunito,sans-serif;font-size:.9rem;font-weight:700;transition:color .2s,border-color .2s}.account-tab.active{color:var(--forest);border-bottom-color:var(--forest)}.account-tab:hover{color:var(--forest)}.bookings-list{flex-direction:column;gap:16px;display:flex}.empty-state{text-align:center;border:2px dashed var(--tan);background:#fff;border-radius:16px;padding:60px 20px}.empty-icon{margin-bottom:12px;font-size:3rem;display:block}.empty-state p{color:#888;margin-bottom:20px}.btn-primary{background:var(--rust);color:#fff;cursor:pointer;border:none;border-radius:30px;padding:12px 28px;font-family:Nunito,sans-serif;font-size:.9rem;font-weight:800}.booking-item{border:2px solid var(--tan);box-shadow:3px 3px 0 var(--tan);background:#fff;border-radius:16px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;padding:22px 24px;display:flex}.booking-dates{align-items:center;gap:16px;display:flex}.booking-icon{font-size:2rem}.booking-range{color:var(--forest);margin-bottom:4px;font-size:1rem;font-weight:800}.booking-nights{color:#888;font-size:.85rem}.booking-right{text-align:right;flex-direction:column;align-items:flex-end;gap:4px;display:flex}.booking-total{color:var(--forest);font-family:Rye,serif;font-size:1.3rem}.booking-deposit{color:#888;font-size:.8rem}.booking-status{text-transform:uppercase;letter-spacing:.05em;font-size:.85rem;font-weight:800}.btn-cancel{color:#999;cursor:pointer;background:0 0;border:1px solid #ddd;border-radius:20px;margin-top:4px;padding:4px 12px;font-family:Nunito,sans-serif;font-size:.78rem;transition:all .2s}.btn-cancel:hover{border-color:var(--rust);color:var(--rust)}.dogs-section{flex-direction:column;gap:16px;display:flex}.dogs-disclaimer{border:2px solid var(--sage);color:var(--forest);background:#f0f7ed;border-radius:12px;padding:14px 18px;font-size:.9rem;line-height:1.6}.dog-card{border:2px solid var(--tan);box-shadow:3px 3px 0 var(--tan);background:#fff;border-radius:16px;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:20px;padding:22px 24px;display:flex}.dog-card-name{color:var(--forest);margin-bottom:6px;font-family:Rye,serif;font-size:1.1rem}.dog-card-details{color:#888;margin-bottom:8px;font-size:.88rem}.dog-flags{flex-wrap:wrap;gap:12px;margin-bottom:6px;display:flex}.dog-card-actions{flex-shrink:0;gap:8px;display:flex}.btn-edit-dog{background:var(--forest);color:#fff;cursor:pointer;border:none;border-radius:20px;padding:7px 16px;font-family:Nunito,sans-serif;font-size:.82rem;font-weight:700;transition:opacity .2s}.btn-edit-dog:hover{opacity:.85}.btn-delete-dog{color:#999;cursor:pointer;background:0 0;border:1px solid #ddd;border-radius:20px;padding:7px 16px;font-family:Nunito,sans-serif;font-size:.82rem;font-weight:700;transition:all .2s}.btn-delete-dog:hover{border-color:var(--rust);color:var(--rust)}.dog-form-card{border:2px solid var(--forest);box-shadow:4px 4px 0 var(--forest);background:#fff;border-radius:16px;padding:28px}.dog-form-header{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.btn-cancel-edit{color:#999;cursor:pointer;background:0 0;border:1px solid #ddd;border-radius:20px;padding:6px 14px;font-family:Nunito,sans-serif;font-size:.82rem}.btn-cancel-edit:hover{border-color:var(--rust);color:var(--rust)}.btn-add-dog{background:var(--cream);border:2px dashed var(--forest);color:var(--forest);cursor:pointer;border-radius:14px;width:100%;padding:16px;font-family:Nunito,sans-serif;font-size:.95rem;font-weight:800;transition:background .2s}.btn-add-dog:hover{background:var(--tan)}.profile-form{border:2px solid var(--tan);box-shadow:5px 5px 0 var(--tan);background:#fff;border-radius:20px;max-width:720px;padding:36px}.form-section-title{color:var(--forest);margin-bottom:20px;font-family:Rye,serif;font-size:1.2rem}.form-grid{grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px;display:grid}.field{flex-direction:column;gap:6px;display:flex}.field label{color:var(--forest);font-size:.85rem;font-weight:700}.field input,.field textarea{border:2px solid var(--tan);color:#333;resize:vertical;border-radius:10px;outline:none;padding:12px 14px;font-family:Nunito,sans-serif;font-size:.95rem;transition:border-color .2s}.field input:focus,.field textarea:focus{border-color:var(--forest)}.checkbox-group{flex-direction:column;gap:12px;margin-bottom:24px;display:flex}.checkbox-label{color:#444;cursor:pointer;align-items:center;gap:10px;font-size:.9rem;display:flex}.checkbox-label input{width:16px;height:16px;accent-color:var(--forest)}.btn-save{background:var(--forest);color:#fff;cursor:pointer;border:none;border-radius:30px;padding:14px 32px;font-family:Nunito,sans-serif;font-size:.95rem;font-weight:800;transition:opacity .2s}.btn-save:hover{opacity:.88}.btn-save:disabled{opacity:.6;cursor:not-allowed}@media (width<=640px){.form-grid{grid-template-columns:1fr}.account-header{flex-direction:column}.booking-item{flex-direction:column;align-items:flex-start}.booking-right{align-items:flex-start}.dog-card{flex-direction:column}}.admin-wrap{background:var(--cream);min-height:100vh;padding:60px 20px}.admin-loading{min-height:100vh;color:var(--forest);background:var(--cream);justify-content:center;align-items:center;font-family:Rye,serif;font-size:1.4rem;display:flex}.modal-overlay{z-index:200;background:#00000080;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal-card{background:#fff;border-radius:16px;width:100%;max-width:480px;padding:32px;box-shadow:0 20px 60px #0000004d}.modal-card h3{color:var(--forest);margin-bottom:8px;font-family:Rye,serif;font-size:1.2rem}.modal-card p{color:#888;margin-bottom:16px;font-size:.88rem;line-height:1.6}.modal-card textarea{border:2px solid var(--tan);resize:vertical;border-radius:10px;outline:none;width:100%;margin-bottom:16px;padding:12px 14px;font-family:Nunito,sans-serif;font-size:.92rem;transition:border-color .2s}.modal-card textarea:focus{border-color:var(--forest)}.modal-actions{gap:12px;display:flex}.pending-banner{background:var(--gold);color:var(--forest);border-radius:12px;margin-bottom:20px;padding:14px 20px;font-size:.92rem;font-weight:600}.tab-badge{background:var(--rust);color:#fff;vertical-align:middle;border-radius:10px;margin-left:6px;padding:2px 7px;font-size:.7rem;font-weight:800}.admin-header{justify-content:space-between;align-items:flex-start;margin-bottom:32px;display:flex}.btn-signout-admin{border:2px solid var(--tan);color:#888;cursor:pointer;background:0 0;border-radius:30px;padding:10px 20px;font-family:Nunito,sans-serif;font-size:.88rem;font-weight:700;transition:all .2s}.btn-signout-admin:hover{border-color:var(--rust);color:var(--rust)}.admin-stats{grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:32px;display:grid}.stat-card{text-align:center;border:2px solid var(--tan);box-shadow:3px 3px 0 var(--tan);background:#fff;border-radius:16px;padding:24px}.stat-num{color:var(--forest);margin-bottom:4px;font-family:Rye,serif;font-size:2rem}.stat-label{color:#888;text-transform:uppercase;letter-spacing:.05em;font-size:.78rem;font-weight:700}.admin-message{color:#155724;background:#d4edda;border-radius:10px;margin-bottom:20px;padding:12px 16px;font-size:.9rem;font-weight:700}.admin-tabs{border-bottom:2px solid var(--tan);gap:8px;margin-bottom:24px;display:flex}.admin-tab{color:#888;cursor:pointer;background:0 0;border:none;border-bottom:3px solid #0000;margin-bottom:-2px;padding:12px 20px;font-family:Nunito,sans-serif;font-size:.9rem;font-weight:700;transition:color .2s,border-color .2s}.admin-tab.active{color:var(--forest);border-bottom-color:var(--forest)}.admin-tab:hover{color:var(--forest)}.empty-msg{color:#aaa;padding:20px 0}.admin-booking-card{border:2px solid var(--tan);background:#fff;border-radius:14px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;margin-bottom:12px;padding:20px 24px;transition:border-color .2s;display:flex}.admin-booking-card.pending{border-color:var(--gold);box-shadow:3px 3px 0 var(--gold)}.admin-booking-dog{color:var(--forest);margin-bottom:4px;font-size:1rem}.admin-booking-owner{color:#888;margin-bottom:4px;font-size:.82rem}.admin-booking-dates{color:#555;margin-bottom:4px;font-size:.88rem;font-weight:600}.admin-booking-financials{color:#888;font-size:.82rem}.decline-reason-note{color:#aaa;margin-top:4px;font-size:.78rem;font-style:italic}.two-dogs-badge{background:var(--gold);color:var(--forest);border-radius:10px;margin-left:6px;padding:2px 8px;font-size:.72rem;font-weight:800}.admin-booking-actions{flex-direction:column;align-items:flex-end;gap:6px;min-width:140px;display:flex}.admin-status{text-transform:uppercase;letter-spacing:.05em;margin-bottom:4px;font-size:.78rem;font-weight:800}.btn-approve,.btn-confirm,.btn-complete,.btn-admin-cancel{cursor:pointer;text-align:center;border:none;border-radius:20px;width:100%;padding:7px 14px;font-family:Nunito,sans-serif;font-size:.78rem;font-weight:700;transition:opacity .2s}.btn-approve,.btn-confirm{background:var(--forest);color:#fff}.btn-complete{background:var(--sage);color:#fff}.btn-admin-cancel{color:#999;background:#f5f5f5}.btn-approve:hover,.btn-confirm:hover,.btn-complete:hover,.btn-admin-cancel:hover{opacity:.82}.btn-approve:disabled,.btn-confirm:disabled,.btn-complete:disabled,.btn-admin-cancel:disabled{opacity:.5;cursor:not-allowed}.client-card{border:2px solid var(--tan);background:#fff;border-radius:14px;margin-bottom:12px;padding:20px 24px}.client-name{color:var(--forest);margin-bottom:4px;font-size:1rem;font-weight:800}.client-detail{color:#888;margin-bottom:3px;font-size:.85rem}.client-dog{background:var(--cream);color:#555;border-radius:10px;margin-top:12px;padding:12px 16px;font-size:.88rem}.custom-rate-row{border-top:1px dashed var(--tan);margin-top:12px;padding-top:12px}.custom-rate-label{color:var(--forest);margin-bottom:8px;font-size:.82rem;font-weight:700;display:block}.custom-rate-hint{color:#aaa;margin-left:6px;font-size:.78rem;font-weight:400}.custom-rate-input-row{align-items:center;gap:6px;display:flex}.rate-prefix{color:var(--forest);font-size:1rem;font-weight:800}.custom-rate-input{border:2px solid var(--tan);border-radius:8px;outline:none;width:80px;padding:8px 10px;font-family:Nunito,sans-serif;font-size:.92rem;transition:border-color .2s}.custom-rate-input:focus{border-color:var(--forest)}.btn-save-rate{background:var(--forest);color:#fff;cursor:pointer;border:none;border-radius:8px;padding:8px 16px;font-family:Nunito,sans-serif;font-size:.82rem;font-weight:700;transition:opacity .2s}.btn-save-rate:hover{opacity:.85}.btn-save-rate:disabled{opacity:.5;cursor:not-allowed}.custom-rate-active{color:var(--sage);margin-top:6px;font-size:.8rem;font-weight:700}.dog-flags{flex-wrap:wrap;gap:12px;margin-top:6px;display:flex}.flag-ok{color:var(--sage);font-size:.78rem;font-weight:700}.flag-warn{color:var(--rust);font-size:.78rem;font-weight:700}.dog-needs{color:#888;margin-top:6px;font-size:.82rem;font-style:italic}.block-dates-wrap{flex-direction:column;gap:28px;display:flex}.block-form{border:2px solid var(--tan);box-shadow:4px 4px 0 var(--tan);background:#fff;border-radius:16px;padding:28px}.block-form h3{color:var(--forest);margin-bottom:6px;font-family:Rye,serif;font-size:1.1rem}.block-form p{color:#888;margin-bottom:20px;font-size:.88rem;line-height:1.6}.block-range-inputs{grid-template-columns:1fr 1fr;gap:14px;margin-bottom:16px;display:grid}.block-field-reason{grid-column:span 2}.block-field{flex-direction:column;gap:6px;display:flex}.block-field label{color:var(--forest);font-size:.82rem;font-weight:700}.block-field input{border:2px solid var(--tan);border-radius:9px;outline:none;padding:10px 13px;font-family:Nunito,sans-serif;font-size:.92rem;transition:border-color .2s}.block-field input:focus{border-color:var(--forest)}.block-actions{flex-wrap:wrap;gap:12px;display:flex}.btn-block{background:var(--rust);color:#fff;cursor:pointer;border:none;border-radius:10px;padding:11px 24px;font-family:Nunito,sans-serif;font-size:.9rem;font-weight:800;transition:opacity .2s}.btn-block:hover{opacity:.88}.btn-block:disabled{opacity:.6;cursor:not-allowed}.btn-unblock-range{border:2px solid var(--tan);color:#888;cursor:pointer;background:0 0;border-radius:10px;padding:11px 24px;font-family:Nunito,sans-serif;font-size:.9rem;font-weight:700;transition:all .2s}.btn-unblock-range:hover{border-color:var(--sage);color:var(--sage)}.blocked-list h3{color:var(--forest);margin-bottom:16px;font-family:Rye,serif}.blocked-item{border:2px solid var(--tan);color:var(--forest);background:#fff;border-radius:10px;justify-content:space-between;align-items:center;margin-bottom:8px;padding:13px 16px;font-size:.88rem;display:flex}.blocked-reason{color:#888}.btn-unblock{color:#999;cursor:pointer;background:0 0;border:1px solid #ddd;border-radius:20px;flex-shrink:0;padding:4px 12px;font-family:Nunito,sans-serif;font-size:.78rem;transition:all .2s}.btn-unblock:hover{border-color:var(--sage);color:var(--sage)}@media (width<=768px){.admin-stats{grid-template-columns:1fr 1fr}.admin-booking-card{flex-direction:column;align-items:flex-start}.admin-booking-actions{align-items:flex-start;width:100%}.block-range-inputs{grid-template-columns:1fr}.block-field-reason{grid-column:span 1}}.admin-calendar{border:2px solid var(--tan);box-shadow:4px 4px 0 var(--tan);background:#fff;border-radius:16px;margin-bottom:28px;padding:28px}.acal-header{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.acal-title{color:var(--forest);font-family:Rye,serif;font-size:1.3rem}.acal-nav{background:var(--forest);color:#fff;cursor:pointer;border:none;border-radius:50%;width:36px;height:36px;font-size:1rem;transition:background .2s}.acal-nav:hover{background:var(--rust)}.acal-legend{flex-wrap:wrap;gap:20px;margin-bottom:16px;display:flex}.legend-item{color:#888;align-items:center;gap:6px;font-size:.78rem;display:flex}.acal-dot{border-radius:3px;width:12px;height:12px;display:inline-block}.acal-dot.available{border:2px solid var(--sage);background:#f0f7ed}.acal-dot.booked{background:#d4943a}.acal-dot.blocked{background:#555}.acal-dot.today-dot{background:var(--gold)}.acal-grid{grid-template-columns:repeat(7,1fr);gap:4px;margin-bottom:20px;display:grid}.acal-day-label{text-align:center;color:#aaa;text-transform:uppercase;letter-spacing:.05em;padding:4px 0 8px;font-size:.72rem;font-weight:800}.acal-cell{cursor:pointer;border:2px solid #0000;border-radius:8px;flex-direction:column;align-items:center;gap:3px;min-height:56px;padding:6px 4px;transition:opacity .15s,transform .15s;display:flex}.acal-cell:hover:not(.empty){opacity:.85;transform:scale(1.04)}.acal-cell.empty{cursor:default}.acal-cell.available{background:#f0f7ed;border-color:#0000}.acal-cell.available:hover{border-color:var(--sage)}.acal-cell.booked{color:#fff;background:#d4943a}.acal-cell.blocked{color:#fff;background:#444}.acal-cell.is-today{border-width:2px;border-color:var(--gold)!important}.acal-cell.is-selected{border-width:2px;transform:scale(1.04);border-color:var(--rust)!important}.acal-date-num{font-size:.9rem;font-weight:800}.acal-cell.available .acal-date-num{color:#555}.acal-cell.booked .acal-date-num{color:#000}.acal-cell.blocked .acal-date-num{color:#ccc}.acal-cell-name{text-align:center;color:var(--tan);word-break:break-word;font-size:.65rem;font-weight:700;line-height:1.2}.acal-cell-reason{color:#aaa;text-align:center;font-size:.62rem}.acal-detail{border:2px solid var(--tan);border-radius:12px;margin-top:4px;padding:20px 22px}.acal-detail.available{border-color:var(--sage);background:#f0f7ed}.acal-detail.booked{border-color:var(--forest);background:#f0f5ea}.acal-detail.blocked{background:#f5f5f5;border-color:#aaa}.acal-detail-date{color:var(--forest);margin-bottom:12px;font-family:Rye,serif;font-size:1rem}.acal-detail-content{flex-direction:column;gap:8px;display:flex}.acal-detail-status{margin-bottom:4px;font-size:.9rem;font-weight:800;display:block}.acal-detail-status.available{color:var(--sage)}.acal-detail-status.booked{color:var(--forest)}.acal-detail-status.blocked{color:#555}.acal-detail-reason{color:#666;font-size:.85rem;font-style:italic}.acal-detail-booking{grid-template-columns:1fr 1fr;gap:8px;margin-top:4px;display:grid}.acal-detail-row{color:#444;flex-direction:column;gap:2px;font-size:.85rem;display:flex}.acal-detail-row strong{text-transform:uppercase;letter-spacing:.05em;color:#888;font-size:.75rem}.acal-loading{text-align:center;color:#888;padding:40px;font-family:Rye,serif}@media (width<=640px){.acal-cell{min-height:44px}.acal-cell-name{display:none}.acal-detail-booking{grid-template-columns:1fr}}.auth-wrap{background:linear-gradient(180deg, #0a0016 0%, var(--forest) 60%, var(--sage) 100%);justify-content:center;align-items:center;min-height:100vh;padding:40px 20px;display:flex}.auth-card{text-align:center;background:#fff;border-radius:20px;width:100%;max-width:420px;padding:48px 40px;box-shadow:0 20px 60px #0000004d}.auth-logo{margin-bottom:8px;font-size:3rem}.auth-title{color:var(--forest);margin-bottom:6px;font-family:Rye,serif;font-size:1.8rem}.auth-sub{color:#888;margin-bottom:28px;font-size:.95rem}.auth-message{color:#155724;background:#d4edda;border-radius:8px;margin-bottom:16px;padding:12px;font-size:.9rem}.auth-error{color:#721c24;background:#f8d7da;border-radius:8px;margin-bottom:16px;padding:12px;font-size:.9rem}.btn-google{border:2px solid var(--tan);color:#444;cursor:pointer;background:#fff;border-radius:10px;justify-content:center;align-items:center;gap:10px;width:100%;padding:12px;font-family:Nunito,sans-serif;font-size:.95rem;font-weight:700;transition:background .2s,border-color .2s;display:flex}.btn-google:hover{background:#f8f8f8;border-color:#ccc}.auth-divider{color:#ccc;align-items:center;gap:12px;margin:20px 0;font-size:.85rem;display:flex}.auth-divider:before,.auth-divider:after{content:"";background:#eee;flex:1;height:1px}.auth-form{text-align:left}.field{margin-bottom:16px}.field label{color:var(--forest);margin-bottom:6px;font-size:.85rem;font-weight:700;display:block}.field input{border:2px solid var(--tan);color:#333;border-radius:10px;outline:none;width:100%;padding:12px 14px;font-family:Nunito,sans-serif;font-size:.95rem;transition:border-color .2s}.field input:focus{border-color:var(--forest)}.btn-submit{background:var(--rust);color:#fff;cursor:pointer;border:none;border-radius:10px;width:100%;margin-top:8px;padding:14px;font-family:Nunito,sans-serif;font-size:1rem;font-weight:800;transition:opacity .2s}.btn-submit:hover{opacity:.88}.btn-submit:disabled{opacity:.6;cursor:not-allowed}.auth-switch{color:#888;margin-top:20px;font-size:.88rem}.auth-switch button{color:var(--rust);cursor:pointer;background:0 0;border:none;font-family:Nunito,sans-serif;font-size:.88rem;font-weight:700}@media (width<=480px){.auth-card{padding:36px 24px}}.payment-wrap{background:linear-gradient(180deg, #0a0016 0%, var(--forest) 60%, var(--sage) 100%);justify-content:center;align-items:center;min-height:100vh;padding:40px 20px;display:flex}.payment-card{background:#fff;border-radius:20px;width:100%;max-width:500px;padding:48px 40px;box-shadow:0 20px 60px #0000004d}.payment-logo{text-align:center;margin-bottom:8px;font-size:3rem}.payment-title{color:var(--forest);text-align:center;margin-bottom:6px;font-family:Rye,serif;font-size:1.8rem}.payment-sub{color:#888;text-align:center;margin-bottom:28px;font-size:.9rem}.payment-booking-summary{background:var(--cream);border-radius:12px;margin-bottom:24px;padding:18px 20px}.pbs-row{color:#555;justify-content:space-between;margin-bottom:8px;font-size:.88rem;display:flex}.pbs-row strong{color:var(--forest);font-weight:800}.pbs-row.discount{color:var(--sage);font-weight:700}.pbs-row.total{color:var(--forest);font-size:1rem;font-weight:800}.pbs-divider{background:var(--tan);height:1px;margin:12px 0}.payment-options{flex-direction:column;gap:12px;margin-bottom:20px;display:flex}.payment-option{border:2px solid var(--tan);cursor:pointer;border-radius:12px;align-items:center;gap:14px;padding:16px 18px;transition:border-color .2s,background .2s;display:flex}.payment-option:hover{border-color:var(--forest);background:#fafafa}.payment-option.selected{border-color:var(--forest);background:#f0f7ed}.po-radio{border:2px solid var(--tan);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:20px;height:20px;transition:border-color .2s;display:flex}.payment-option.selected .po-radio{border-color:var(--forest)}.po-radio-dot{background:0 0;border-radius:50%;width:10px;height:10px;transition:background .2s}.po-radio-dot.active{background:var(--forest)}.po-info{flex:1}.po-title{color:var(--forest);margin-bottom:3px;font-size:.95rem;font-weight:800}.po-desc{color:#888;font-size:.8rem;line-height:1.5}.po-badge{background:var(--sage);color:#fff;border-radius:10px;margin-top:5px;padding:2px 8px;font-size:.72rem;font-weight:800;display:inline-block}.po-amount{color:var(--rust);flex-shrink:0;font-family:Rye,serif;font-size:1.3rem}.payment-policies{flex-direction:column;gap:6px;margin-bottom:20px;display:flex}.policy-item{color:#888;font-size:.82rem;font-weight:600}.payment-error{color:#721c24;background:#f8d7da;border-radius:8px;margin-bottom:14px;padding:10px 12px;font-size:.85rem}.btn-pay{background:var(--rust);color:#fff;cursor:pointer;border:none;border-radius:12px;width:100%;margin-bottom:10px;padding:16px;font-family:Nunito,sans-serif;font-size:1rem;font-weight:800;transition:opacity .2s,transform .2s}.btn-pay:hover:not(:disabled){opacity:.88;transform:translateY(-2px)}.btn-pay:disabled{opacity:.6;cursor:not-allowed;transform:none}.btn-back{border:2px solid var(--tan);color:#888;cursor:pointer;background:0 0;border-radius:12px;width:100%;padding:12px;font-family:Nunito,sans-serif;font-size:.9rem;font-weight:700;transition:all .2s}.btn-back:hover:not(:disabled){border-color:var(--forest);color:var(--forest)}@media (width<=480px){.payment-card{padding:36px 24px}.po-amount{font-size:1.1rem}}:root{--forest:#3d1278;--pine:#5e2bad;--sage:#8b4fd8;--cream:#faf9fc;--tan:#eae6ee;--bark:#5e5368;--rust:#4a9b8e;--gold:#7bbfb5;--sky:#b2c9ce}*{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)}}
