@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@400;500;600;700&family=DM+Sans:wght@400;500;600;700&family=Great+Vibes&display=swap');
:root{--pine:#102d23;--dark:#082319;--red:#8b0919;--gold:#bd9750;--cream:#f9f4e8;--ink:#1b3328}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:'Cormorant Garamond',Georgia,serif;font-size:20px}a{color:inherit;text-decoration:none}.shell{max-width:1280px;margin:auto}.top{height:94px;background:#faf6eb;display:flex;align-items:center;justify-content:space-between;gap:22px;padding:0 4%;position:relative;z-index:5;box-shadow:0 3px 15px #120f0a22}.brand img{width:245px;max-height:86px;object-fit:contain}.links{display:flex;align-items:center;gap:28px;font-size:18px;font-weight:700}.links a:hover{color:var(--red)}.links a.active{color:var(--red);border-bottom:2px solid var(--red)}.button{display:inline-flex;align-items:center;justify-content:center;gap:9px;font:700 15px 'DM Sans',sans-serif;border:1px solid #d6aa59;border-radius:9px;padding:15px 23px;background:var(--red);color:#fff;box-shadow:0 3px 10px #0002}.button.gold{color:#302016;background:linear-gradient(#fffbeb,#dfbd7b)}.button:hover{filter:brightness(1.12)}.hero{overflow:hidden;position:relative;min-height:555px;color:#fff;background:radial-gradient(ellipse at 5% 45%,#c7832f70,transparent 29%),radial-gradient(circle at 95% 25%,#f5c46d4d,transparent 25%),linear-gradient(95deg,#120e09,#382315 61%,#100e0b)}.hero:before{content:'';position:absolute;inset:0;background:repeating-radial-gradient(circle at 10% 16%,#efb861 0 2px,transparent 4px 44px);opacity:.09;filter:blur(2px)}.hero-inner{position:relative;min-height:555px;max-width:1250px;margin:auto;display:grid;grid-template-columns:1fr 1fr;padding:35px 5% 0}.hero-copy{align-self:center;z-index:2;padding-bottom:40px;max-width:610px}.eyebrow{letter-spacing:3px;font:700 12px 'DM Sans',sans-serif;color:#ddbf7b;text-transform:uppercase}.hero h1{font-size:clamp(48px,5.3vw,82px);line-height:.88;margin:17px 0 26px;font-weight:600;letter-spacing:-1.5px}.script{font-family:'Great Vibes',cursive;color:#ddbc79;font-weight:400;display:block;font-size:1.12em;line-height:1.12}.hero p{font-size:23px;line-height:1.24;max-width:440px;margin:0 0 24px}.cta{display:flex;gap:12px;flex-wrap:wrap}.hero-portrait{position:absolute;right:3%;bottom:-160px;width:min(49%,610px);height:auto;filter:drop-shadow(0 12px 30px #0007)}.divider-branch{color:var(--gold);letter-spacing:8px;font-size:19px;margin:14px 0}.forest-strip{background:var(--dark);color:#f3e9d4;display:flex;justify-content:center;gap:0;padding:22px 14px}.forest-strip span{border-right:1px solid #bd975055;text-align:center;padding:0 30px;font-size:18px;line-height:1.1}.forest-strip span:last-child{border:0}.paper{background:radial-gradient(circle at 20% 12%,#d1aa6122,transparent 42%),radial-gradient(circle at 85% 80%,#c9ae8125,transparent 35%),#faf5e9}.section{padding:55px 4% 65px}.section h2{text-align:center;font-size:clamp(38px,4vw,58px);line-height:.95;font-weight:600;margin:0 0 10px}.section h2 em{font-family:'Great Vibes',cursive;font-weight:400;color:var(--red);font-size:1.25em}.subtitle{text-align:center;font-size:21px;margin:0 0 28px}.mountain{text-align:center;color:#275345;font-size:22px;letter-spacing:5px}.cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:17px}.card{background:#fcf8ed;border:1px solid #d8c8a4;border-radius:12px;box-shadow:0 4px 12px #583b1715;overflow:hidden;text-align:center;padding-bottom:22px}.card img{width:100%;height:190px;object-fit:cover;object-position:top}.card h3{font-size:27px;margin:15px 12px 7px;line-height:1}.card p{font-size:18px;line-height:1.16;padding:0 15px;min-height:72px}.card a{color:var(--red);font-weight:700}.story{position:relative;background:linear-gradient(100deg,#2b1b13,#3a2518 50%,#110d0a);display:grid;grid-template-columns:1fr 1fr;min-height:365px;color:#fff;overflow:hidden}.story-photo{min-height:365px;background:linear-gradient(0deg,#0005,#0000),url('assets/story-secret-livingroom.png') center center/cover}.story-copy{align-self:center;padding:35px 9%}.story h2{font-size:53px;font-weight:600;line-height:.9;margin:0 0 18px}.story p{font-size:21px;line-height:1.2}.pet-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;max-width:950px;margin:20px auto 0}.pet-grid img{width:100%;height:300px;object-fit:cover;object-position:center 30%;border:8px solid #fff7e5;box-shadow:0 4px 12px #4a2b1b44;border-radius:7px}.meet-intro{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:50px;max-width:1120px;margin:auto}.meet-intro h2{text-align:left}.meet-intro p{font-size:23px;line-height:1.25}.meet-intro img{width:100%;height:460px;object-fit:cover;object-position:top;border:12px solid white;box-shadow:0 4px 18px #67432144;transform:rotate(2deg)}.expect-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.expect{background:#fff9ef;border:1px solid #e5d6b7;border-radius:10px;text-align:center;padding:25px 16px}.expect b{font-size:26px}.expect p{font-size:19px;line-height:1.15}.footer-hero{padding:45px 15px;text-align:center;color:#fff;background:linear-gradient(#061d16aa,#061d16aa),radial-gradient(circle at 75% 20%,#bd9750,transparent 46%),linear-gradient(130deg,#153d30,#081910)}.footer-hero .script{font-size:66px}.footer-hero p{margin:8px 0 20px}.foot{background:var(--dark);color:#f1e5cf;display:flex;align-items:center;justify-content:space-around;flex-wrap:wrap;padding:28px 18px;gap:19px;font-size:16px}.foot img{width:160px}.foot a{text-decoration:underline;text-underline-offset:3px}.about-hero .hero-portrait{bottom:-150px}.about-hero{min-height:505px}.about-hero .hero-inner{min-height:505px}.note{background:#fff2d9;padding:14px;font:15px 'DM Sans',sans-serif;color:#543b16}.mobile-toggle{display:none}.comparison{background:#0d1c16;color:white;padding:30px 4%;text-align:center;font-family:'DM Sans',sans-serif}.comparison .compare-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;max-width:1200px;margin:auto}.comparison img{width:100%;border:1px solid #7b8d80}.comparison h3{font-size:17px;font-weight:500}
@media(max-width:850px){.top{height:auto;padding:8px 4%;flex-wrap:wrap}.brand img{width:190px}.links{gap:13px;flex-wrap:wrap;justify-content:center;font-size:15px}.top>.button{padding:9px 12px}.hero-inner{min-height:630px;grid-template-columns:1fr;align-items:start;padding:32px 6%}.hero-copy{align-self:start}.hero h1{font-size:54px}.hero p{font-size:20px;max-width:330px}.hero-portrait{width:70%;right:-5%;bottom:-125px;opacity:.92}.cards,.expect-grid{grid-template-columns:repeat(2,1fr)}.meet-intro{grid-template-columns:1fr}.forest-strip{flex-wrap:wrap}.forest-strip span{padding:10px}.story h2{font-size:42px}}@media(max-width:540px){.links{width:100%;order:3;gap:14px}.top{justify-content:space-between}.hero-inner{min-height:625px}.hero h1{font-size:45px}.hero p{font-size:18px;max-width:270px}.hero-portrait{width:85%;right:-21%;bottom:-94px;opacity:.75}.cta{gap:8px}.button{padding:12px 14px;font-size:12px}.forest-strip span{width:50%;font-size:16px;border:0}.section{padding:35px 5%}.cards,.expect-grid{grid-template-columns:1fr 1fr;gap:10px}.card img{height:120px}.card h3{font-size:22px}.card p{font-size:16px;min-height:104px}.story{grid-template-columns:1fr}.story-photo{min-height:240px;background-position:center 25%}.story-copy{padding:30px}.pet-grid img{height:180px}.comparison .compare-grid{grid-template-columns:1fr}}


/* v0.6 approved visual fidelity pass — no subject retouching */
:root{--pine:#092c22;--dark:#08251c;--red:#8e0815;--gold:#c6a35e;--cream:#fbf7ed;--ink:#173528}
body{background:#faf5e9;color:var(--ink)}
.top{height:83px;min-height:83px;background:#fbf8f0;box-shadow:none;border-bottom:0;isolation:isolate;padding:0 4% 0 min(340px,37vw);z-index:20}
.scoop-brand{position:absolute;top:0;left:0;width:clamp(265px,35.4vw,360px);height:112px;z-index:22;display:flex;align-items:flex-start;justify-content:center;padding:5px 14px 18px;background:url('assets/banner-scoop.svg') center top/100% 100% no-repeat}
.scoop-brand img{width:94%;max-height:81px;object-fit:contain;object-position:center top}
.links{gap:clamp(13px,2.4vw,34px);font-size:17px;font-weight:600;white-space:nowrap}
.links a.active{border-bottom:1px solid var(--red);padding-bottom:5px}
.top>.button{border-radius:9px;background:linear-gradient(180deg,#9f081c,#71050f);border:1px solid #b99857}
.approved-photo-hero{overflow:hidden;min-height:unset;aspect-ratio:846/390;background:#29190e!important}
.approved-photo-hero:before{display:none}
.approved-photo-hero .hero-inner{position:absolute!important;width:1px!important;height:1px!important;min-height:0!important;overflow:hidden!important;padding:0!important;clip-path:inset(50%)!important}
.reference-hero-art{position:absolute;inset:0;background-position:center;background-size:100% 100%;background-repeat:no-repeat}
.approved-home-hero .reference-hero-art{background-image:url('assets/home-approved-hero.png')}
.approved-meet-hero .reference-hero-art{background-image:url('assets/meet-approved-hero.png')}
.reference-hotspots{position:absolute;inset:0;z-index:3}
.hotspot{position:absolute;display:block;top:79%;height:10%;width:17%;border-radius:9px}
.hotspot:focus-visible{outline:3px solid #f7d77e;outline-offset:2px}
.hero-book{left:8%}.hero-secondary{left:26.5%}
.approved-meet-hero .hotspot{top:77%}.approved-meet-hero .hero-book{left:8%}.approved-meet-hero .hero-secondary{left:26%}
.mountain-ornament{margin:12px auto!important;text-align:center!important;letter-spacing:normal!important}
.mountain-ornament img{width:168px;height:29px;object-fit:contain;mix-blend-mode:multiply}
.forest-strip{border-top:2px solid #a77d37;border-bottom:2px solid #8c6c30;background:#08291d;padding:19px 14px}
.forest-strip span{font-weight:600;font-size:19px}
.section.paper{background:radial-gradient(ellipse at 15% 20%,#dfc99d33,transparent 45%),#f8f1e3}
.section h2{font-size:clamp(36px,4.3vw,58px);color:#12372a}
.cards{max-width:1210px}.card{border-color:#dfc9a8;background:#fbf7ed;box-shadow:0 3px 12px #6c46201b;border-radius:9px}.card h3{color:#12382b}.card a{color:#9e0e1d}
.more-services{padding-top:30px!important;border-top:1px solid #e4d5bb}.more-services h2{font-size:38px;margin-bottom:30px}
.story{border-top:2px solid #b68d4b;border-bottom:2px solid #b68d4b}
.footer-hero{background:linear-gradient(#041e1560,#041e1560),url('assets/approved-mountains-footer.png') center/cover no-repeat;min-height:170px;border-top:2px solid #c2a166;border-bottom:2px solid #c2a166}
.foot{background:#073023;border-top:1px solid #bf9e58}
@media(max-width:850px){.top{padding:9px 16px 8px 290px;height:auto;min-height:96px}.scoop-brand{width:280px;height:103px}.scoop-brand img{max-height:70px}.links{font-size:14px;gap:12px}.top>.button{padding:10px 13px}.approved-photo-hero{aspect-ratio:846/390;min-height:0}.approved-photo-hero .hero-inner{min-height:0!important}.hotspot{top:79%}}
@media(max-width:650px){.top{padding:92px 3% 11px;justify-content:center;min-height:145px;gap:8px}.scoop-brand{left:50%;transform:translateX(-50%);width:300px;height:98px;padding-top:0}.scoop-brand img{max-height:76px}.links{order:2;width:100%;font-size:13px;justify-content:center;flex-wrap:wrap}.top>.button{order:1;padding:8px 14px;font-size:12px}.approved-photo-hero{aspect-ratio:846/390;min-height:0}.hotspot{top:78%;height:12%}.forest-strip span{font-size:15px}.footer-hero{min-height:180px}}

/* v0.7: no comp screenshot used in header or hero. Single background token; live responsive copy. */
:root{--header-ivory:#f6f0e7}
.top{background:var(--header-ivory);height:78px;min-height:78px;padding-left:clamp(300px,32vw,400px);box-shadow:none;overflow:visible}
.scoop-brand{position:absolute;left:0;top:0;width:clamp(285px,32vw,385px);height:108px;padding:6px 24px 20px;background:var(--header-ivory);clip-path:polygon(0 0,100% 0,100% 72%,92% 78%,80% 84%,65% 90%,50% 94%,35% 90%,20% 84%,8% 78%,0 72%);z-index:30;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;color:#7f0c18;text-shadow:none}
.scoop-brand .logo-ridge{display:block;width:95px;height:27px;color:#0c3728;margin:-3px 0 -8px}.scoop-brand .ridge{display:block;width:100%;height:100%}
.scoop-brand .logo-main{display:block;white-space:nowrap;text-align:center;font:600 clamp(23px,2.3vw,31px) 'Cormorant Garamond',Georgia,serif;font-variant:small-caps;letter-spacing:-.8px;line-height:1.1}.scoop-brand .logo-main small{font:italic 17px 'Cormorant Garamond',Georgia,serif;text-transform:none;margin-right:2px;color:#163d2e}.scoop-brand .logo-tag{font:700 9px 'DM Sans',sans-serif;color:#163d2e;letter-spacing:2.8px;line-height:2}
.live-hero{position:relative;isolation:isolate;min-height:540px;background:linear-gradient(90deg,#170f0b 0%,#271b13 42%,#302013 100%);overflow:hidden}
.live-hero:before{display:block;content:'';position:absolute;inset:0;background:radial-gradient(circle at 5% 20%,#f1b55677 0 2px,transparent 5px),radial-gradient(circle at 15% 76%,#e7a74799 0 3px,transparent 8px),radial-gradient(circle at 78% 22%,#f4ca7280 0 3px,transparent 9px),radial-gradient(circle at 97% 65%,#eac17285 0 4px,transparent 13px),radial-gradient(ellipse at 100% 45%,#965b2466,transparent 38%),radial-gradient(ellipse at 0 60%,#8b4f2244,transparent 45%);filter:blur(2px);opacity:1}
.live-hero:after{content:'';position:absolute;inset:0;pointer-events:none;box-shadow:inset 0 0 95px 40px #110e0d7a}
.hero-stage{max-width:1340px;min-height:540px;margin:auto;padding:48px 5%;position:relative;display:flex;align-items:center}
.live-hero .hero-copy{max-width:580px;width:52%;position:relative;z-index:2;padding:10px 0 20px}
.live-hero h1{font-size:clamp(44px,4.6vw,69px);line-height:.99;letter-spacing:-.9px;margin:0 0 18px;color:#fffaf0}
.live-hero .script{font-size:1.2em;line-height:1.2;color:#dab66f;white-space:nowrap}
.hero-ornament{display:flex;align-items:center;gap:14px;color:#d5bb7e;margin:8px 0 20px;width:280px}
.hero-ornament:before,.hero-ornament:after{content:'';height:1px;flex:1;background:linear-gradient(90deg,transparent,#c9ab68,transparent)}
.hero-ornament .ridge{width:100px;flex:none;height:27px}
.live-hero p{font-size:23px;line-height:1.17;color:#fbf2e4;max-width:455px;margin:0 0 24px}
.live-hero .hero-person{position:absolute;right:2%;bottom:-110px;width:auto;height:690px;max-width:58%;object-fit:contain;object-position:bottom center;z-index:1;filter:drop-shadow(-12px 12px 30px #100a0680)}
.meet-live-hero .hero-person{height:630px;bottom:-105px}
@media(max-width:1000px){.top{padding-left:310px}.links{gap:12px;font-size:15px}.live-hero .hero-person{right:-7%;height:640px}.live-hero .hero-copy{width:58%}}
@media(max-width:750px){.top{height:auto;min-height:140px;padding:96px 12px 12px;justify-content:center;gap:10px;flex-wrap:wrap}.scoop-brand{left:50%;transform:translateX(-50%);width:310px;height:101px;padding-top:3px}.scoop-brand .logo-main{font-size:25px}.links{order:2;width:100%;justify-content:center;flex-wrap:wrap;font-size:13px}.top>.button{order:1;padding:9px 14px}.hero-stage{min-height:590px;padding:32px 6%;align-items:flex-start}.live-hero .hero-copy{width:100%;max-width:550px}.live-hero h1{font-size:clamp(39px,7vw,53px)}.live-hero p{font-size:19px;max-width:390px}.live-hero .hero-person{height:440px;bottom:-75px;right:-10%;opacity:.68}.live-hero .hero-copy{z-index:3}.live-hero .hero-copy:before{content:'';position:absolute;inset:-22px -10px;background:linear-gradient(90deg,#1a100de8,#1a100d55 70%,transparent);z-index:-1}}
@media(max-width:430px){.live-hero h1{font-size:39px}.live-hero .script{white-space:normal}.hero-stage{min-height:620px}.live-hero .hero-person{right:-30%;height:430px}.hero-ornament{max-width:85%}}

/* v0.8 pixel-fidelity correction pass
   Approved artwork is authoritative. Photos remain swappable. */
:root{--header-ivory:#fbf8f0}
.top{height:83px;min-height:83px;background:var(--header-ivory);padding:0 4% 0 min(340px,37vw);box-shadow:none;border-bottom:0;overflow:visible;isolation:isolate}
.scoop-brand{position:absolute;top:0;left:0;width:clamp(265px,35.4vw,360px);height:112px;z-index:30;display:flex;align-items:flex-start;justify-content:center;padding:5px 14px 18px;background:url('assets/banner-scoop.svg') center top/100% 100% no-repeat;clip-path:none;color:inherit;text-shadow:none}
.scoop-brand img{display:block;width:94%;height:auto;max-height:81px;object-fit:contain;object-position:center top}
.scoop-brand .logo-ridge,.scoop-brand .logo-main,.scoop-brand .logo-tag{display:none!important}
.links{gap:clamp(13px,2.4vw,34px);font-size:17px;font-weight:600;white-space:nowrap}
.links a.active{border-bottom:1px solid var(--red);padding-bottom:5px}
.top>.button{border-radius:9px;background:linear-gradient(180deg,#9f081c,#71050f);border:1px solid #b99857}

/* Hero geometry follows the approved desktop comp; background/photo remain replaceable. */
.live-hero{min-height:390px;height:auto;background:radial-gradient(circle at 8% 18%,#f3bb6473 0 2px,transparent 5px),radial-gradient(circle at 18% 74%,#e2a44d75 0 3px,transparent 8px),radial-gradient(circle at 83% 17%,#efc06666 0 3px,transparent 9px),linear-gradient(96deg,#1b1009 0%,#3b2413 47%,#201208 100%);border-bottom:0;overflow:hidden}
.hero-stage{width:100%;max-width:846px;min-height:390px;margin:0 auto;padding:55px 0 34px;position:relative;display:block}
.live-hero .hero-copy{position:relative;z-index:4;width:44.5%;max-width:none;margin-left:8.4%;padding:0}
.live-hero h1{font-size:39px;line-height:.93;letter-spacing:-.7px;margin:0 0 10px;color:#fffaf0;font-weight:600}
.live-hero .script{font-family:'Great Vibes',cursive;font-size:1.18em;line-height:1.08;color:#d9b46d;white-space:nowrap}
.hero-ornament{display:flex;align-items:center;gap:8px;width:265px;margin:10px 0 11px}
.hero-ornament span{height:1px;flex:1;background:#bca05f}
.hero-ornament img{display:block;width:70px;height:auto;mix-blend-mode:screen;filter:sepia(1) saturate(.55) brightness(1.55)}
.live-hero p{font-size:15.5px;line-height:1.18;color:#fff8ed;max-width:305px;margin:0 0 14px}
.live-hero .cta{gap:11px}
.live-hero .button{font-size:12px;padding:10px 19px;border-radius:8px}
.live-hero .hero-person{position:absolute;z-index:2;right:1.5%;bottom:-76px;height:458px;width:auto;max-width:56%;object-fit:contain;object-position:bottom center;filter:drop-shadow(-10px 10px 22px #0007)}
.live-hero:after{box-shadow:inset 0 0 60px 18px #0c08055a}
.home-live-hero .hero-stage:before,.meet-live-hero .hero-stage:before{content:'';position:absolute;inset:0;background:radial-gradient(circle at 83% 35%,#f7c26b2b,transparent 21%),radial-gradient(circle at 18% 47%,#f4aa3d1c,transparent 27%);pointer-events:none}

/* Section proportions aligned to the approved comp. */
.forest-strip{min-height:67px;padding:17px 14px;border-top:2px solid #a77d37;border-bottom:2px solid #8c6c30;background:#08291d;align-items:center}
.forest-strip span{font-size:15px;line-height:1.08;padding:0 26px;font-weight:600}
.section{padding:31px 3.3% 36px}
.section h2{font-size:38px;line-height:.98;margin-bottom:5px}
.subtitle{font-size:17px;margin-bottom:18px}
.mountain-ornament{margin:6px auto!important}.mountain-ornament img{width:120px;height:auto}
.cards{max-width:790px;gap:12px}.card{border-radius:8px;padding-bottom:15px}.card img{height:132px}.card h3{font-size:22px;margin:10px 8px 4px}.card p{font-size:14px;line-height:1.15;min-height:51px;margin:6px 0 8px}.card a{font-size:14px}
.story{min-height:250px;grid-template-columns:50% 50%}.story-photo{min-height:250px}.story-copy{padding:23px 8%}.story h2{font-size:39px;margin-bottom:10px}.story p{font-size:15px;line-height:1.17;margin:0 0 13px}.story .button{font-size:12px;padding:10px 17px}
.pet-grid{max-width:680px;gap:18px;margin-top:15px}.pet-grid img{height:180px;border-width:5px}
.meet-intro{max-width:780px;gap:26px}.meet-intro h2{font-size:33px}.meet-intro p{font-size:16px;line-height:1.18}.meet-intro img{height:270px;border-width:7px}
.footer-hero{min-height:138px;padding:16px 15px 17px}.footer-hero .script{font-size:44px}.footer-hero p{font-size:14px;margin:3px 0 10px}.footer-hero .button{padding:10px 18px;font-size:12px}.foot{min-height:83px;padding:12px 28px;font-size:12px}.foot img{width:150px}
.more-services{display:none}

@media(min-width:847px){body{font-size:16px}.live-hero{min-height:390px}.hero-stage{transform:none}}
@media(max-width:850px){.top{padding:9px 16px 8px 290px;height:auto;min-height:96px}.scoop-brand{width:280px;height:103px}.scoop-brand img{max-height:70px}.hero-stage{max-width:none;min-height:430px;padding:54px 0 32px}.live-hero .hero-copy{margin-left:7%;width:50%}.live-hero .hero-person{height:485px;right:-4%;bottom:-91px}.live-hero h1{font-size:40px}}
@media(max-width:650px){.top{padding:92px 3% 11px;justify-content:center;min-height:145px;gap:8px}.scoop-brand{left:50%;transform:translateX(-50%);width:300px;height:98px;padding-top:0}.scoop-brand img{max-height:76px}.hero-stage{min-height:550px;padding:32px 5%}.live-hero .hero-copy{width:100%;margin:0;max-width:360px}.live-hero h1{font-size:39px}.live-hero p{font-size:17px;max-width:320px}.live-hero .hero-person{height:420px;right:-26%;bottom:-75px;opacity:.72}.hero-ornament{width:250px}.cards{grid-template-columns:1fr 1fr}.card img{height:120px}.story{grid-template-columns:1fr}.story-photo{min-height:220px}.meet-intro{grid-template-columns:1fr}.pet-grid img{height:170px}}

/* 1.0 COMP FIDELITY: scalable native HTML/CSS, no full-page screenshot. */
:root{--header-ivory:#fbf8f0;--paper:#fbf6eb}
body{overflow-x:hidden}
.top{background:var(--header-ivory);z-index:30}
.scoop-brand{background:var(--header-ivory);clip-path:ellipse(74% 86% at 50% 0%);height:111px;padding:0 12px 15px;overflow:hidden}
.scoop-brand img{width:100%;max-height:87px;object-fit:contain;object-position:top center;mix-blend-mode:multiply}
.links a:focus-visible,.button:focus-visible,.card a:focus-visible{outline:3px solid #d6ae63;outline-offset:3px}
.hero.workshop-hero{background-image:linear-gradient(90deg,rgba(13,8,5,.78) 0%,rgba(14,8,5,.54) 32%,rgba(13,8,5,.05) 61%),url('assets/hero-workshop-wide.png');background-size:cover;background-position:center center;}
.workshop-hero:before{display:none}.workshop-hero .hero-stage:before{display:none}
.workshop-hero:after{box-shadow:inset 0 0 26px #0003}
.workshop-hero .hero-copy{width:46%;margin-left:8.2%;padding-top:10px}
.workshop-hero .hero-stage{min-height:420px;padding-top:59px}
.workshop-hero .hero-copy h1{font-size:clamp(34px,4.48vw,51px);line-height:.96;text-shadow:0 2px 9px #0009}
.workshop-hero .hero-copy p{text-shadow:0 1px 5px #000d}
.forest-strip{gap:0;justify-content:space-evenly;padding:12px 12px}
.forest-strip .feature{display:flex;gap:11px;align-items:center;padding:0 16px;min-height:45px;border-right:1px solid #bb99565e;color:#ecd095}
.forest-strip .feature:last-child{border:0}
.forest-strip .feature svg{flex:none;width:34px;height:34px}
.forest-strip .feature span{padding:0;border:0;color:#f6ecdb;font-size:15px;text-align:left}
.cards .card{display:flex;flex-direction:column;align-items:stretch;min-height:258px}
.card img{flex:0 0 auto}
.card p{flex:1;min-height:0;margin-bottom:16px}
.card a{display:block;margin-top:auto;padding:0 8px}
.more-services{display:block;padding-top:19px}
.more-services .card{min-height:255px}
.more-services .card img{height:110px}
.section.paper{background:radial-gradient(ellipse at 10% 8%,#d6be8c1a,transparent 45%),linear-gradient(120deg,#f8f1e5,#fdf9f1 48%,#f9f2e6)}
.story{background:#21170f;min-height:260px}
.story-photo{background-image:linear-gradient(90deg,#0000 75%,#21170f),url('assets/story-secret-livingroom.png');background-size:cover;background-position:center center;}
.story-copy{background:radial-gradient(ellipse at right,#61402185,transparent 66%)}
.story-copy .script{display:inline;color:#dfbf78}
.pet-grid img{object-position:center 29%}
.meet-intro>div{align-self:center}
.meet-intro img{object-position:center 18%;transform:rotate(1deg)}
.faq{padding-bottom:38px}.faq-list{max-width:780px;margin:18px auto 0}.faq details{background:#fffaf0;border:1px solid #deceb0;border-radius:8px;margin:9px 0;padding:12px 18px}.faq summary{font-size:20px;font-weight:700;cursor:pointer}.faq details p{font-size:17px;line-height:1.2;margin-bottom:2px}.faq details a{color:var(--red);text-decoration:underline}
.footer-hero{background-image:linear-gradient(90deg,#082a26ab,#122a27a3),url('assets/approved-mountains-footer.png');background-repeat:no-repeat;background-size:cover;background-position:center 54%;border-top:2px solid #c9a45d}
.foot{padding:15px 3%;gap:14px;justify-content:space-between}.foot img{width:160px;height:62px;object-fit:contain;mix-blend-mode:screen;filter:brightness(1.8) grayscale(1)}
.foot small{font-size:12px;opacity:.7}
@media(min-width:1100px){.hero-stage{max-width:1200px!important}.live-hero{min-height:515px}.hero-stage{min-height:515px!important}.workshop-hero .hero-stage{min-height:515px!important}.live-hero h1{font-size:59px}.workshop-hero .hero-copy h1{font-size:59px}.live-hero p{font-size:21px;max-width:410px}.live-hero .button{font-size:15px}.cards{max-width:1120px;gap:18px}.card img{height:185px}.card h3{font-size:27px}.card p{font-size:18px}.card a{font-size:16px}.cards .card{min-height:340px}.more-services .card img{height:150px}.section{padding-top:42px;padding-bottom:47px}.story{min-height:340px}.story-photo{min-height:340px}.pet-grid{max-width:960px}.pet-grid img{height:250px}.meet-intro{max-width:1100px}.meet-intro img{height:340px}.forest-strip .feature span{font-size:18px}}
@media(max-width:850px){.top{padding-left:282px}.links{font-size:13px;gap:11px}.forest-strip .feature{padding:0 10px}.forest-strip .feature span{font-size:13px}.forest-strip .feature svg{width:28px;height:28px}.workshop-hero{background-position:55% center}}
@media(max-width:650px){.scoop-brand{clip-path:ellipse(71% 91% at 50% 0%)}.top{padding:91px 12px 12px;gap:8px}.links{flex-wrap:wrap;white-space:normal;font-size:13px;order:2;justify-content:center;width:100%}.top>.button{order:1}.forest-strip{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:12px}.forest-strip .feature{border:0;padding:0 3px}.forest-strip .feature span{font-size:12px}.workshop-hero{background-position:60% center}.workshop-hero .hero-stage{min-height:555px;padding:36px 20px}.workshop-hero .hero-copy{width:95%;margin:0;padding:0}.workshop-hero .hero-copy h1{font-size:clamp(34px,9vw,47px)}.workshop-hero:after{background:linear-gradient(90deg,#130b09cc,#130b0966 77%,transparent)}.workshop-hero .hero-copy p{font-size:18px;max-width:305px}.cards{gap:9px}.cards .card{min-height:250px}.card h3{font-size:20px}.card p{font-size:15px;padding:0 8px}.card a{font-size:13px}.pet-grid{gap:9px}.pet-grid img{height:185px}.foot{justify-content:center;text-align:center}.story-copy{padding:28px 7%}}
@media(max-width:410px){.forest-strip .feature svg{width:24px}.forest-strip .feature{gap:5px}.forest-strip .feature span{font-size:11px}.cards{grid-template-columns:1fr}.card img{height:185px}.cards .card{min-height:290px}.pet-grid{grid-template-columns:1fr}.pet-grid img{height:215px}}

/* v1.1 targeted corrections: exact logo-ground match and safe desktop hero crop.
   Keep cover (never stretch); prioritize the top of Santa's hat at wide viewports. */
:root{--header-ivory:#f9f5ee}
.top,.scoop-brand{background-color:var(--header-ivory)}
.hero.workshop-hero{background-position:center 8%}
@media (min-width:1100px){.hero.workshop-hero{background-position:center 6%}}
@media (min-width:1800px){.hero.workshop-hero{background-position:center 3%}}
@media (max-width:850px){.hero.workshop-hero{background-position:55% 12%}}
@media (max-width:650px){.hero.workshop-hero{background-position:60% 14%}}

/* v1.2 — header-only fidelity fix. Hero rules above remain untouched.
   Match the opaque logo canvas and reserve real space for the scoop. */
:root{--header-ivory:#f9f5ee}
header.top{background:#f9f5ee!important}
header.top .scoop-brand{background:#f9f5ee!important}
header.top .links{min-width:0;flex-shrink:1}
header.top .links a{flex:0 0 auto;white-space:nowrap}
header.top > .button{flex:0 0 auto;white-space:nowrap}
@media(min-width:1101px){
  header.top{padding-left:390px;padding-right:3%;gap:clamp(12px,1.4vw,22px)}
  header.top .links{gap:clamp(12px,1.35vw,24px);font-size:clamp(14px,1.12vw,17px);justify-content:flex-start}
  header.top > .button{padding:12px 16px;font-size:14px}
}
@media(min-width:651px) and (max-width:1100px){
  header.top{height:155px;min-height:155px;padding:103px 18px 10px;justify-content:center;gap:14px;flex-wrap:nowrap}
  header.top .scoop-brand{width:320px;height:108px}
  header.top .links{gap:clamp(9px,1.9vw,20px);font-size:clamp(13px,1.55vw,16px);justify-content:center}
  header.top > .button{position:absolute;right:22px;top:18px;padding:10px 14px;font-size:13px}
}
@media(max-width:650px){
  header.top{background:#f9f5ee!important}
  header.top .scoop-brand{background:#f9f5ee!important}
}

/* v1.3 NAVIGATION ONLY — preserve all approved hero/layout rules.
   Logo is a transparent derivative of the approved artwork so there is no cream rectangle
   against the solid header and scoop. Active navigation must not move text. */
:root{--header-ivory:#f9f5ee}
header.top,header.top .scoop-brand{background:var(--header-ivory)!important}
header.top .scoop-brand img{mix-blend-mode:normal!important}
header.top nav.links a,header.top nav.links a.active,header.top nav.links a:hover,header.top nav.links a:focus-visible{
 font-size:inherit!important;line-height:1.25!important;font-weight:600!important;
 vertical-align:baseline!important;transform:none!important;position:relative;
 padding:6px 0!important;margin:0!important;border:0!important;text-decoration:none!important;
 display:inline-flex;align-items:center;justify-content:center;
}
header.top nav.links a.active::after{content:"";position:absolute;height:1px;left:0;right:0;bottom:2px;background:var(--red)}

/* v1.4 — logo-canvas color integration; no navigation geometry or hero edits.
   Logo artwork transitions from pale ivory at the top to warm parchment below.
   Header and scoop use the same gradient with one shared vertical coordinate system. */
:root{--logo-header-gradient:linear-gradient(to bottom,
  #f9f5ee 0%, #faf5ed 19%, #f8f2e7 30%, #f4ecdf 43%,
  #f0e6d6 58%, #eee1cd 78%, #ecdfca 100%)}
header.top{background-image:var(--logo-header-gradient)!important;
  background-color:#f9f5ee!important;background-size:100% 112px!important;
  background-position:left top!important;background-repeat:no-repeat!important}
header.top .scoop-brand{background-image:var(--logo-header-gradient)!important;
  background-color:#f9f5ee!important;background-size:100% 112px!important;
  background-position:left top!important;background-repeat:no-repeat!important}


/* v1.5 targeted header-only update: readable links and continuous logo-tone gradient. */
:root{--logo-header-gradient:linear-gradient(180deg,#f9f5ee 0%,#faf5ed 18%,#f8f2e7 34%,#f4ecdf 54%,#f0e6d6 75%,#ecdfca 100%)}
header.top,header.top .scoop-brand{
 background-image:var(--logo-header-gradient)!important;
 background-color:#f9f5ee!important;
 background-position:left top!important;
 background-size:100% 100%!important;
 background-repeat:no-repeat!important;
}
header.top nav.links{font-size:20px!important;gap:clamp(13px,1.35vw,22px)}
header.top nav.links a,header.top nav.links a.active,header.top nav.links a:hover{
 font-size:inherit!important;line-height:1.25!important;font-weight:600!important;
 transform:none!important;vertical-align:baseline!important;
}
/* Preserve room for complete logo and the enlarged navigation on ordinary laptops. */
@media(min-width:1281px){
 header.top{padding-left:390px!important;padding-right:2.4%!important;gap:clamp(12px,1.2vw,20px)!important}
 header.top nav.links{font-size:clamp(18px,1.23vw,21px)!important;gap:clamp(11px,1.12vw,22px)!important}
}
@media(min-width:651px) and (max-width:1280px){
 header.top{height:164px!important;min-height:164px!important;padding:108px 18px 12px!important;justify-content:center!important;flex-wrap:nowrap!important}
 header.top nav.links{font-size:clamp(16px,1.65vw,20px)!important;gap:clamp(9px,1.45vw,17px)!important;justify-content:center!important}
 header.top>.button{position:absolute;right:20px;top:17px}
}
@media(max-width:650px){
 header.top{padding:96px 10px 14px!important;min-height:156px!important;height:auto!important}
 header.top nav.links{font-size:17px!important;gap:12px 15px!important;justify-content:center!important;width:100%;flex-wrap:wrap!important}
}


/* v1.6: user-requested isolated header and feature-strip corrections. */
/* Logo is a genuine transparency over a single identical solid header/scoop ivory. */
:root { --logo-header-solid: #f9f5ee; }
header.top, header.top .scoop-brand {
  background: var(--logo-header-solid) !important;
  background-image: none !important;
  background-color: var(--logo-header-solid) !important;
}
/* Icons stacked and centered above their respective text labels. */
.forest-strip { align-items: stretch; }
.forest-strip .feature {
  flex: 1 1 0;
  min-width: 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
  gap: 9px;
  padding: 6px 16px;
}
.forest-strip .feature svg { display: block; flex: none; margin: 0 auto; }
.forest-strip .feature span {
  display: block;
  width: 100%;
  margin: 0;
  padding: 0;
  text-align: center;
  line-height: 1.17;
}
@media (max-width:650px) {
  .forest-strip .feature { padding: 8px 6px; gap: 6px; }
}

/* v1.7: clean foreground-only logo cutout; shared solid header + scoop color. */
header.top,header.top .scoop-brand{background-color:#f9f5ee!important;background-image:none!important;}


/* v1.8 scoped fidelity corrections — no hero image or navigation behavior changes. */
/* Logo: enlarge the curved badge rather than clipping the location tagline. */
header.top .scoop-brand{
  height:132px!important;
  padding:3px 16px 28px!important;
  overflow:visible!important;
  clip-path:ellipse(74% 87% at 50% 0%)!important;
}
header.top .scoop-brand img{
  display:block!important;
  width:100%!important;
  max-height:88px!important;
  height:auto!important;
  object-fit:contain!important;
  object-position:center top!important;
  mix-blend-mode:normal!important;
}
/* Mountain and accompanying horizontal rules are true vector artwork. */
.hero-ornament{display:flex!important;align-items:center!important;justify-content:center!important;gap:12px!important;width:min(340px,100%)!important;margin:18px 0 17px!important;position:relative!important;z-index:6!important;overflow:visible!important;}
.hero-ornament span{display:block!important;flex:1 1 auto!important;min-width:32px!important;height:1px!important;background:#d4b574!important;opacity:1!important;}
.hero-ornament img{display:block!important;flex:none!important;width:112px!important;height:auto!important;max-height:none!important;mix-blend-mode:normal!important;filter:brightness(0) saturate(100%) invert(80%) sepia(26%) saturate(603%) hue-rotate(356deg) brightness(88%) contrast(90%)!important;opacity:1!important;object-fit:contain!important;}
.mountain-ornament img{mix-blend-mode:normal!important;filter:brightness(0) saturate(100%) invert(32%) sepia(22%) saturate(636%) hue-rotate(106deg) brightness(90%) contrast(86%)!important;}
@media(max-width:650px){header.top .scoop-brand{height:123px!important;padding-bottom:24px!important}header.top .scoop-brand img{max-height:77px!important}.hero-ornament{width:min(295px,100%)!important;gap:8px!important}.hero-ornament img{width:92px!important}}


/* v1.9: surgical reference-fidelity repair; background and source photos unchanged. */
header.top {background:#f9f5ee!important;background-image:none!important;isolation:visible!important;overflow:visible!important;}
header.top .scoop-brand {
  clip-path:none!important;overflow:visible!important;
  background:#f9f5ee!important;background-image:none!important;
  height:83px!important;min-height:83px!important;
  padding:3px 15px 0!important;
  border:0!important;
  display:flex!important;align-items:flex-start!important;
}
/* A single smooth, continuous scoop extending from the exact bottom edge of the header. */
header.top .scoop-brand::after{
 content:"";position:absolute;left:0;right:0;top:100%;height:30px;
 background:#f9f5ee;
 border-radius:0 0 50% 50% / 0 0 100% 100%;
 pointer-events:none;z-index:0;
}
header.top .scoop-brand img{
 position:relative;z-index:1;display:block!important;
 width:100%!important;height:auto!important;max-height:77px!important;
 object-fit:contain!important;object-position:center top!important;
 clip-path:none!important;filter:none!important;mix-blend-mode:normal!important;
}
/* Exact source artwork includes BOTH flanking rules. Do not draw surrogate lines. */
.hero-ornament {display:block!important;width:170px!important;height:28px!important;margin:9px 0 14px!important;line-height:0!important;overflow:visible!important;position:relative!important;z-index:8!important;}
.hero-ornament::before,.hero-ornament::after,.hero-ornament span{display:none!important;content:none!important;}
.hero-ornament img{
 width:170px!important;height:28px!important;max-height:none!important;
 display:block!important;object-fit:fill!important;
 filter:none!important;mix-blend-mode:normal!important;opacity:1!important;
}
/* At smaller widths keep scoop curve continuous via scalable border-radius instead of a fixed SVG path. */
@media(max-width:750px){
 header.top .scoop-brand{height:83px!important;min-height:83px!important;padding:3px 15px 0!important;}
 header.top .scoop-brand::after{clip-path:none!important;border-radius:0 0 50% 50% / 0 0 100% 100%!important;}
 header.top .scoop-brand img{max-height:73px!important;}
}


/* v2.0 — source-art repairs; these explicit final rules override legacy v1.8/1.9 patches. */
header.top{background:#F9F5EE!important;background-image:none!important;overflow:visible!important;isolation:auto!important;min-height:94px!important;position:relative!important;}
header.top .scoop-brand{left:0!important;top:0!important;width:330px!important;height:94px!important;min-height:0!important;padding:0!important;background:transparent!important;background-image:none!important;border:0!important;clip-path:none!important;overflow:visible!important;transform:none!important;display:block!important;position:absolute!important;z-index:25!important;}
header.top .scoop-brand::after{content:""!important;position:absolute!important;top:94px!important;left:0!important;width:330px!important;height:65px!important;background:url('assets/header-scoop-smooth.svg') center top/100% 100% no-repeat!important;border-radius:0!important;clip-path:none!important;z-index:-1!important;pointer-events:none!important;}
header.top .scoop-brand img{display:block!important;position:absolute!important;left:25px!important;top:5px!important;width:280px!important;height:auto!important;max-height:none!important;max-width:none!important;object-fit:contain!important;clip-path:none!important;filter:none!important;mix-blend-mode:normal!important;z-index:2!important;}
header.top nav.links{margin-left:340px!important;}
.hero-ornament{display:flex!important;align-items:center!important;justify-content:center!important;width:290px!important;height:48px!important;margin:7px 0 13px!important;gap:0!important;position:relative!important;z-index:8!important;}
.hero-ornament::before,.hero-ornament::after{content:none!important;display:none!important;}
.hero-ornament span{display:none!important;}
.hero-ornament img{display:block!important;width:290px!important;height:auto!important;max-height:48px!important;object-fit:contain!important;filter:none!important;mix-blend-mode:normal!important;opacity:1!important;transform:none!important;}
@media(max-width:1100px){header.top{padding-left:335px!important;}header.top nav.links{margin-left:0!important;}header.top .scoop-brand{width:300px!important;}header.top .scoop-brand::after{width:300px!important;}header.top .scoop-brand img{width:252px!important;left:24px!important;}}
@media(max-width:750px){header.top{padding:150px 12px 12px!important;justify-content:center!important;}header.top .scoop-brand{left:50%!important;transform:translateX(-50%)!important;width:300px!important;}header.top .scoop-brand::after{width:300px!important;}header.top .scoop-brand img{width:252px!important;left:24px!important;}header.top nav.links{margin-left:0!important;}}
@media(max-width:650px){.hero-ornament{width:260px!important;height:43px!important;}.hero-ornament img{width:260px!important;max-height:43px!important;}}

/* v2.1 corrective overrides: approved original mark; transparent original ornament */
header.top .scoop-brand img{left:12px!important;top:4px!important;width:306px!important;height:86px!important;max-height:86px!important;object-fit:contain!important;object-position:center top!important;}
.hero-ornament{width:300px!important;height:50px!important;margin:7px 0 13px!important;}
.hero-ornament img{width:300px!important;height:50px!important;max-height:50px!important;object-fit:contain!important;filter:none!important;mix-blend-mode:normal!important;}
.mountain-ornament img{filter:none!important;mix-blend-mode:normal!important;}
@media(max-width:1100px){header.top .scoop-brand img{width:272px!important;left:14px!important;height:77px!important;}}
@media(max-width:650px){.hero-ornament,.hero-ornament img{width:260px!important;height:43px!important;max-height:43px!important;}}

/* v2.2: approved-comp ornament rebuilt in resolution-independent vector strokes. */
.workshop-hero .hero-ornament{display:block!important;width:min(100%,430px)!important;height:auto!important;aspect-ratio:560/58!important;margin:9px 0 14px!important;line-height:0!important;transform:none!important;}
.workshop-hero .hero-ornament::before,.workshop-hero .hero-ornament::after,.workshop-hero .hero-ornament span{display:none!important;content:none!important;}
.workshop-hero .hero-ornament img{display:block!important;width:100%!important;height:100%!important;max-height:none!important;object-fit:contain!important;filter:none!important;mix-blend-mode:normal!important;opacity:1!important;transform:none!important;}
@media(max-width:650px){.workshop-hero .hero-ornament{width:min(100%,340px)!important;}}


/* v2.4 HEADER — canonical override. Hero rules and ornaments unchanged. */
header.top {
  --logo-slot: 302px;
  position:relative!important;
  display:grid!important;
  grid-template-columns:var(--logo-slot) minmax(0,1fr) auto!important;
  align-items:center!important;
  justify-content:initial!important;
  column-gap:14px!important;
  box-sizing:border-box!important;
  width:100%!important;
  height:81px!important;
  min-height:81px!important;
  padding:0 28px 0 20px!important;
  background:#f9f5ee!important;
  background-image:none!important;
  overflow:visible!important;
  isolation:isolate!important;
  z-index:50!important;
}
header.top .scoop-brand {
  grid-column:1!important;
  position:relative!important;
  left:auto!important;top:auto!important;
  transform:none!important;
  width:var(--logo-slot)!important;
  height:81px!important;
  min-height:0!important;
  margin:0!important;
  padding:3px 0 0!important;
  display:flex!important;
  justify-content:flex-start!important;
  align-items:flex-start!important;
  background:transparent!important;
  background-image:none!important;
  clip-path:none!important;
  border:0!important;
  border-radius:0!important;
  overflow:visible!important;
  z-index:5!important;
}
/* The approved shallow dip is underneath the baseline of the header;
   it never intersects or masks the wordmark's East Tennessee tagline. */
header.top .scoop-brand::before {
  content:''!important;
  position:absolute!important;
  top:79px!important;left:-20px!important;
  width:calc(var(--logo-slot) + 28px)!important;
  height:18px!important;
  inset:auto auto auto -20px!important;
  top:79px!important;
  background:#f9f5ee!important;
  background-image:none!important;
  clip-path:none!important;
  background: url('assets/header-scoop-v24.svg') center top/100% 100% no-repeat!important;
  border-radius:0!important;
  pointer-events:none!important;
  z-index:-1!important;
}
header.top .scoop-brand::after {content:none!important;display:none!important}
header.top .scoop-brand img {
  display:block!important;
  position:static!important;
  transform:none!important;
  width:282px!important;
  height:auto!important;
  max-height:none!important;
  max-width:100%!important;
  object-fit:contain!important;
  object-position:left top!important;
  padding:0!important;
  margin:0!important;
  mix-blend-mode:normal!important;
  filter:none!important;
  clip-path:none!important;
}
header.top nav.links {
  grid-column:2!important;
  display:flex!important;
  justify-content:flex-start!important;
  align-items:center!important;
  gap:clamp(12px,1.5vw,24px)!important;
  margin:0!important;
  padding:0!important;
  width:auto!important;
  min-width:0!important;
  order:0!important;
  flex-wrap:nowrap!important;
  white-space:nowrap!important;
  font-size:clamp(15px,1.2vw,18px)!important;
  line-height:1.15!important;
}
header.top nav.links a,header.top nav.links a.active {
  font-size:inherit!important;line-height:inherit!important;
  font-weight:600!important;
  transform:none!important;
  position:relative!important;
  top:0!important;
  margin:0!important;
  padding:5px 0!important;
  border:0!important;
  border-bottom:2px solid transparent!important;
}
header.top nav.links a.active{border-bottom-color:var(--red)!important}
header.top>.button {grid-column:3!important;justify-self:end!important;white-space:nowrap!important;order:0!important;margin:0!important;flex:initial!important}
@media(max-width:1100px){
 header.top{--logo-slot:264px;gap:9px!important;padding-left:12px!important;padding-right:12px!important}
 header.top .scoop-brand img{width:253px!important}
 header.top .scoop-brand::before{left:-12px!important;inset:auto auto auto -12px!important;top:79px!important;width:calc(var(--logo-slot) + 18px)!important}
 header.top nav.links{gap:11px!important;font-size:15px!important}
 header.top>.button{padding:12px 13px!important;font-size:12px!important}
}
@media(max-width:830px){
 header.top{--logo-slot:195px;grid-template-columns:var(--logo-slot) minmax(0,1fr) auto!important;gap:7px!important}
 header.top .scoop-brand img{width:192px!important}
 header.top nav.links{overflow-x:auto!important;overflow-y:hidden!important;scrollbar-width:thin;gap:12px!important;font-size:14px!important}
 header.top>.button{padding:10px!important;font-size:11px!important}
}
@media(max-width:560px){
 header.top{--logo-slot:145px;height:73px!important;min-height:73px!important;padding-left:7px!important;padding-right:7px!important}
 header.top .scoop-brand{height:73px!important}
 header.top .scoop-brand img{width:143px!important}
 header.top .scoop-brand::before{top:71px!important;left:-7px!important;inset:auto auto auto -7px!important;width:calc(var(--logo-slot) + 12px)!important;height:11px!important}
 header.top nav.links{font-size:13px!important}
 header.top>.button{font-size:11px!important;min-width:0!important;padding:8px!important}
}


/* v2.7 — exact sampled ivory + integrated shallow scoop. No hero modifications. */
:root{--logo-ivory-v27:#fefcf3;}
header.top{--header-height-v27:96px;height:var(--header-height-v27)!important;min-height:var(--header-height-v27)!important;background:var(--logo-ivory-v27)!important;background-image:none!important;}
header.top .scoop-brand{height:var(--header-height-v27)!important;background:var(--logo-ivory-v27)!important;padding:0!important;}
header.top .scoop-brand img{width:282px!important;height:auto!important;max-height:calc(var(--header-height-v27) - 1px)!important;object-fit:contain!important;}
header.top .scoop-brand::before{top:100%!important;inset:100% auto auto -20px!important;height:17px!important;width:calc(var(--logo-slot) + 28px)!important;background:url('assets/header-scoop-v27.svg') center top / 100% 100% no-repeat!important;}
@media(max-width:1100px){header.top{--header-height-v27:88px;}header.top .scoop-brand img{width:253px!important;}header.top .scoop-brand::before{inset:100% auto auto -12px!important;width:calc(var(--logo-slot) + 18px)!important;}}
@media(max-width:830px){header.top{--header-height-v27:73px;}header.top .scoop-brand img{width:192px!important;max-height:72px!important;}}
@media(max-width:560px){header.top{--header-height-v27:73px;}header.top .scoop-brand img{width:143px!important;}header.top .scoop-brand::before{inset:100% auto auto -7px!important;width:calc(var(--logo-slot) + 12px)!important;height:11px!important;}}

/* v2.8: center the Experiences mountain divider vertically in its own transition band. */
#experiences.section.paper { padding-top:0!important; }
#experiences > .mountain-ornament {
  margin:0 auto!important;
  height:72px;
  display:flex;
  justify-content:center;
  align-items:center;
  line-height:0;
}
#experiences > .mountain-ornament img { display:block; margin:0 auto; }
@media(max-width:650px){#experiences > .mountain-ornament {height:60px;}}

/* v3.3 Footer-only fix: text-free scene, brand-consistent logo, accessible horizontal links */
.footer-hero{background-image:linear-gradient(90deg,rgba(2,24,22,.48),rgba(2,24,22,.40)),url('assets/footer-mountain-dusk-textless.webp')!important;background-color:#17342f!important;background-size:cover!important;background-position:center 52%!important;min-height:190px!important;padding:22px 18px 25px!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:4px!important;isolation:isolate!important}
.footer-hero .eyebrow{position:relative!important;font-size:13px!important;letter-spacing:2.8px!important}
.footer-hero .script{position:relative!important;font-size:clamp(42px,5vw,64px)!important;line-height:1.03!important;text-shadow:0 2px 10px #081a15b8!important}
.footer-hero p{position:relative!important;font-size:clamp(15px,1.5vw,19px)!important;line-height:1.25!important;margin:4px 0 10px!important;text-shadow:0 2px 9px #061b17c7!important}
.footer-hero .button{position:relative!important;font-size:14px!important;padding:11px 20px!important}
.foot{background:#082c21!important;padding:19px clamp(18px,3vw,52px)!important;min-height:112px!important;display:grid!important;grid-template-columns:minmax(195px,260px) minmax(380px,1fr) auto!important;gap:clamp(18px,3vw,48px)!important;align-items:center!important;justify-content:space-between!important;text-align:left!important}
.foot .footer-brand{display:flex!important;align-items:center!important;width:fit-content!important;padding:4px 8px!important;background:#f9f5ee!important;border-radius:3px!important;text-decoration:none!important}
.foot .footer-brand img{width:220px!important;height:auto!important;max-height:78px!important;object-fit:contain!important;filter:none!important;mix-blend-mode:normal!important;opacity:1!important}
.foot .footer-contacts{display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:center!important;flex-wrap:wrap!important;gap:10px clamp(16px,1.8vw,30px)!important;font-size:clamp(17px,1.3vw,21px)!important;font-weight:600!important;line-height:1.2!important}
.foot .footer-contacts a{white-space:nowrap!important;text-underline-offset:5px!important}
.foot .footer-contacts a:hover{color:#e4be75!important}
.foot small{font-size:12px!important;line-height:1.45!important;text-align:right!important;opacity:.85!important;white-space:normal!important;max-width:210px!important}
@media(max-width:980px){.foot{grid-template-columns:auto 1fr!important}.foot small{grid-column:1/-1!important;max-width:none!important;text-align:center!important}.foot .footer-contacts{justify-content:flex-end!important}}
@media(max-width:650px){.footer-hero{min-height:210px!important;padding:25px 15px!important}.foot{display:flex!important;flex-direction:column!important;text-align:center!important;gap:15px!important;padding:22px 16px!important}.foot .footer-contacts{justify-content:center!important;gap:13px 20px!important;font-size:18px!important}.foot small{text-align:center!important}}


/* v3.4 footer refinements */
.footer-hero{background-image:linear-gradient(90deg,rgba(2,24,22,.36),rgba(2,24,22,.30)),url('assets/footer-unforgettable-lantern.png')!important;background-color:#17342f!important;background-size:cover!important;background-position:center center!important;background-repeat:no-repeat!important}
.foot{background:#082c21!important;padding:19px clamp(18px,3vw,52px)!important;min-height:112px!important;display:grid!important;grid-template-columns:minmax(195px,260px) minmax(420px,1fr) auto!important;gap:clamp(18px,3vw,42px)!important;align-items:center!important;justify-content:space-between!important;text-align:left!important}
.foot .footer-brand{display:flex!important;align-items:center!important;width:fit-content!important;padding:4px 8px!important;background:#f9f5ee!important;border-radius:3px!important;text-decoration:none!important}
.foot .footer-brand img{width:220px!important;height:auto!important;max-height:78px!important;object-fit:contain!important;filter:none!important;mix-blend-mode:normal!important;opacity:1!important}
.foot .footer-contacts{display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:center!important;flex-wrap:nowrap!important;gap:0!important;font-size:clamp(17px,1.3vw,21px)!important;font-weight:600!important;line-height:1.2!important;white-space:nowrap!important}
.foot .footer-contacts a{white-space:nowrap!important;text-underline-offset:5px!important}
.foot .footer-contacts .sep{display:inline-block!important;margin:0 clamp(10px,1vw,18px)!important;opacity:.75!important;color:#d9be88!important;font-weight:400!important}
.foot .footer-contacts a:hover{color:#e4be75!important}
.foot small{font-size:14px!important;line-height:1!important;text-align:right!important;opacity:.9!important;white-space:nowrap!important;max-width:none!important;display:block!important}
@media(max-width:1100px){.foot{grid-template-columns:auto 1fr!important}.foot small{grid-column:1/-1!important;justify-self:center!important;text-align:center!important}.foot .footer-contacts{justify-content:flex-end!important}}
@media(max-width:760px){.foot{display:flex!important;flex-direction:column!important;text-align:center!important;gap:14px!important;padding:22px 16px!important}.foot .footer-contacts{justify-content:center!important;flex-wrap:wrap!important;white-space:normal!important}.foot small{text-align:center!important;white-space:normal!important}}


/* v3.8 targeted fixes:
   1) Preserve Santa's full head in the story image at large desktop widths.
   2) Replace Meet The Rocky Top Santa image.
   3) Vertically center FAQ mountain/rule between section top and heading. */
.story {
  grid-template-columns: minmax(0,58%) minmax(0,42%);
  min-height: 420px;
}
.story-photo {
  min-height: 420px;
  background-position: center 14% !important;
  background-size: cover;
}
.story-copy {
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.meet-intro img {
  object-position: center 18%;
  transform: rotate(1deg);
}
.faq {
  padding-top: 72px !important;
}
.faq .mountain-ornament {
  margin: 0 auto 30px !important;
}
.faq h2 {
  margin-top: 0;
}
@media (min-width: 1600px) {
  .story {
    grid-template-columns: minmax(0,60%) minmax(0,40%);
    min-height: 460px;
  }
  .story-photo {
    min-height: 460px;
    background-position: center 11% !important;
  }
}
@media (max-width: 850px) {
  .story {
    grid-template-columns: 1fr;
    min-height: unset;
  }
  .story-photo {
    min-height: 300px;
    background-position: center 18% !important;
  }
  .faq {
    padding-top: 48px !important;
  }
  .faq .mountain-ornament {
    margin: 0 auto 20px !important;
  }
}

/* v3.9 – vertically balanced FAQ ornament spacing.
   Equal above/below distances from the ornament to the section edge and heading. */
.faq{padding-top:42px!important}
.faq .mountain-ornament{margin:0 auto 42px!important;display:block;text-align:center!important}
@media(max-width:850px){.faq{padding-top:30px!important}.faq .mountain-ornament{margin:0 auto 30px!important}}


/* v4.1 – Meet Santa page ornament alignment + copy refinements */
.meet-intro > img{
  width:100%;
  height:340px;
  object-fit:cover;
  object-position:center 18%;
  border:12px solid white;
  box-shadow:0 4px 18px #67432144;
  transform:rotate(1deg);
}
.meet-intro-copy .mountain-ornament,
.expect-section > .mountain-ornament{
  margin:0 auto 42px!important;
  height:72px;
  display:flex;
  justify-content:center;
  align-items:center;
  line-height:0;
  text-align:center!important;
}
.meet-intro-copy .mountain-ornament img,
.expect-section > .mountain-ornament img{
  display:block;
  width:168px;
  height:29px;
  margin:0 auto;
  object-fit:contain;
  border:0!important;
  box-shadow:none!important;
  transform:none!important;
  background:none!important;
}
.expect-section{padding-top:42px!important;}
.expect-section h2,
.meet-intro-copy h2{margin-top:0;}
@media(max-width:850px){
  .meet-intro > img{height:460px;}
}
@media(max-width:650px){
  .meet-intro-copy .mountain-ornament,
  .expect-section > .mountain-ornament{
    height:60px;
    margin:0 auto 30px!important;
  }
  .meet-intro-copy .mountain-ornament img,
  .expect-section > .mountain-ornament img{
    width:120px;
    height:auto;
  }
}


/* v4.2 – Meet Santa hero + ornament fidelity */
.meet-live-hero{
  background:
    linear-gradient(90deg, rgba(15,10,8,.86) 0%, rgba(23,14,10,.78) 32%, rgba(25,16,11,.38) 58%, rgba(18,12,9,.24) 100%),
    url('assets/card-holiday-market-pretzel.webp') center 34% / cover no-repeat !important;
}
.meet-live-hero:before{
  display:none!important;
}
.meet-live-hero:after{
  box-shadow:inset 0 0 60px 18px #0c080540!important;
  background:linear-gradient(90deg, rgba(16,10,8,.25), rgba(16,10,8,0) 55%);
}
.meet-live-hero .hero-stage:before{
  display:none!important;
}
.meet-live-hero .hero-person{
  display:none!important;
}
.meet-live-hero .hero-copy{
  width:48%!important;
  max-width:560px!important;
}
.meet-live-hero .hero-ornament{
  display:block!important;
  width:min(100%,430px)!important;
  height:auto!important;
  aspect-ratio:560/58!important;
  margin:9px 0 14px!important;
  line-height:0!important;
  transform:none!important;
}
.meet-live-hero .hero-ornament::before,
.meet-live-hero .hero-ornament::after,
.meet-live-hero .hero-ornament span{
  display:none!important;
  content:none!important;
}
.meet-live-hero .hero-ornament img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  max-height:none!important;
  object-fit:contain!important;
  filter:none!important;
  mix-blend-mode:normal!important;
  opacity:1!important;
  transform:none!important;
}
.meet-intro-ornament,
.expect-section > .mountain-ornament{
  margin:0 auto 42px!important;
  height:72px;
  display:flex;
  justify-content:center;
  align-items:center;
  line-height:0;
  text-align:center!important;
}
.meet-intro-ornament img,
.expect-section > .mountain-ornament img{
  display:block;
  width:168px;
  height:29px;
  margin:0 auto;
  object-fit:contain;
  border:0!important;
  box-shadow:none!important;
  transform:none!important;
  background:none!important;
}
.meet-intro{
  align-items:center!important;
}
.meet-intro-copy{
  display:flex;
  flex-direction:column;
  justify-content:center;
}
@media(max-width:850px){
  .meet-live-hero .hero-copy{width:56%!important;}
}
@media(max-width:650px){
  .meet-live-hero{
    background-position:72% center!important;
  }
  .meet-live-hero .hero-copy{
    width:100%!important;
    max-width:360px!important;
  }
  .meet-live-hero .hero-ornament{
    width:min(100%,340px)!important;
  }
  .meet-intro-ornament,
  .expect-section > .mountain-ornament{
    height:60px;
    margin:0 auto 30px!important;
  }
  .meet-intro-ornament img,
  .expect-section > .mountain-ornament img{
    width:120px;
    height:auto;
  }
}


/* v4.3 – Meet Santa hero crop + ornament refinement */
.meet-live-hero{
  background-position:center 10% !important;
  background-size:cover !important;
}
.meet-live-hero .hero-ornament{
  width:min(100%, 295px) !important;
  margin:8px 0 12px !important;
}
@media (min-width:1100px){
  .meet-live-hero{
    min-height:560px !important;
  }
  .meet-live-hero .hero-stage{
    min-height:560px !important;
  }
  .meet-live-hero{
    background-position:center 8% !important;
  }
}
@media (min-width:1400px){
  .meet-live-hero{
    background-position:center 6% !important;
  }
}
@media (max-width:850px){
  .meet-live-hero{
    background-position:center 16% !important;
  }
  .meet-live-hero .hero-ornament{
    width:min(100%, 270px) !important;
  }
}
@media (max-width:650px){
  .meet-live-hero{
    background-position:72% 22% !important;
  }
  .meet-live-hero .hero-ornament{
    width:min(100%, 240px) !important;
  }
}


/* v4.4 – fix Meet Santa hero crop on large screens */
.meet-live-hero{
  background:
    linear-gradient(90deg, rgba(15,10,8,.86) 0%, rgba(23,14,10,.76) 32%, rgba(25,16,11,.34) 58%, rgba(18,12,9,.16) 100%),
    url('assets/meet-approved-hero.png') center center / cover no-repeat !important;
  min-height:515px !important;
}
.meet-live-hero .hero-stage{
  min-height:515px !important;
}
.meet-live-hero .hero-ornament{
  width:min(100%,245px) !important;
  margin:8px 0 12px !important;
}
@media (min-width:1100px){
  .meet-live-hero,
  .meet-live-hero .hero-stage{
    min-height:515px !important;
  }
  .meet-live-hero{
    background-position:center center !important;
  }
}
@media (min-width:1400px){
  .meet-live-hero{
    background-position:center center !important;
  }
}
@media (max-width:850px){
  .meet-live-hero{
    background-position:64% center !important;
  }
  .meet-live-hero .hero-ornament{
    width:min(100%,230px) !important;
  }
}
@media (max-width:650px){
  .meet-live-hero{
    background-position:68% center !important;
    min-height:550px !important;
  }
  .meet-live-hero .hero-stage{
    min-height:550px !important;
  }
  .meet-live-hero .hero-ornament{
    width:min(100%,210px) !important;
  }
}

/* v4.5: New text-free Meet Santa market hero with composition-safe crop */
.meet-live-hero {
  background-image: linear-gradient(90deg,rgba(10,10,8,.83) 0%,rgba(15,12,9,.76) 32%,rgba(12,11,9,.18) 59%,rgba(10,10,10,.04) 100%),url('assets/meet-santa-christmas-market-hero.webp') !important;
  background-size:cover !important;
  background-position:center top !important;
  background-repeat:no-repeat !important;
  min-height:515px !important;
}
.meet-live-hero .hero-stage{min-height:515px !important;}
.meet-live-hero .hero-copy{position:relative;z-index:3;}
.meet-live-hero .hero-ornament{width:min(100%,295px)!important;}
.service-area {text-align:center; padding:44px 5% 52px;}
.service-area-content {max-width:920px;}
.service-area h2{font-size:clamp(30px,3vw,42px);margin:0 0 20px;line-height:1.08;}
.service-area p{font-size:clamp(17px,1.6vw,20px);line-height:1.42;margin:12px auto;}
@media(max-width:850px){.meet-live-hero{background-position:66% top!important;}}
@media(max-width:650px){
 .meet-live-hero{background-position:71% top!important;min-height:550px!important;}
 .meet-live-hero .hero-stage{min-height:550px!important;}
 .meet-live-hero .hero-copy{width:100%!important;max-width:355px!important;}
 .meet-live-hero .hero-copy::before{content:'';position:absolute;z-index:-1;inset:-12px -10px;background:linear-gradient(90deg,rgba(15,10,9,.85),rgba(15,10,9,.43) 76%,transparent);}
 .service-area{padding:32px 6% 38px;}
}
