@import url('https://fonts.googleapis.com/css2?family=Inter+Tight:wght@300;400;500;600&family=Old+Standard+TT:ital,wght@0,400;1,400&display=swap');
:root{--green:#14412c;--cream:#f5e9cf;--paper:#fbf6f5;--ink:#1e1e1e;--gold:#e7b04f}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--paper);color:var(--green);font-family:'Inter Tight',Arial,sans-serif}a{color:inherit;text-decoration:none}button,a,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,summary:focus-visible{outline:3px solid var(--gold);outline-offset:7px}.skip{position:fixed;top:-80px;z-index:100;background:var(--cream);padding:16px}.skip:focus{top:0}header{position:absolute;top:0;left:0;width:100%;z-index:5;display:flex;align-items:center;justify-content:space-between;padding:25px 4.5%;color:var(--cream);border-bottom:1px solid #ffffff40}.logo{width:173px;display:block}nav{display:flex;gap:36px;align-items:center;font-size:13px}nav a{padding:12px 0}.nav-contact{border-left:1px solid #ffffff50;padding-left:30px}.nav-contact span{margin-left:24px}.hero{min-height:830px;height:100svh;max-height:1100px;position:relative;isolation:isolate;color:var(--cream);overflow:hidden;background:#263b2d}.hero-photo{position:absolute;inset:0;background:url('assets/family.webp') 82% 50%/auto 125% no-repeat;z-index:-4}.hero-shade{position:absolute;inset:0;z-index:-3;background:linear-gradient(90deg,#102d21f5 0%,#183527dd 23%,#1b342850 54%,#10271910 75%,#102d2140),linear-gradient(0deg,#102d21bd,transparent 45%)}.gridlines{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,transparent 17.3%,#ffffff22 17.4%,transparent 17.5%,transparent 75%,#ffffff22 75.1%,transparent 75.2%)}.gridlines:after{content:'';position:absolute;top:65%;width:100%;border-top:1px solid #ffffff26}.hero-content{padding:185px 6% 0;position:relative;z-index:2}.eyebrow{font-size:10px;font-weight:500;letter-spacing:2.2px;line-height:1.8}.eyebrow span{padding:0 8px}h1{font-size:clamp(94px,10.7vw,165px);font-weight:300;line-height:.91;letter-spacing:-6px;margin:36px 0 40px}em{font-family:'Old Standard TT',Georgia,serif;font-weight:400}h1 em{font-size:1.12em;letter-spacing:-6px}.hero-bottom p{font-size:20px;line-height:1.55;font-weight:300;margin-bottom:26px}.hero-bottom strong{font-weight:500}.button{display:inline-flex;align-items:center;gap:30px;padding:19px 24px;border-radius:40px;font-size:13px;font-weight:500;transition:transform .25s,background .25s}.button:hover{transform:translateY(-3px);background:#fff7e8}.light{background:var(--cream);color:var(--green)}.button span{font-size:22px;line-height:12px}.season{position:absolute;right:5%;top:155px;display:flex;align-items:center;gap:13px;font-size:9px;letter-spacing:1.5px;line-height:1.8}.star{color:var(--gold);font-size:48px;font-weight:300}.polaroid{position:absolute;right:8%;bottom:100px;z-index:3;width:180px;margin:0;background:var(--cream);padding:9px 9px 17px;transform:rotate(9deg);box-shadow:0 10px 30px #0004;transition:transform .4s}.polaroid:hover{transform:rotate(0) translateY(-8px)}.polaroid img{width:100%;height:190px;object-fit:cover}.polaroid figcaption{color:var(--green);font-family:Georgia,serif;font-style:italic;font-size:11px;text-align:center;padding-top:10px}.hero-foot{position:absolute;bottom:26px;left:6%;right:5%;display:flex;justify-content:space-between;z-index:3;font-size:9px;letter-spacing:1.2px}.hero-foot span{font-size:9px;letter-spacing:.3px;color:#f5e9cfbb}.watermark{position:absolute;bottom:-55px;left:42%;font:italic 200px Georgia;opacity:.12;z-index:0;white-space:nowrap}.ribbon{background:var(--green);color:var(--cream);display:flex;justify-content:space-around;align-items:center;padding:25px 20px;gap:20px;font-size:10px;letter-spacing:2px}.ribbon span:nth-child(even){color:var(--gold);font-size:23px}.section{padding:110px 7%;scroll-margin-top:15px}h2{font-size:clamp(36px,4.5vw,68px);font-weight:300;letter-spacing:-2px;line-height:1.12;margin:18px 0 28px}h2 em{letter-spacing:-1.5px}.intro{display:grid;grid-template-columns:1fr 2.4fr;gap:6%;padding-top:130px;padding-bottom:130px}.intro>.eyebrow{padding-top:28px}.intro-copy p{max-width:620px;color:#536153;line-height:1.9;font-size:16px}.text-link{display:inline-flex;gap:40px;border-bottom:1px solid #14412c66;padding:18px 0 10px;font-size:14px}.section-head{display:flex;justify-content:space-between;align-items:end;gap:30px}.section-head>p{font-size:15px;line-height:1.8;padding-bottom:20px}.memories{background:#eee8dc;padding-top:85px}.gallery{display:grid;grid-template-columns:1.1fr 1fr;gap:9%;max-width:1100px;margin:30px auto 0}.memory{margin:0}.memory.second{padding-top:120px}.photo-wrap{overflow:hidden}.photo-wrap img{display:block;width:100%;height:580px;object-fit:cover;transition:transform .8s}.second .photo-wrap img{height:460px}.photo-wrap:hover img{transform:scale(1.035)}.memory figcaption{padding-top:25px}.memory figcaption>span{font-size:10px;letter-spacing:1.8px}h3{font-weight:400;font-size:27px;line-height:1.3;letter-spacing:-.6px}.memory h3{font:36px 'Old Standard TT',Georgia,serif;margin:15px 0}.image-note{font-size:11px;color:#647061;text-align:center;margin-top:55px}.experience{background:var(--green);color:var(--cream)}.large-star{font-size:110px;color:var(--gold)}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:50px;margin-top:50px}.steps article{border-top:1px solid #f5e9cf50;padding-top:24px}.steps article>span{font:italic 30px Georgia;color:var(--gold)}.steps p{font-size:15px;line-height:1.85;color:#ddd9ca;max-width:320px}.steps h3{font-size:23px}.faq{display:grid;grid-template-columns:1fr 1fr;gap:8%}.faq h2{font-size:45px}.questions{padding-top:20px}details{border-bottom:1px solid #14412c40}summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:20px;padding:25px 0;font-size:16px}summary::-webkit-details-marker{display:none}summary span{font-size:23px;font-weight:300;line-height:20px}details[open] summary span{transform:rotate(45deg)}details p{font-size:14px;line-height:1.9;color:#536153;margin:0 25px 24px 0}.contact{background:var(--green);color:var(--cream);text-align:center;position:relative;padding-top:65px;padding-bottom:70px}.contact h2{font-size:clamp(40px,5.1vw,74px)}.contact>p:not(.eyebrow):not(.contact-status){font-size:16px;line-height:1.9;color:#e1dfd2;margin:25px 0 30px}.contact .eyebrow{margin-top:20px}.contact-status{font-size:11px;margin-top:18px;color:#d0d6c5}.contact-script{display:block;font:italic 30px Georgia;color:#b2bf93;margin-top:60px}footer{padding:40px 6%;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:11px}footer .logo{width:150px}footer p{color:#647061}.reveal{opacity:1}.js .reveal{opacity:0;transform:translateY(20px);transition:opacity .8s,transform .8s}.js .reveal.visible{opacity:1;transform:none}.hero-content{animation:enter 1s both}@keyframes enter{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:none}}
@media(min-width:1500px){.hero-content{padding-top:210px}.hero{min-height:900px}}@media(max-width:900px){nav{gap:20px}.hero{min-height:850px}.hero-photo{background-position:75% center;background-size:auto 115%}.hero-shade{background:linear-gradient(90deg,#102d21e8,#102d2150),linear-gradient(0deg,#102d21ee,transparent 70%)}.season{display:none}.polaroid{right:6%;width:150px;bottom:130px}.polaroid img{height:150px}.hero-content{padding-top:185px}h1{font-size:115px}.intro{grid-template-columns:1fr;gap:10px}.section{padding:75px 6%}.photo-wrap img{height:450px}.second .photo-wrap img{height:370px}.steps{gap:25px}.faq{grid-template-columns:1fr;gap:20px}.faq h2{font-size:44px}.large-star{font-size:75px}}
@media(max-width:600px){header{padding:20px 6%}.logo{width:135px}nav a:not(.nav-contact){display:none}.nav-contact{border:0;padding-left:0;font-size:12px}.hero{height:auto;min-height:880px;max-height:none}.hero-photo{background-size:auto 88%;background-position:64% top}.hero-shade{background:linear-gradient(0deg,#102d21 0%,#102d21e8 22%,#102d2140 65%,#102d2199)}.hero-content{padding:160px 6% 0}.eyebrow{font-size:9px;letter-spacing:1.5px}.hero-content .eyebrow{max-width:220px}h1{font-size:83px;letter-spacing:-4px;margin:35px 0 30px}h1 em{letter-spacing:-4px}.hero-bottom{padding-top:115px}.hero-bottom p{font-size:18px}.button{font-size:12px;padding:18px 21px;gap:23px}.polaroid{width:112px;bottom:275px;right:8%;padding:6px 6px 10px}.polaroid img{height:120px}.polaroid figcaption{font-size:9px;line-height:1.3}.hero-foot{bottom:22px;display:block;font-size:8px}.hero-foot span{display:block;margin-top:17px;font-size:8px}.watermark{left:20%;bottom:30px;font-size:120px}.gridlines{opacity:.6}.ribbon{padding:20px 15px;font-size:8px;letter-spacing:1px;gap:12px}.ribbon span:nth-last-child(-n+2){display:none}.section{padding:65px 7%}h2{font-size:39px;letter-spacing:-1.6px}.intro-copy p{font-size:15px}.section-head{display:block}.section-head>p{font-size:14px}.gallery{gap:24px;grid-template-columns:1fr;margin-top:10px}.memory.second{padding-top:35px}.photo-wrap img,.second .photo-wrap img{height:480px}.memory h3{font-size:32px}.image-note{line-height:1.6}.large-star{display:none}.steps{grid-template-columns:1fr;gap:28px;margin-top:35px}.steps article{display:grid;grid-template-columns:35px 1fr;column-gap:15px}.steps article>span{grid-row:1/3}.steps h3{margin:0 0 10px}.steps p{margin:0;max-width:none}.faq h2{font-size:38px}summary{font-size:15px}.contact h2{font-size:40px}.contact .eyebrow{font-size:8px}.contact-script{font-size:25px}footer{flex-wrap:wrap;padding:35px 7%;gap:24px}footer p{order:3;width:100%;margin:0;font-size:11px}footer .logo{width:130px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.js .reveal{opacity:1;transform:none}}
.arrow-icon{width:17px;height:17px;display:inline-block;vertical-align:middle;fill:none;stroke:currentColor;stroke-width:1.4;flex-shrink:0}.star,.large-star,.ribbon span:nth-child(even){font-family:Arial,sans-serif;font-variant-emoji:text}
/* Christmas accents and supplied decorative assets */
:root{--red:#a5212c}.ribbon{background:var(--red)}.memories .eyebrow,.intro>.eyebrow,.faq .eyebrow,.memory figcaption>span{color:var(--red)}.text-link{color:var(--red);border-color:#a5212c60}.hero .button,.contact .button{background:var(--red);color:var(--cream)}.hero .button:hover,.contact .button:hover{background:#861b25}.polaroid{border-bottom:4px solid var(--red)}.snowflake{display:inline-block;width:1em;height:1em;object-fit:contain;vertical-align:middle}.ribbon .snowflake{width:23px;height:23px}.season .snowflake{width:44px;height:44px}.large-star .snowflake{width:100px;height:100px}.contact>.star .snowflake{width:48px;height:48px}
.music-player{position:fixed;right:max(22px,env(safe-area-inset-right));bottom:max(22px,env(safe-area-inset-bottom));z-index:30;display:flex;align-items:center;gap:12px}.music-label{font-size:11px;background:var(--cream);color:var(--green);border:1px solid #14412c22;padding:9px 12px;border-radius:20px;box-shadow:0 3px 14px #0002}.music-player button{position:relative;width:88px;height:88px;border-radius:18px;border:2px solid var(--cream);padding:0;background:#fff;cursor:pointer;overflow:hidden;box-shadow:0 5px 25px #0004;transition:transform .2s}.music-player button:hover{transform:translateY(-3px)}.music-player button:focus-visible{outline:3px solid var(--gold);outline-offset:5px}.vinyl{width:100%;height:100%;object-fit:cover;display:block}.music-symbol{position:absolute;bottom:5px;right:5px;width:26px;height:26px;border-radius:50%;display:grid;place-items:center;font-family:Arial,sans-serif;font-size:13px;line-height:1;background:var(--red);color:#fff;box-shadow:0 2px 7px #0003}.music-shine{pointer-events:none;position:absolute;inset:-50%;background:linear-gradient(110deg,transparent 40%,#fff9 48%,#fffd 50%,transparent 60%);transform:translateX(-100%);animation:shine 5s ease-in-out infinite}.music-player button.playing{border-color:var(--gold)}@keyframes shine{0%,55%{transform:translateX(-100%)}85%,100%{transform:translateX(100%)}}@media(max-width:600px){.music-player{right:14px;bottom:max(14px,env(safe-area-inset-bottom))}.music-player button{width:66px;height:66px;border-radius:13px}.music-label{font-size:10px;padding:7px 10px}.music-symbol{width:23px;height:23px}.contact{padding-bottom:110px}footer{padding-bottom:110px}}@media(prefers-reduced-motion:reduce){.music-shine{display:none}}
/* Refined closing section, transparent music control and quiet snow motion */
.contact{padding-top:76px;padding-bottom:76px}.contact h2{line-height:1.22;margin:24px 0 28px}.contact>.eyebrow{line-height:1.6;margin:22px 0 0}.contact>p:not(.eyebrow):not(.contact-status){line-height:1.65;margin:0 auto 30px;max-width:100%;font-size:16px}.contact-script{margin-top:42px;line-height:1.3}
.music-player{gap:0}.music-player button,.music-player button.playing{border:0;background:transparent;box-shadow:none;border-radius:0;overflow:visible;width:100px;height:100px}.vinyl{object-fit:contain;filter:drop-shadow(0 5px 7px #0003)}.music-symbol{width:30px;height:30px;right:0;bottom:10px;border:1px solid #ffffff66;background:#ffffff20;color:#fff;backdrop-filter:blur(10px) saturate(140%);-webkit-backdrop-filter:blur(10px) saturate(140%);box-shadow:inset 0 1px 2px #ffffff55,0 3px 10px #0002;text-shadow:0 1px 3px #0009}.music-shine{inset:20% 4% 18%;border-radius:4px;clip-path:inset(0);animation:soft-shine 6s ease-in-out infinite;background:linear-gradient(110deg,transparent 30%,#ffffff66 49%,transparent 65%);background-size:300% 100%;transform:none}@keyframes soft-shine{0%,60%{background-position:150% 0;opacity:0}65%{opacity:1}90%,100%{background-position:-50% 0;opacity:0}}
.snowflake{animation:snow-turn 40s linear infinite,snow-wiggle 6s ease-in-out infinite;transform-origin:center}.ribbon span:nth-child(4) .snowflake{animation-delay:-12s,-2s}.large-star .snowflake{animation-duration:55s,8s}@keyframes snow-turn{to{rotate:360deg}}@keyframes snow-wiggle{0%,100%{transform:translateY(0) rotate(-3deg)}50%{transform:translateY(-2px) rotate(3deg)}}
.studio-footer{display:block;padding:65px 7% 26px;background:var(--cream)}.footer-top{display:grid;grid-template-columns:1.1fr 1.3fr 1fr;gap:65px;align-items:start;padding-bottom:50px}.studio-footer .logo{width:185px}.footer-brand p{font-size:15px;line-height:1.7;margin:22px 0 0;color:#536153}.footer-visit h3{font:28px/1.25 'Old Standard TT',Georgia,serif;margin:16px 0 2px}.footer-visit .text-link{font-size:13px;padding-top:16px;gap:20px}.footer-explore{display:flex;flex-direction:column;align-items:start;gap:17px}.footer-explore .eyebrow{margin-bottom:5px}.footer-explore>a{font-size:13px}.footer-explore>a:hover{color:var(--red)}.footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #14412c30;padding-top:24px;font-size:11px;color:#536153}
@media(max-width:700px){.contact{padding-top:60px;padding-bottom:70px}.contact h2{line-height:1.2}.contact>p:not(.eyebrow):not(.contact-status){font-size:14px;line-height:1.65;max-width:440px}.music-player button{width:80px;height:80px}.music-symbol{width:28px;height:28px;bottom:5px}.studio-footer{padding:48px 7% 110px}.footer-top{grid-template-columns:1fr 1fr;gap:35px 24px;padding-bottom:32px}.footer-brand{grid-column:1/-1}.footer-brand p{font-size:14px}.footer-visit h3{font-size:24px}.footer-visit .text-link{font-size:12px;gap:10px}.footer-bottom{font-size:10px;line-height:1.5}.footer-explore>a{font-size:12px}}@media(max-width:380px){.footer-top{grid-template-columns:1fr}.footer-brand{grid-column:auto}}@media(prefers-reduced-motion:reduce){.snowflake{animation:none}.music-shine{display:none}}
