@import "https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@400;500;600&family=Montserrat:wght@400;500;600;700&display=swap";:root{font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{min-width:320px;min-height:100vh;margin:0}#root{min-height:100vh}:root{--paper:#fbfaf7;--warm:#f1ebe3;--soft:#e8ded3;--ink:#151515;--muted:#5d554f;--line:#ded4ca;--gold:#c58b53;--gold-dark:#8e6034;--charcoal:#101010;--white:#fff;--shadow:0 22px 70px #31241917}*{box-sizing:border-box}html{scroll-behavior:smooth}body{min-width:320px;color:var(--ink);background:var(--paper);margin:0}button,a{font:inherit}button{color:inherit}img{width:100%;display:block}.judy-homepage{min-height:100vh;color:var(--ink);background:var(--paper);font-family:Montserrat,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;overflow-x:hidden}.site-header{z-index:50;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#fbfaf7f5;border-bottom:1px solid #15151512;grid-template-columns:auto 1fr auto;align-items:center;gap:28px;height:96px;padding:18px clamp(20px,6vw,88px);display:grid;position:sticky;top:0}.brand{color:var(--ink);text-align:left;cursor:pointer;background:0 0;border:0;gap:10px;padding:0;display:inline-grid}.brand span{letter-spacing:.14em;font-family:Cormorant Garamond,Georgia,serif;font-size:clamp(2.35rem,4vw,3.45rem);font-weight:500;line-height:.82}.brand small{letter-spacing:.38em;padding-left:.18em;font-size:.76rem;font-weight:700;line-height:1.25}.desktop-nav{justify-content:center;gap:clamp(18px,3.5vw,46px);display:flex}.desktop-nav button,.mobile-nav button,.mobile-nav a{color:var(--ink);letter-spacing:.1em;text-transform:uppercase;cursor:pointer;background:0 0;border:0;font-size:.82rem;font-weight:700;text-decoration:none;position:relative}.desktop-nav button:after{transform-origin:50%;background:var(--gold);content:"";height:1px;transition:transform .18s;position:absolute;bottom:-16px;left:0;right:0;transform:scaleX(0)}.desktop-nav button:hover,.desktop-nav button:first-child{color:var(--gold-dark)}.desktop-nav button:hover:after,.desktop-nav button:first-child:after{transform:scaleX(1)}.button{border:1px solid var(--charcoal);min-height:52px;color:var(--white);background:var(--charcoal);letter-spacing:.1em;text-transform:uppercase;justify-content:center;align-items:center;gap:10px;padding:0 30px;font-size:.83rem;font-weight:700;line-height:1;text-decoration:none;transition:transform .18s,background .18s,color .18s,border-color .18s,box-shadow .18s;display:inline-flex}.button:hover{transform:translateY(-2px);box-shadow:0 16px 38px #0f0f0f29}.button-icon{border:1.5px solid;border-radius:50%;width:15px;height:13px}.button-outline{color:var(--ink);border-color:var(--gold);background:0 0}.button-light{color:var(--ink);background:var(--white);border-color:var(--white)}.menu-toggle{border:1px solid var(--line);cursor:pointer;background:0 0;place-items:center;width:44px;height:44px;display:none}.menu-toggle span{background:var(--ink);grid-area:1/1;width:20px;height:1px}.menu-toggle span:last-child{transform:translateY(6px)}.mobile-nav{background:var(--paper);border-bottom:1px solid var(--line);box-shadow:var(--shadow);gap:0;padding:14px 24px 28px;display:grid;position:absolute;top:96px;left:0;right:0}.mobile-nav button,.mobile-nav a{border-bottom:1px solid var(--line);text-align:left;padding:16px 0}.hero{isolation:isolate;background:#e7ded5;align-items:center;min-height:calc(100vh - 96px);display:flex;position:relative;overflow:hidden}.hero:after{z-index:-1;content:"";background:linear-gradient(90deg,#f6f1ebeb 0%,#f6f1ebb8 31%,#f6f1eb1a 58%,#f6f1eb05 100%),linear-gradient(#0f0f0f00,#0f0f0f1a);position:absolute;inset:0}.hero-copy{z-index:1;flex-direction:column;justify-content:center;align-items:flex-start;width:min(100%,760px);padding:clamp(56px,8vw,120px) clamp(24px,6vw,128px);animation:.76s both floatIn;display:flex;position:relative}h1,h2,h3,p{margin-top:0}h1,h2{letter-spacing:.035em;text-transform:uppercase;font-family:Cormorant Garamond,Georgia,serif;font-weight:500}h1{max-width:620px;margin-bottom:22px;font-size:clamp(4rem,8vw,7rem);line-height:.98}h2{margin-bottom:12px;font-size:clamp(2.5rem,5vw,4.45rem);line-height:1.03}h3{letter-spacing:.09em;text-transform:uppercase;margin-bottom:10px;font-size:1rem;font-weight:700}p{color:var(--muted);font-size:1rem;line-height:1.78}.hero-copy p{max-width:380px;color:var(--ink);margin:0 0 32px;font-size:1.08rem}.rule{background:var(--gold);width:54px;height:1px;margin-bottom:26px;display:block}.hero-image-wrap{z-index:-2;min-height:100%;position:absolute;inset:0;overflow:hidden}.hero-image-wrap img{object-fit:cover;object-position:72% center;height:100%;animation:14s ease-in-out infinite alternate heroDrift}.section-pad{padding:clamp(72px,8vw,104px) clamp(20px,6vw,88px)}.reveal{--reveal-delay:0s;opacity:0;transition:opacity .7s ease var(--reveal-delay), transform .7s cubic-bezier(.2, .8, .2, 1) var(--reveal-delay), filter .7s ease var(--reveal-delay);will-change:opacity, transform, filter}.reveal-up{transform:translateY(42px)}.reveal-left{transform:translate(-46px)}.reveal-right{transform:translate(46px)}.reveal-pop{filter:blur(4px);transform:translateY(34px)scale(.96)}.reveal.is-visible{opacity:1;filter:blur();transform:translate(0)scale(1)}.section-header{text-align:center;max-width:840px;margin:0 auto 44px}.section-header .rule{margin-left:auto;margin-right:auto}.eyebrow{color:var(--gold);letter-spacing:.18em;text-transform:uppercase;margin-bottom:12px;font-size:1rem;font-weight:700;line-height:1.4}.section-intro{max-width:620px;margin-left:auto;margin-right:auto}.services{background:var(--paper)}.services-strip{grid-template-columns:repeat(4,1fr);gap:26px;max-width:1060px;margin:0 auto 58px;display:grid}.service-tile{text-align:center;justify-items:center;gap:10px;transition:transform .22s,color .22s;display:grid}.service-tile:hover{color:var(--gold-dark);transform:translateY(-8px)}.service-tile svg,.price-title svg{width:54px;height:54px;color:var(--gold);transition:transform .24s}.service-tile:hover svg{transform:rotate(-7deg)scale(1.08)}.service-tile p{max-width:210px;margin-bottom:0;font-size:.9rem;line-height:1.65}.price-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;max-width:1320px;margin:0 auto;display:grid}.price-card{border:1px solid var(--line);background:#ffffffb8;min-height:430px;padding:34px 36px 30px;transition:transform .22s,box-shadow .22s,border-color .22s;box-shadow:0 18px 60px #2c1f150e}.price-card:hover{border-color:#c58b5375;transform:translateY(-8px);box-shadow:0 28px 72px #2c1f151c}.price-title{align-items:center;gap:20px;margin-bottom:24px;display:flex}.price-card ul{gap:0;margin:0 0 30px;padding:0;list-style:none;display:grid}.price-card li{color:var(--ink);border-bottom:1px solid #1515151a;justify-content:space-between;gap:18px;padding:10px 0;font-size:.94rem;display:flex}.price-card strong{white-space:nowrap}.price-note{color:#80766e;margin-bottom:0;font-size:.88rem;font-style:italic}.about{border-top:10px solid var(--paper);background:linear-gradient(90deg, var(--warm), #faf7f2);grid-template-columns:minmax(320px,.86fr) minmax(360px,1fr);min-height:680px;display:grid}.about-image img,.gallery-image img{object-fit:cover;height:100%;min-height:680px}.about-copy,.gallery-copy{flex-direction:column;justify-content:center;align-items:flex-start;padding:clamp(56px,8vw,118px);display:flex}.about-copy h2,.gallery-copy h2,.contact-card h2{text-transform:none;letter-spacing:.02em}.about-copy>p:not(.eyebrow),.gallery-copy>p{max-width:520px;color:var(--ink)}.credentials{grid-template-columns:repeat(3,minmax(0,1fr));gap:0;width:100%;max-width:660px;margin:34px 0 38px;display:grid}.credentials div{border-right:1px solid var(--line);text-align:center;min-height:88px;padding:0 20px}.credentials div:first-child{padding-left:0}.credentials div:last-child{border-right:0;padding-right:0}.credentials span{color:var(--gold);font-family:Cormorant Garamond,Georgia,serif;font-size:2rem;line-height:1;display:block}.credentials strong{letter-spacing:.09em;text-transform:uppercase;margin-top:12px;font-size:.78rem;line-height:1.5;display:block}.gallery{background:var(--paper);grid-template-columns:1.05fr .95fr;display:grid}.gallery-copy{order:1}.gallery-image{order:2;overflow:hidden}.gallery-image img{transition:transform .9s}.gallery:hover .gallery-image img{transform:scale(1.035)}.gallery-copy{padding-top:80px;padding-bottom:80px}.text-button{border:1px solid var(--charcoal);min-height:42px;color:var(--white);background:var(--charcoal);letter-spacing:.1em;text-transform:uppercase;cursor:pointer;margin-top:16px;padding:0 24px;font-size:.72rem;font-weight:700;transition:transform .18s,box-shadow .18s}.text-button:hover{transform:translateY(-2px);box-shadow:0 14px 34px #0f0f0f29}.testimonials{background:radial-gradient(circle at 20% 0%, #c58b531a, transparent 32rem), var(--warm)}.testimonial-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;max-width:1120px;margin:0 auto;display:grid}.testimonial-card{text-align:center;background:#ffffffc7;border:1px solid #fffc;flex-direction:column;justify-content:space-between;align-items:center;min-height:292px;padding:30px 28px 26px;transition:transform .22s,box-shadow .22s;display:flex;box-shadow:0 18px 60px #2c1f150e}.testimonial-card:hover{transform:translateY(-8px);box-shadow:0 28px 72px #2c1f151c}.stars{color:var(--gold);letter-spacing:.12em;font-size:1.2rem}.testimonial-card p{color:var(--ink);margin:18px 0 22px;font-family:Georgia,Times New Roman,serif;font-size:1rem;font-style:italic;line-height:1.75}.client{align-items:center;gap:12px;display:flex}.avatar{border:2px solid var(--white);border-radius:50%;flex:none;width:48px;height:48px;transition:transform .22s;box-shadow:0 4px 18px #0000001f}.testimonial-card:hover .avatar{transform:scale(1.08)rotate(3deg)}.avatar-one{background:linear-gradient(145deg,#ead0b6,#b57d5c 58%,#4a2a20)}.avatar-two{background:linear-gradient(145deg,#4a281f,#16100d 58%,#b47a4a)}.avatar-three{background:linear-gradient(145deg,#f0d8bd,#ca936a 58%,#6f402c)}.avatar-four{background:linear-gradient(145deg,#2d1a14,#8b5435 58%,#e2b177)}.client strong,.client small{text-align:left;display:block}.client strong{letter-spacing:.1em;text-transform:uppercase;font-size:.78rem}.client small{color:var(--muted);margin-top:4px;font-size:.74rem}.center-cta{justify-content:center;margin-top:34px;display:flex}.faq{background:var(--paper)}.faq-list{border-top:1px solid var(--line);max-width:860px;margin:0 auto}.faq-item{border-bottom:1px solid var(--line)}.faq-item button{cursor:pointer;text-align:left;background:0 0;border:0;justify-content:space-between;align-items:center;gap:24px;width:100%;padding:24px 0;display:flex}.faq-item button span{font-family:Cormorant Garamond,Georgia,serif;font-size:1.65rem}.faq-item button b{color:var(--gold);font-size:1.6rem;font-weight:400}.faq-item p{max-width:680px;margin-bottom:24px;animation:.22s both softDrop}.contact{background:linear-gradient(135deg,#1a1714,#32261e);padding:clamp(72px,9vw,120px) clamp(20px,6vw,88px)}.contact-card{text-align:center;max-width:920px;margin:0 auto}.contact-card h2{color:var(--white)}.contact-card p:not(.eyebrow){color:#ffffffc2;max-width:640px;margin-left:auto;margin-right:auto}.contact-actions{flex-wrap:wrap;justify-content:center;gap:14px;margin-top:34px;display:flex}.contact .button-outline{color:var(--white)}.footer{color:var(--white);background:#0f0f0f;grid-template-columns:1.2fr 1fr 1fr;gap:38px;padding:46px clamp(20px,6vw,88px);display:grid}.footer .brand{color:var(--white)}.footer p,.footer address{color:#ffffffad;max-width:360px;margin:16px 0 0;font-style:normal;line-height:1.8}.footer-links{align-content:start;gap:10px;display:grid}.footer-links a{color:#ffffffc7;text-decoration:none}.footer-links a:hover{color:var(--white)}@keyframes floatIn{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes softDrop{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@keyframes heroDrift{0%{transform:scale(1.02)translate(0)}to{transform:scale(1.07)translate(-1.2%)}}@media (width<=1120px){.site-header{grid-template-columns:auto 1fr auto auto}.desktop-nav{display:none}.menu-toggle{display:grid}.hero{min-height:calc(100vh - 96px)}.hero-copy{min-height:calc(100vh - 96px);padding-bottom:42px}.hero-image-wrap{min-height:100%}.services-strip,.testimonial-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.price-grid{grid-template-columns:1fr;max-width:760px}.about,.gallery{grid-template-columns:1fr}.gallery-copy{order:1}.gallery-image{order:2}.about-image img,.gallery-image img{min-height:480px}}@media (width<=720px){.site-header{grid-template-columns:1fr auto;gap:12px;height:78px;padding:14px 18px}.site-header>.button{display:none}.brand span{font-size:2.35rem}.brand small{font-size:.62rem}.mobile-nav{top:78px}.hero{min-height:620px}.hero-copy{min-height:620px;padding:42px 20px 56px}h1{font-size:clamp(3.2rem,17vw,4.8rem)}h2{font-size:clamp(2.25rem,11vw,3.35rem)}.hero-image-wrap{min-height:100%}.section-pad,.about-copy,.gallery-copy{padding:66px 20px}.services-strip,.testimonial-grid,.credentials,.footer{grid-template-columns:1fr}.credentials{gap:18px}.credentials div{border-right:0;border-bottom:1px solid var(--line);padding:0 0 18px}.credentials div:last-child{border-bottom:0}.price-card{min-height:auto;padding:26px 22px}.price-title{align-items:flex-start}.testimonial-card{min-height:250px}.faq-item button span{font-size:1.32rem}.contact-actions{flex-direction:column;align-items:stretch}.footer{padding-bottom:56px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.reveal{opacity:1!important;filter:none!important;transform:none!important}}
