*,:after,:before{margin:0;padding:0;box-sizing:border-box}:root{--black:#0a0a0a;--ink:#151515;--graphite:#2a2a2a;--steel:#4a4a4a;--ash:#8a8a8a;--silver:#b8b8b8;--fog:#d4d4d4;--bone:#ededed;--paper:#f7f7f5;--white:#fff;--display:"Big Shoulders Display",sans-serif;--serif:"Instrument Serif",serif;--body:"Manrope",sans-serif;--mono:"JetBrains Mono",monospace;--pad:clamp(1.25rem,4vw,4rem)}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased}body{font-family:var(--body);background:var(--paper);color:var(--black);font-weight:400;line-height:1.5;overflow-x:hidden;cursor:default}img{max-width:100%;display:block}button{font-family:inherit;cursor:pointer;border:none;background:none}a{color:inherit;text-decoration:none}body:before{content:"";position:fixed;inset:0;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='3'/%3E%3CfeColorMatrix values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.3 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");opacity:.35;pointer-events:none;z-index:9999;mix-blend-mode:multiply}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:var(--bone)}::-webkit-scrollbar-thumb{background:var(--black)}::selection{background:var(--black);color:var(--white)}.label{font-family:var(--mono);font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;font-weight:600}.italic{font-family:var(--serif);font-style:italic;font-weight:400}.announce{background:var(--black);color:var(--white);padding:.7rem 0;overflow:hidden;position:relative}.ticker{display:flex;gap:3rem;white-space:nowrap;animation:ticker 40s linear infinite;font-family:var(--mono);font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;font-weight:600}.ticker span{color:var(--ash)}.ticker em{color:var(--white);font-style:normal}@keyframes ticker{0%{transform:translateX(0)}to{transform:translateX(-50%)}}nav.primary{position:-webkit-sticky;position:sticky;top:0;background:hsla(60,11%,96%,.92);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);z-index:100;border-bottom:1px solid var(--bone)}.nav-inner{max-width:1600px;margin:0 auto;padding:1.25rem var(--pad);display:flex;justify-content:space-between;gap:2rem}.logo,.nav-inner{align-items:center}.logo{display:inline-flex;line-height:0;transition:opacity .2s}.logo:hover{opacity:.85}.logo-img{display:block;width:auto;height:68px;max-height:68px;border-radius:4px;box-shadow:0 1px 0 rgba(0,0,0,.04)}.logo-img-footer{height:88px;max-height:88px}@media (max-width:880px){.logo-img{height:54px}.logo-img-footer{height:70px}}.nav-links{display:flex;gap:2rem;font-family:var(--mono);font-size:.78rem;letter-spacing:.15em;text-transform:uppercase;font-weight:600}.nav-links a{position:relative;transition:opacity .2s}.nav-links a:hover{opacity:.5}.nav-links a:after{content:"";position:absolute;left:0;bottom:-4px;width:0;height:1px;background:var(--black);transition:width .3s ease}.nav-links a:hover:after{width:100%}.btn{display:inline-flex;align-items:center;gap:.6rem;padding:.95rem 1.6rem;background:var(--black);color:var(--white);font-family:var(--mono);font-size:.78rem;letter-spacing:.15em;text-transform:uppercase;font-weight:600;transition:all .25s ease;position:relative;overflow:hidden}.btn:before{content:"";position:absolute;inset:0;background:var(--graphite);transform:translateY(100%);transition:transform .3s ease}.btn:hover:before{transform:translateY(0)}.btn>span{position:relative;z-index:1}.btn.ghost{background:transparent;color:var(--black);border:1px solid var(--black)}.btn.ghost:before{background:var(--black)}.btn.ghost:hover{color:var(--white)}.btn-arrow{transition:transform .25s ease;position:relative;z-index:1}.btn:hover .btn-arrow{transform:translateX(4px)}.btn.inverse{background:var(--white);color:var(--black)}.btn.inverse:before{background:var(--fog)}.btn.inverse:hover{color:var(--black)}.btn-label-mobile,.hamburger{display:none}@media (max-width:880px){.nav-links{display:none}.nav-links.open{display:flex;position:absolute;top:100%;left:0;right:0;background:var(--paper);flex-direction:column;padding:2rem var(--pad);border-bottom:1px solid var(--bone);gap:1.75rem}.nav-links.open a{padding:.5rem 0;font-size:.95rem}.hamburger{display:inline-flex;flex-direction:column;justify-content:center;align-items:center;gap:5px;min-width:44px;min-height:44px;padding:.6rem}.hamburger span{width:22px;height:2px;background:var(--black);transition:transform .2s;display:block}.nav-book-btn{padding:.75rem 1.1rem;gap:.45rem;font-size:.75rem}.nav-book-btn .btn-label-full{display:none}.nav-book-btn .btn-label-mobile{display:inline}.nav-inner{gap:1rem}}.hero{padding:clamp(3rem,8vw,6rem) var(--pad) clamp(2rem,5vw,4rem);max-width:1600px;margin:0 auto;position:relative}.hero-top{display:flex;justify-content:space-between;align-items:flex-end;gap:2rem;margin-bottom:2rem;flex-wrap:wrap}.hero-meta{font-family:var(--mono);font-size:.74rem;letter-spacing:.18em;text-transform:uppercase;color:var(--steel);font-weight:600;display:flex;gap:1.5rem;align-items:center}.hero-meta:before{content:"";width:40px;height:1px;background:var(--black)}.hero-rating{display:flex;gap:.75rem;align-items:center;font-family:var(--mono);font-size:.74rem;letter-spacing:.1em;text-transform:uppercase;font-weight:600;color:var(--graphite)}.stars{color:var(--black);letter-spacing:2px;font-size:.85rem}.hero h1{font-family:var(--display);font-weight:900;font-size:clamp(3.5rem,14vw,14rem);line-height:.82;letter-spacing:-.035em;text-transform:uppercase;margin-bottom:1.5rem}.hero h1 .line{display:block;overflow:hidden}.hero h1 .line span{display:inline-block;animation:rise 1s cubic-bezier(.2,.8,.2,1) both}.hero h1 .line:first-child span{animation-delay:.05s}.hero h1 .line:nth-child(2) span{animation-delay:.18s}.hero h1 .line:nth-child(3) span{animation-delay:.31s}@keyframes rise{0%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}.hero h1 .accent{font-family:var(--serif);font-style:italic;font-weight:400;text-transform:none;letter-spacing:-.01em}.hero-bottom{display:grid;grid-template-columns:1fr auto;grid-gap:3rem;gap:3rem;align-items:end;padding-top:2.5rem;border-top:1px solid var(--black);animation:fadeUp 1s .5s both}@keyframes fadeUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.hero-lede{max-width:42ch;font-size:clamp(1rem,1.3vw,1.15rem);line-height:1.55;color:var(--graphite)}.hero-lede strong{font-weight:600;color:var(--black)}.hero-cta{display:flex;gap:1rem;flex-wrap:wrap;align-items:center}@media (max-width:760px){.hero-bottom{grid-template-columns:1fr;gap:2rem}}.trust{background:var(--black);color:var(--white);padding:1.75rem 0;overflow:hidden;border-top:1px solid var(--ink);border-bottom:1px solid var(--ink)}.trust-ticker{display:flex;gap:4rem;white-space:nowrap;animation:ticker 50s linear infinite;font-family:var(--display);font-weight:800;font-size:clamp(1.5rem,3vw,2.5rem);letter-spacing:.01em;text-transform:uppercase;align-items:center}.trust-ticker .dot{width:8px;height:8px;border-radius:50%;background:var(--white);flex-shrink:0}.trust-ticker em{font-family:var(--serif);font-style:italic;font-weight:400;text-transform:none;color:var(--ash)}.section{max-width:1600px;margin:0 auto;padding:clamp(4rem,10vw,8rem) var(--pad);position:relative}.section-num{font-family:var(--mono);font-size:.72rem;letter-spacing:.2em;color:var(--ash);text-transform:uppercase;display:flex;gap:1rem;align-items:center;margin-bottom:2rem}.section-num:after{content:"";flex:1 1;height:1px;background:var(--fog)}.section-title{font-family:var(--display);font-weight:800;font-size:clamp(2.5rem,7vw,6rem);line-height:.9;letter-spacing:-.025em;text-transform:uppercase;margin-bottom:2rem}.section-title .italic{font-family:var(--serif);font-weight:400;text-transform:none;letter-spacing:-.01em}.problem{background:var(--paper)}.problem-grid{display:grid;grid-template-columns:1fr 1.2fr;grid-gap:clamp(3rem,6vw,6rem);gap:clamp(3rem,6vw,6rem);align-items:start}.problem-copy p{font-size:clamp(1.05rem,1.4vw,1.25rem);line-height:1.55;margin-bottom:1.25rem;color:var(--graphite)}.problem-copy p:last-child{font-family:var(--serif);font-style:italic;font-size:clamp(1.4rem,2vw,1.8rem);color:var(--black);line-height:1.3}@media (max-width:880px){.problem-grid{grid-template-columns:1fr}}.about{background:var(--black);color:var(--white);padding:clamp(4rem,10vw,8rem) var(--pad);position:relative;overflow:hidden}.about-inner{max-width:1600px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;grid-gap:clamp(3rem,6vw,6rem);gap:clamp(3rem,6vw,6rem);align-items:center;position:relative;z-index:2}.about .section-num{color:var(--ash)}.about .section-num:after{background:var(--graphite)}.about .section-title{color:var(--white)}.about-portrait{aspect-ratio:4/5;background:linear-gradient(135deg,var(--ink) 0,var(--graphite) 50%,var(--steel) 100%);position:relative;overflow:hidden}.about-portrait:before{content:"";position:absolute;inset:0;background-image:repeating-linear-gradient(45deg,transparent,transparent 2px,hsla(0,0%,100%,.02) 0,hsla(0,0%,100%,.02) 4px)}.about-portrait img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:1}.about-portrait .placeholder-text{position:absolute;inset:0;display:grid;place-items:center;font-family:var(--mono);font-size:.75rem;letter-spacing:.2em;color:var(--ash)}.about-portrait .frame-label{position:absolute;top:1.5rem;left:1.5rem;font-family:var(--mono);font-size:.68rem;letter-spacing:.2em;color:var(--silver);text-transform:uppercase;z-index:2;font-weight:600}.about-portrait .frame-corner{position:absolute;width:24px;height:24px;border:1px solid var(--silver);z-index:2}.about-portrait .tl{top:1rem;left:1rem;border-right:0;border-bottom:0}.about-portrait .tr{top:1rem;right:1rem;border-left:0;border-bottom:0}.about-portrait .bl{bottom:1rem;left:1rem;border-right:0;border-top:0}.about-portrait .br{bottom:1rem;right:1rem;border-left:0;border-top:0}.about-copy p{font-size:clamp(1rem,1.2vw,1.1rem);line-height:1.6;color:var(--fog);margin-bottom:1.25rem}.about-copy p strong{color:var(--white);font-weight:600}.about-pullquote{margin-top:2.5rem;padding-top:2rem;border-top:1px solid var(--graphite)}.about-pullquote q{font-family:var(--serif);font-style:italic;font-size:clamp(1.3rem,2vw,1.7rem);line-height:1.35;color:var(--white)}.about-pullquote cite{display:block;margin-top:1rem;font-family:var(--mono);font-size:.78rem;letter-spacing:.15em;text-transform:uppercase;font-style:normal;color:var(--silver);font-weight:600}@media (max-width:880px){.about-inner{grid-template-columns:1fr}.about-portrait{max-width:500px}}.services-head{display:flex;justify-content:space-between;align-items:end;gap:2rem;flex-wrap:wrap;margin-bottom:4rem}.services-sub{font-family:var(--serif);font-style:italic;font-size:clamp(1.1rem,1.6vw,1.4rem);max-width:42ch;color:var(--graphite);line-height:1.4}.service-list{border-top:1px solid var(--black)}.service{display:grid;grid-template-columns:80px 1fr 200px 160px 60px;grid-gap:2rem;gap:2rem;padding:2rem 0;border-bottom:1px solid var(--fog);align-items:center;transition:background .3s ease,padding .3s ease;cursor:pointer;position:relative}.service:hover{background:var(--black);color:var(--white);padding-left:1.5rem;padding-right:1.5rem}.service:hover .svc-desc{color:var(--silver)}.service:hover .svc-arrow{transform:translateX(6px)}.service:hover .svc-num{color:var(--ash)}.svc-num{font-family:var(--mono);font-size:.82rem;letter-spacing:.15em;color:var(--steel);transition:color .3s;font-weight:600}.svc-name{font-family:var(--display);font-weight:800;font-size:clamp(1.5rem,2.5vw,2.2rem);letter-spacing:-.01em;text-transform:uppercase;line-height:1}.svc-desc{font-size:.9rem;line-height:1.5;color:var(--steel);transition:color .3s}.svc-price{font-family:var(--display);font-weight:800;font-size:clamp(1.5rem,2.5vw,2rem);text-align:right}.svc-arrow{font-family:var(--mono);font-size:1.2rem;text-align:right;transition:transform .3s}@media (max-width:880px){.service{grid-template-columns:1fr auto;gap:.5rem 1rem;padding:1.5rem 0}.svc-num{grid-column:1/3;font-size:.7rem}.svc-name{grid-column:1}.svc-price{grid-column:2;align-self:start}.svc-desc{grid-column:1/3}.svc-arrow{display:none}.service:hover{padding-left:1rem;padding-right:1rem}}.services-footnote{margin-top:2.5rem;padding:1.25rem 1.5rem;border-left:2px solid var(--black);background:var(--bone);font-size:.95rem;line-height:1.5;color:var(--graphite);max-width:60ch}.services-footnote strong{color:var(--black);font-weight:700}.why{background:var(--bone)}.benefits{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:0;gap:0;margin-top:2rem;border-top:1px solid var(--black);border-left:1px solid var(--black)}.benefit{padding:2.5rem 2rem;border-right:1px solid var(--black);border-bottom:1px solid var(--black);background:var(--bone);transition:background .3s,color .3s;display:flex;flex-direction:column;gap:1rem;min-height:280px}.benefit:hover{background:var(--black);color:var(--white)}.benefit:hover .benefit-num{color:var(--ash)}.benefit-num{font-family:var(--display);font-weight:900;font-size:4rem;line-height:1;letter-spacing:-.04em;color:var(--silver);transition:color .3s}.benefit-title{font-family:var(--display);font-weight:800;font-size:1.5rem;letter-spacing:-.01em;text-transform:uppercase;line-height:1.1;margin-top:auto}.benefit-desc{font-size:.92rem;line-height:1.5;color:inherit;opacity:.85}@media (max-width:980px){.benefits{grid-template-columns:repeat(2,1fr)}}@media (max-width:520px){.benefits{grid-template-columns:1fr}}.process-steps{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:0;gap:0;margin-top:2rem;position:relative}.process-steps:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:var(--black)}.step{padding:2.5rem 2rem 2.5rem 0;border-right:1px solid var(--fog);position:relative}.step:last-child{border-right:0}.step-num{font-family:var(--display);font-weight:900;font-size:clamp(5rem,10vw,9rem);line-height:.85;letter-spacing:-.04em;color:var(--black);margin-bottom:1.5rem;display:flex;align-items:baseline;gap:.5rem}.step-num sup{font-family:var(--mono);font-size:.78rem;letter-spacing:.15em;color:var(--steel);font-weight:600;text-transform:uppercase}.step-title{font-family:var(--display);font-weight:800;font-size:1.4rem;letter-spacing:0;text-transform:uppercase;margin-bottom:.75rem;line-height:1.1}.step-desc{font-size:.95rem;line-height:1.55;color:var(--steel);max-width:32ch}@media (max-width:880px){.process-steps{grid-template-columns:1fr}.step{border-right:0;border-bottom:1px solid var(--fog);padding:2rem 0}}.guarantee{background:var(--black);color:var(--white);padding:clamp(4rem,8vw,7rem) var(--pad);text-align:center}.guarantee-inner{max-width:900px;margin:0 auto}.guarantee .label{color:var(--ash);margin-bottom:1.5rem}.guarantee h2{font-family:var(--display);font-weight:900;font-size:clamp(3rem,8vw,6.5rem);line-height:.9;letter-spacing:-.03em;text-transform:uppercase;margin-bottom:2rem}.guarantee h2 .italic{font-family:var(--serif);font-weight:400;text-transform:none;letter-spacing:-.01em}.guarantee p{font-size:clamp(1.05rem,1.4vw,1.2rem);line-height:1.6;color:var(--fog);max-width:60ch;margin:0 auto 1.25rem}.guarantee-seal{width:140px;height:140px;border:1px solid var(--ash);border-radius:50%;display:grid;place-items:center;margin:2.5rem auto 0;font-family:var(--mono);font-size:.65rem;letter-spacing:.2em;color:var(--ash);text-transform:uppercase;position:relative;animation:spin 30s linear infinite}.guarantee-seal:after{content:"THE CJP PROMISE";position:absolute}.guarantee-seal:before{content:"✓";position:absolute;font-size:2rem;color:var(--white);font-family:var(--display);opacity:.5}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}.testimonials{background:var(--paper)}.testimonial-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:0;gap:0;border-top:1px solid var(--black);border-left:1px solid var(--black)}.tcard{padding:2.5rem 2rem;border-right:1px solid var(--black);border-bottom:1px solid var(--black);background:var(--paper);display:flex;flex-direction:column;gap:1.25rem;min-height:300px;transition:background .3s}.tcard:hover{background:var(--bone)}.tcard .stars{font-size:1rem;letter-spacing:3px}.tcard q{font-family:var(--serif);font-style:italic;font-size:clamp(1.1rem,1.4vw,1.25rem);line-height:1.4;flex:1 1}.tcard cite{font-family:var(--mono);font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;font-style:normal;color:var(--graphite);font-weight:600;display:flex;justify-content:space-between;align-items:center;padding-top:1rem;border-top:1px solid var(--fog)}@media (max-width:880px){.testimonial-grid{grid-template-columns:1fr}}@media (min-width:881px) and (max-width:1100px){.testimonial-grid{grid-template-columns:repeat(2,1fr)}}.tfooter{margin-top:3rem;display:flex;justify-content:center}.gallery{padding:clamp(3rem,6vw,5rem) var(--pad);max-width:1600px;margin:0 auto}.gallery-head{display:flex;justify-content:space-between;align-items:end;gap:2rem;flex-wrap:wrap;margin-bottom:3rem}.gallery-grid{display:grid;grid-template-columns:repeat(6,1fr);grid-gap:2px;gap:2px}.gphoto{aspect-ratio:1;background:var(--graphite);position:relative;overflow:hidden;transition:transform .4s ease}.gphoto:nth-child(2){grid-column:span 2;grid-row:span 2}.gphoto:nth-child(8){grid-column:span 2}.gphoto img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.gphoto.placeholder{background:var(--graphite)}.gphoto.placeholder:first-child{background:linear-gradient(135deg,#2a2a2a,#4a4a4a)}.gphoto.placeholder:nth-child(2){background:linear-gradient(135deg,#151515,#2a2a2a)}.gphoto.placeholder:nth-child(3){background:linear-gradient(135deg,#4a4a4a,#8a8a8a)}.gphoto.placeholder:nth-child(4){background:linear-gradient(135deg,#0a0a0a,#2a2a2a)}.gphoto.placeholder:nth-child(5){background:linear-gradient(135deg,#2a2a2a,#151515)}.gphoto.placeholder:nth-child(6){background:linear-gradient(135deg,#4a4a4a,#2a2a2a)}.gphoto.placeholder:nth-child(7){background:linear-gradient(135deg,#151515,#4a4a4a)}.gphoto.placeholder:nth-child(8){background:linear-gradient(135deg,#2a2a2a,#0a0a0a)}.gphoto:before{content:"";position:absolute;inset:0;background-image:repeating-linear-gradient(45deg,transparent,transparent 3px,hsla(0,0%,100%,.015) 0,hsla(0,0%,100%,.015) 6px);pointer-events:none;z-index:1}.gphoto .label-tag{position:absolute;bottom:1rem;left:1rem;font-family:var(--mono);font-size:.65rem;letter-spacing:.2em;color:var(--fog);text-transform:uppercase;opacity:.85;z-index:2;font-weight:600;text-shadow:0 1px 4px rgba(0,0,0,.5)}.gphoto:hover{transform:scale(.98)}@media (max-width:880px){.gallery-grid{grid-template-columns:repeat(3,1fr)}.gphoto:nth-child(2),.gphoto:nth-child(8){grid-column:span 2;grid-row:auto}}.booking{background:var(--black);color:var(--white);padding:clamp(4rem,10vw,8rem) var(--pad);position:relative;overflow:hidden}.booking:before{content:"CJP";position:absolute;font-family:var(--display);font-weight:900;font-size:50vw;color:var(--ink);line-height:.8;letter-spacing:-.08em;top:50%;left:50%;transform:translate(-50%,-50%);pointer-events:none;z-index:0}.booking-inner{max-width:900px;margin:0 auto;position:relative;z-index:1;text-align:center}.booking .section-num{justify-content:center;color:var(--ash);margin-bottom:2rem}.booking .section-num:after{display:none}.booking .section-num:before{content:"";width:40px;height:1px;background:var(--graphite)}.booking h2{font-family:var(--display);font-weight:900;font-size:clamp(3rem,8vw,6.5rem);line-height:.9;letter-spacing:-.03em;text-transform:uppercase;margin-bottom:2rem}.booking h2 .italic{font-family:var(--serif);font-weight:400;text-transform:none}.booking-sub{font-size:clamp(1.05rem,1.4vw,1.2rem);line-height:1.55;color:var(--fog);max-width:56ch;margin:0 auto 2.5rem}.booking .btn{padding:1.2rem 2rem;font-size:.85rem}.booking-meta{margin-top:2.5rem;display:flex;gap:2.5rem;justify-content:center;flex-wrap:wrap;font-family:var(--mono);font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:var(--silver);font-weight:600}.booking-meta strong{color:var(--white);font-weight:500}.location-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:0;gap:0;border-top:1px solid var(--black);border-bottom:1px solid var(--black)}.location-info{padding:3rem 2rem 3rem 0;display:flex;flex-direction:column;gap:2rem}.info-block h4{font-family:var(--mono);font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;color:var(--steel);margin-bottom:.75rem;font-weight:600}.info-block p{font-family:var(--display);font-weight:800;font-size:1.4rem;line-height:1.15;letter-spacing:-.01em;text-transform:uppercase}.info-block .small{font-family:var(--body);font-size:.95rem;line-height:1.55;text-transform:none;font-weight:400;color:var(--steel)}.hours-list{list-style:none;display:flex;flex-direction:column;gap:.5rem}.hours-list li{display:flex;justify-content:space-between;padding:.45rem 0;border-bottom:1px solid var(--bone);font-family:var(--mono);font-size:.82rem;letter-spacing:.05em;text-transform:uppercase;font-weight:500}.hours-list li.closed{color:var(--ash)}.hours-list li span:first-child{font-weight:700}.map{position:relative;border-left:1px solid var(--black);min-height:400px;background:var(--bone)}.map iframe{position:absolute;inset:0;width:100%;height:100%;border:0;filter:grayscale(1) contrast(1.05)}.map-badge{position:absolute;bottom:1.5rem;right:1.5rem;background:var(--black);color:var(--white);padding:.8rem 1.1rem;font-family:var(--mono);font-size:.72rem;letter-spacing:.15em;text-transform:uppercase;font-weight:600;z-index:2}@media (max-width:880px){.location-grid{grid-template-columns:1fr}.map{border-left:0;border-top:1px solid var(--black)}.location-info{padding:2rem 0}}.ig-strip{background:var(--ink);color:var(--white);padding:clamp(3rem,6vw,5rem) var(--pad)}.ig-strip-inner{max-width:1600px;margin:0 auto}.ig-strip-head{display:flex;justify-content:space-between;align-items:end;gap:2rem;flex-wrap:wrap;margin-bottom:2rem;border-bottom:1px solid var(--graphite);padding-bottom:1.5rem}.ig-strip-head h3{font-family:var(--display);font-weight:800;font-size:clamp(1.5rem,3vw,2.5rem);text-transform:uppercase;letter-spacing:-.01em;line-height:1}.ig-strip-head h3 .italic{font-family:var(--serif);font-weight:400;text-transform:none}.ig-strip-handle{font-family:var(--mono);font-size:.78rem;letter-spacing:.18em;color:var(--silver);text-transform:uppercase;font-weight:600}.ig-behold-wrap{width:100%}.ig-behold-wrap behold-widget{display:block;width:100%}.ig-follow-card{display:block;background:linear-gradient(135deg,var(--ink) 0,var(--graphite) 100%);border:1px solid var(--graphite);padding:clamp(2rem,5vw,3.5rem);transition:border-color .25s,transform .25s;position:relative;overflow:hidden}.ig-follow-card:before{content:"";position:absolute;inset:0;background-image:repeating-linear-gradient(45deg,transparent,transparent 3px,hsla(0,0%,100%,.015) 0,hsla(0,0%,100%,.015) 6px);pointer-events:none}.ig-follow-card:hover{border-color:var(--ash)}.ig-follow-card:hover .ig-follow-cta{gap:.9rem}.ig-follow-inner{display:grid;grid-template-columns:auto 1fr auto;align-items:center;grid-gap:clamp(1.25rem,3vw,2.5rem);gap:clamp(1.25rem,3vw,2.5rem);position:relative;z-index:1}.ig-follow-mark{width:clamp(60px,8vw,84px);height:clamp(60px,8vw,84px);border-radius:50%;background:var(--white);color:var(--black);display:grid;place-items:center;font-family:var(--display);font-weight:900;font-size:clamp(1.4rem,2.2vw,2rem);letter-spacing:-.02em;flex-shrink:0}.ig-follow-copy{display:flex;flex-direction:column;gap:.4rem;min-width:0}.ig-follow-handle{font-family:var(--display);font-weight:800;font-size:clamp(1.4rem,2.4vw,2rem);text-transform:uppercase;letter-spacing:.01em;color:var(--white);line-height:1}.ig-follow-line{font-family:var(--body);font-size:clamp(.95rem,1.2vw,1.1rem);line-height:1.45;color:var(--fog)}.ig-follow-cta{font-family:var(--mono);font-size:.78rem;font-weight:600;letter-spacing:.15em;text-transform:uppercase;color:var(--white);display:inline-flex;align-items:center;gap:.6rem;transition:gap .25s ease;white-space:nowrap}.ig-follow-cta span{transition:transform .25s ease}.ig-follow-card:hover .ig-follow-cta span{transform:translateX(4px)}@media (max-width:760px){.ig-follow-inner{grid-template-columns:auto 1fr;grid-template-rows:auto auto;row-gap:1.5rem}.ig-follow-cta{grid-column:1/-1;justify-content:flex-start}}.faq{background:var(--paper)}.faq-list{border-top:1px solid var(--black);max-width:900px;margin:2rem auto 0}.faq-item{border-bottom:1px solid var(--fog)}.faq-q{width:100%;padding:1.5rem 0;display:flex;justify-content:space-between;align-items:center;gap:2rem;text-align:left;font-family:var(--display);font-weight:800;font-size:clamp(1.1rem,1.6vw,1.4rem);text-transform:uppercase;letter-spacing:-.005em;line-height:1.2;transition:opacity .2s}.faq-q:hover{opacity:.6}.faq-toggle{width:32px;height:32px;display:grid;place-items:center;border:1px solid var(--black);border-radius:50%;flex-shrink:0;font-family:var(--mono);transition:transform .3s,background .3s,color .3s}.faq-item.open .faq-toggle{background:var(--black);color:var(--white);transform:rotate(45deg)}.faq-a{max-height:0;overflow:hidden;transition:max-height .4s ease}.faq-item.open .faq-a{max-height:400px}.faq-a p{padding:0 0 1.75rem;font-size:1rem;line-height:1.6;color:var(--steel);max-width:65ch}.final{background:var(--black);color:var(--white);padding:clamp(5rem,12vw,10rem) var(--pad);text-align:center;position:relative;overflow:hidden}.final:before{content:"CJP";position:absolute;font-family:var(--display);font-weight:900;font-size:50vw;color:var(--ink);line-height:.8;letter-spacing:-.08em;top:50%;left:50%;transform:translate(-50%,-50%);pointer-events:none;z-index:0}.final-inner{position:relative;z-index:1;max-width:900px;margin:0 auto}.final .label{color:var(--ash);margin-bottom:2rem}.final h2{font-family:var(--display);font-weight:900;font-size:clamp(3rem,9vw,7.5rem);line-height:.85;letter-spacing:-.035em;text-transform:uppercase;margin-bottom:2rem}.final h2 .italic{font-family:var(--serif);font-weight:400;text-transform:none}.final p{font-size:1.1rem;line-height:1.5;color:var(--fog);max-width:56ch;margin:0 auto 2.5rem}.final .btn{padding:1.2rem 2rem;font-size:.85rem}footer{background:var(--ink);color:var(--fog);padding:3rem var(--pad) 2rem;position:relative;z-index:1}.footer-top{max-width:1600px;margin:0 auto;display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;grid-gap:3rem;gap:3rem;padding-bottom:2.5rem;border-bottom:1px solid var(--graphite)}.footer-brand p{margin-top:1.5rem;font-size:.9rem;line-height:1.55;color:var(--ash);max-width:34ch}.footer-col h5{font-family:var(--mono);font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;color:var(--silver);margin-bottom:1rem;font-weight:600}.footer-col ul{list-style:none;display:flex;flex-direction:column;gap:.25rem}.footer-col a,.footer-col li{font-size:.95rem;color:var(--fog);padding:.35rem 0}.footer-col a{transition:color .2s;display:inline-block}.footer-col a:hover{color:var(--white)}@media (max-width:880px){.footer-col ul{gap:.1rem}.footer-col a,.footer-col li{padding:.55rem 0}.footer-col a{min-height:44px}}.footer-bottom{max-width:1600px;margin:2rem auto 0;display:flex;justify-content:space-between;align-items:center;font-family:var(--mono);font-size:.72rem;letter-spacing:.15em;text-transform:uppercase;color:var(--silver);font-weight:600;flex-wrap:wrap;gap:1rem}@media (max-width:880px){.footer-top{grid-template-columns:1fr 1fr}}@media (max-width:520px){.footer-top{grid-template-columns:1fr}}html.js .reveal{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s ease}html.js .reveal.in{opacity:1;transform:none}