:root{--forest:#214f40;--deep:#163a30;--leaf:#4c8064;--coral:#bf5b53;--cream:#f8f6f0;--sand:#eee9dc;--ink:#23342c;--muted:#79867c;--line:#e3dfd4;--serif:'Playfair Display',Georgia,serif;--sans:'DM Sans',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--sans)}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.topline{background:var(--deep);color:#e6e2d5;text-align:center;padding:8px;font-size:9px;letter-spacing:.12em}.topline a{color:#e9c78b}.nav{height:78px;padding:0 7%;display:flex;justify-content:space-between;align-items:center;background:#f8f6f0f4;backdrop-filter:blur(12px);position:sticky;top:0;z-index:20;border-bottom:1px solid #e3dfd4}.brand{display:flex;align-items:center;gap:10px}.logo{width:46px;height:46px;object-fit:cover;border-radius:50%;border:1px solid #d6d1c5}.brand-title{font:21px var(--serif);color:var(--forest)}.brand-title small{display:block;font:7px var(--sans);letter-spacing:.19em;color:#7c877d;text-transform:uppercase;margin-top:4px}.navlinks{display:flex;align-items:center;gap:28px}.navlinks a{font-size:9px;letter-spacing:.12em;text-transform:uppercase;color:#5c6a60}.navlinks a:hover{color:var(--coral)}.navbook{background:var(--forest);color:white;padding:13px 17px;font-size:9px;letter-spacing:.12em;text-transform:uppercase}.navbook:hover{background:var(--leaf)}.hamb{display:none;border:0;background:none;color:var(--forest);font-size:22px}.hero{min-height:615px;display:flex;align-items:center;padding:7% 9%;background:linear-gradient(90deg,rgba(248,246,240,.98) 0%,rgba(248,246,240,.86) 34%,rgba(248,246,240,.13) 72%),url('assets/sniffy-hero.png') center/cover}.hero-copy{max-width:530px;animation:rise .8s both}.eyebrow{font:8px 'DM Mono',monospace;color:var(--coral);letter-spacing:.19em;text-transform:uppercase}.hero h1{font:clamp(54px,7vw,84px)/.96 var(--serif);font-weight:400;color:var(--forest);letter-spacing:-.04em;margin:18px 0}.hero h1 em{color:var(--coral);font-weight:400}.hero p{max-width:390px;color:#68766c;font-size:12px;line-height:1.9}.actions{display:flex;gap:13px;align-items:center;margin-top:23px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:15px;background:var(--forest);color:#fff;padding:14px 19px;border:0;font-size:8px;font-weight:700;text-transform:uppercase;letter-spacing:.13em;cursor:pointer;transition:.25s}.btn:hover{background:var(--leaf);transform:translateY(-2px)}.btn-light{background:transparent;color:var(--forest);border:1px solid #bdc8bd}.hero-caption{position:absolute;right:7%;bottom:25px;color:#57655b;font:8px 'DM Mono';letter-spacing:.13em;text-transform:uppercase}.hero{position:relative}.proof{display:grid;grid-template-columns:repeat(3,1fr);background:#e7ece3;padding:23px 9%}.proof div{text-align:center;border-right:1px solid #cdd6ca;color:#77847a;font:8px 'DM Mono';letter-spacing:.1em;text-transform:uppercase}.proof div:last-child{border:0}.proof strong{display:block;font:18px var(--serif);color:var(--forest);letter-spacing:0;text-transform:none;margin-bottom:4px}.section{padding:78px 8%}.heading{text-align:center;margin:0 auto 34px;max-width:650px}.heading h2{font:clamp(35px,5vw,53px)/1.04 var(--serif);font-weight:400;color:var(--forest);margin:12px 0}.heading p{font-size:10px;line-height:1.9;color:var(--muted)}.services{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.service{background:#fff;border:1px solid #e9e5da;overflow:hidden}.service img{width:100%;height:205px;object-fit:cover;display:block;transition:transform .6s}.service:hover img{transform:scale(1.04)}.service-body{padding:18px}.service-body small{font:8px 'DM Mono';color:var(--coral);letter-spacing:.15em;text-transform:uppercase}.service-body h3{font:22px var(--serif);font-weight:400;color:var(--forest);margin:8px 0}.service-body p{font-size:10px;line-height:1.8;color:var(--muted);min-height:36px}.service-body button{border:0;border-bottom:1px solid var(--coral);background:none;padding:5px 0;color:var(--forest);font-size:8px;letter-spacing:.12em;text-transform:uppercase}.booking{background:#e9ede5}.booking-grid{display:grid;grid-template-columns:.72fr 1.28fr;gap:6%;align-items:start}.book-intro{position:sticky;top:104px}.book-intro h2{font:clamp(36px,4vw,53px)/1.02 var(--serif);font-weight:400;color:var(--forest);margin:13px 0}.book-intro p{font-size:10px;color:#758177;line-height:1.9}.checklist{list-style:none;padding:0;margin:21px 0}.checklist li{font-size:9px;color:#657367;padding:9px 0;border-bottom:1px solid #d5ddd3}.checklist li:before{content:'✓';color:var(--leaf);font-weight:bold;margin-right:10px}.location-mini{background:#fff;padding:14px;margin-top:22px;font-size:9px;line-height:1.7;color:#657267}.location-mini strong{display:block;color:var(--forest);font:16px var(--serif)}.booking-card{background:#fff;padding:28px 30px;box-shadow:0 12px 40px #3049380b}.steps{display:flex;gap:0;margin-bottom:25px}.step{flex:1;border-bottom:2px solid var(--line);padding:0 4px 12px;color:#a0a89f;font:8px 'DM Mono';letter-spacing:.1em;text-transform:uppercase}.step span{display:inline-grid;place-items:center;width:22px;height:22px;border:1px solid #d9ded7;border-radius:50%;margin-right:6px}.step.active{border-color:var(--forest);color:var(--forest)}.step.active span,.step.done span{background:var(--forest);border-color:var(--forest);color:#fff}.step.done{color:var(--leaf);border-color:var(--leaf)}.panel h3{font:25px var(--serif);font-weight:400;color:var(--forest);margin:0 0 4px}.panel>p{font-size:9px;color:var(--muted);margin:0 0 19px}.formgrid{display:grid;grid-template-columns:1fr 1fr;gap:13px}.field{margin-bottom:13px}.field.full{grid-column:1/-1}.field label{display:block;font:8px 'DM Mono';letter-spacing:.08em;text-transform:uppercase;color:#66746a;margin-bottom:6px}.field input,.field select,.field textarea{display:block;width:100%;border:1px solid #e2e5dd;background:#fbfcf9;padding:11px 12px;outline:0;color:var(--ink);font-size:10px}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--leaf);box-shadow:0 0 0 2px #4c806420}.field textarea{min-height:75px;resize:vertical}.hint{font-size:8px;color:#8a958c;line-height:1.6;margin-top:5px}.form-actions{display:flex;justify-content:space-between;align-items:center;margin-top:10px}.back{border:0;background:none;color:#6f7a71;font-size:9px;padding:12px 0}.hidden{display:none!important}.summary{background:#f4f5ef;padding:15px;margin:10px 0 16px}.summary h4{font:18px var(--serif);font-weight:400;color:var(--forest);margin:0 0 8px}.summary-line{display:flex;justify-content:space-between;gap:10px;border-bottom:1px solid #e0e5dc;padding:7px 0;font-size:9px;color:#6a776e}.summary-line b{color:#32473a;text-align:right}.consent{display:flex;align-items:flex-start;gap:8px;font-size:8px;line-height:1.6;color:#728076;margin:12px 0}.consent input{margin-top:2px;accent-color:var(--forest)}.wa-note{font-size:8px;color:#809087;line-height:1.7;margin:12px 0 0}.how{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);padding:1px}.how-card{background:var(--cream);padding:27px 10%;text-align:center}.how-card span{font:8px 'DM Mono';color:var(--coral)}.how-card h3{font:21px var(--serif);font-weight:400;color:var(--forest);margin:10px 0 6px}.how-card p{font-size:9px;line-height:1.8;color:var(--muted)}.visit{display:grid;grid-template-columns:1fr 1fr;gap:6%;align-items:center}.visit h2{font:clamp(35px,5vw,53px)/1.02 var(--serif);font-weight:400;color:var(--forest);margin:12px 0}.visit p{font-size:10px;line-height:1.9;color:var(--muted)}.address{background:#e9ede5;padding:22px}.address strong{display:block;font:20px var(--serif);color:var(--forest);margin-bottom:9px}.address p{margin:0}.address .btn{margin-top:15px}.footer{background:var(--deep);color:#dbe2d9;padding:42px 8% 18px}.foot{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:28px}.footer .brand-title{color:#f2e9da}.footer .brand-title small{color:#d0b985}.footer p,.footer a{font-size:9px;line-height:2;color:#bdc9be}.footer a{display:block}.footer h4{font:17px var(--serif);font-weight:400;color:#e6d5b1;margin:0 0 10px}.copyright{border-top:1px solid #3d5549;margin-top:27px;padding-top:14px;display:flex;justify-content:space-between;color:#92a196;font:7px 'DM Mono';letter-spacing:.09em}.toast{position:fixed;bottom:20px;left:50%;transform:translate(-50%,18px);background:var(--forest);color:white;padding:12px 18px;font-size:9px;opacity:0;transition:.25s;z-index:70;pointer-events:none}.toast.show{opacity:1;transform:translate(-50%,0)}.success{padding:12px;background:#e4f0e3;border-left:3px solid var(--leaf);font-size:9px;line-height:1.7;color:#365745;margin-top:12px;display:none}.success.show{display:block}.reveal{opacity:0;transform:translateY(16px);transition:opacity .7s,transform .7s}.reveal.visible{opacity:1;transform:none}@keyframes rise{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
@media(max-width:800px){.nav{padding:0 5%;height:68px}.navlinks{gap:14px}.navlinks a{font-size:8px}.navbook{padding:12px;font-size:8px}.hero{min-height:570px;padding:7%}.section{padding:65px 6%}.booking-grid{grid-template-columns:.8fr 1.2fr;gap:4%}.booking-card{padding:22px}.services{gap:10px}.service img{height:165px}.visit{gap:25px}.foot{grid-template-columns:1.2fr 1fr 1fr}}
@media(max-width:580px){.topline{font-size:7px}.nav{height:62px}.hamb{display:block}.navlinks{display:none}.navlinks.mobile{display:flex;position:absolute;top:61px;left:0;right:0;flex-direction:column;align-items:flex-start;background:var(--cream);padding:20px 7%;gap:18px;box-shadow:0 10px 25px #14271a16}.navlinks.mobile a{font-size:9px}.navbook{font-size:7px;padding:11px}.brand-title{font-size:17px}.logo{width:40px;height:40px}.hero{min-height:575px;padding:60px 7%;background-position:64% center}.hero h1{font-size:59px}.hero-caption{display:none}.proof{padding:19px 3%}.proof div{font-size:7px}.proof strong{font-size:16px}.section{padding:58px 5%}.services{grid-template-columns:1fr}.service{display:grid;grid-template-columns:.85fr 1.15fr}.service img{height:100%;min-height:155px}.service-body{padding:15px}.service-body h3{font-size:19px}.service-body p{min-height:0}.booking-grid{grid-template-columns:1fr;gap:20px}.book-intro{position:static}.book-intro h2{font-size:43px}.checklist{display:grid;grid-template-columns:1fr 1fr;gap:0 12px}.booking-card{padding:19px 16px}.steps{margin-bottom:20px}.step{font-size:7px}.step span{width:19px;height:19px;margin-right:3px}.formgrid{grid-template-columns:1fr 1fr;gap:8px}.field input,.field select,.field textarea{padding:10px;font-size:10px}.how{grid-template-columns:1fr}.how-card{padding:23px}.visit{grid-template-columns:1fr;gap:22px}.foot{grid-template-columns:1fr 1fr}.foot>div:first-child{grid-column:span 2}.copyright{display:block;line-height:2}.copyright span{display:block}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.reveal{opacity:1;transform:none}}
