/* Elysian / dimensional gallery layer. All imagery and approved typography remain. */
:root{--brass:#a68b43;--mount:#eee8dc;--etch:rgba(133,111,58,.27)}
/* Engraved glass and a raised, rotating shop seal over the original film. */
.hero-engraving{position:absolute;right:-8vw;top:6%;width:min(66vw,940px);pointer-events:none;opacity:.22;transform:rotate(-15deg)}
.hero-engraving svg{width:100%;stroke:#dfcb89;stroke-width:.8}
.direction-hero.hero-film h1{text-shadow:1px 1px 0 #5a4f33,2px 3px 0 #403a2b,3px 5px 0 #27291f,5px 10px 24px #0006}
.direction-hero .title-line:last-child{color:#dfc774;text-shadow:1px 1px 0 #99803f,2px 3px 0 #88703b,3px 5px 0 #69542d,5px 7px 0 #493d28,8px 12px 28px #0007}
.gallery-seal{--rest:-12deg;width:clamp(110px,12vw,176px);aspect-ratio:1;margin:0 0 32px 36px;position:relative;transform:perspective(700px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg)) rotateZ(var(--rest));transition:transform .35s ease;filter:drop-shadow(9px 15px 12px #0006)}
.seal-face{position:absolute;inset:0;border-radius:50%;color:#332e20;border:2px solid #e8d491;background:conic-gradient(from 15deg,#9b7b33,#f5e5a5 15%,#c8a851 29%,#b39647 47%,#eed78b 62%,#a58a41 78%,#e5cf86 92%,#9b7b33);box-shadow:inset 0 0 0 5px #a28a47,inset 0 0 0 6px #eedfa5,2px 3px 0 #7c662f,4px 5px 0 #514525,5px 7px 0 #c1a45c}
.seal-face:after{content:'';position:absolute;inset:21%;border:1px solid #6d582d;border-radius:50%;box-shadow:0 0 0 3px #e9d18a66;pointer-events:none}
.seal-type{position:absolute;inset:0;width:100%;height:100%;animation:seal-turn 45s linear infinite;animation-play-state:paused;fill:currentColor;font:500 11px Epilogue,sans-serif;letter-spacing:1px}
.seal-letter{position:absolute;inset:22% 0 0;text-align:center;font:400 clamp(58px,6.5vw,96px)/1 var(--heading);text-shadow:1px 1px #f9e8ad}
.seal-star{position:absolute;bottom:22%;left:0;right:0;text-align:center;font-size:15px}
@keyframes seal-turn{to{transform:rotate(360deg)}}
/* One slow, oversized type band; it never controls the visitor's scrolling. */
.ink-ribbon{position:relative;z-index:3;overflow:hidden;background:var(--gold);color:var(--ink);padding:20px 0 27px;box-shadow:0 12px 22px #1c1b1712}
.ribbon-track{width:max-content;display:flex;animation:ink-travel 42s linear infinite;animation-play-state:paused}
.ribbon-track>span{display:block;flex-shrink:0;white-space:nowrap;font:400 clamp(40px,5vw,76px)/1.18 var(--heading);letter-spacing:-.025em}
.ribbon-track i{display:inline-block;font:400 .55em/1 Georgia,serif;vertical-align:middle;margin:0 .8em}
.motion-toggle{position:absolute;right:18px;bottom:5px;min-height:26px;padding:2px 10px;background:var(--gold);border:0;border-radius:20px;font:500 10px/1.5 Epilogue,sans-serif;text-decoration:underline;text-underline-offset:3px}
@keyframes ink-travel{to{transform:translateX(-50%)}}
body.effects-ready:not(.effects-paused) .ink-ribbon.is-inview .ribbon-track,body.effects-ready:not(.effects-paused) .gallery-seal.is-inview .seal-type{animation-play-state:running}
body.menu-open .ribbon-track,body.menu-open .seal-type,body.modal-open .ribbon-track,body.modal-open .seal-type{animation-play-state:paused!important}
/* Photo mounts: real photos stay visible, with depth outside the picture. */
#artists.crew{margin-top:0;border-radius:0;background-image:radial-gradient(ellipse at 90% 25%,#d6bd6615,transparent 60%)}
.artist-card{position:relative;isolation:isolate}
.artist-card .portrait-wrap{overflow:visible;border:7px solid var(--mount);outline:1px solid #c7beaa;box-shadow:8px 10px 0 #c7b67f,9px 11px 0 #897947,17px 23px 28px #3e342c21;transform:perspective(950px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg));transition:transform .45s cubic-bezier(.2,.7,.2,1),box-shadow .35s;background:var(--mount);isolation:isolate}
.artist-card .portrait-wrap img{border-radius:4px}
.artist-card .portrait-wrap:before{content:'';position:absolute;inset:-18px 11px 11px -17px;z-index:-1;border:1px solid var(--brass);border-radius:9px;transform:rotate(-3deg);pointer-events:none}
.artist-card:nth-child(even) .portrait-wrap:before{transform:rotate(3deg);inset:10px -17px -16px 12px}
.artist-card .portrait-wrap:after{display:block;content:'';position:absolute;inset:0;border-radius:4px;pointer-events:none;background:linear-gradient(120deg,transparent 25%,#fff2 46%,transparent 65%);opacity:0;transition:opacity .3s}
.artist-card:hover .portrait-wrap:after{opacity:1}
.artist-card h3{position:relative;margin-top:26px!important;padding-left:15px}
.artist-card h3:before{content:'';position:absolute;left:0;top:3px;bottom:3px;width:3px;background:var(--brass)}
.crew-portraits{column-gap:38px;row-gap:64px;padding:18px 12px 16px}
.crew-intro:after{content:'✦';display:block;color:var(--brass);font:400 110px/1 Georgia,serif;margin:35px 0 0 5px;text-shadow:4px 5px #ddd1b6}
.artist-grid{gap:50px 34px;padding:14px 12px 22px}
.artist-card .join-art{overflow:hidden!important;background:var(--gold)!important;outline-color:#998245}
.join-art:after{content:'✦'!important;display:block!important;inset:auto -18px -70px auto!important;width:auto!important;height:auto!important;background:none!important;font:400 220px/1 Georgia,serif;opacity:.13!important;color:#332c17;z-index:0}
.join-art>*{position:relative;z-index:1}.join-art .join-invitation{align-self:flex-start;border-bottom:1px solid currentColor;padding-bottom:5px}
/* A wall of mounted tattoo work. Names remain in their fixed slots. */
.art-section{position:relative;isolation:isolate;overflow:clip;background:#eae5da;background-image:radial-gradient(#a99c7e28 .7px,transparent .7px);background-size:8px 8px}
.wall-type{position:absolute;top:30px;left:-4%;white-space:nowrap;z-index:-1;color:transparent;-webkit-text-stroke:1px #b0a18155;font:400 clamp(130px,21vw,330px)/1 var(--heading);pointer-events:none;transform:translate3d(var(--drift,0px),0,0)}
.art-section .section-head{position:relative}.art-section .section-head h2{text-shadow:3px 4px var(--mount)}
.art-section #featured-art{gap:38px 28px}
.art-card .art-image{border:6px solid #f5f0e5;outline:1px solid #c5b99e;box-shadow:4px 5px 0 #c7bea9,10px 15px 20px #302b201c;transform:perspective(900px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg));transition:transform .35s ease,box-shadow .35s;isolation:isolate}
.art-card .art-image:after{content:'';position:absolute;inset:8px;border:1px solid #fff3;border-radius:2px;pointer-events:none}
.art-card .art-caption{padding-top:20px;position:relative}
.art-plus{opacity:1;background:#f7f4edf0;color:var(--ink);border:1px solid #b5a573;box-shadow:2px 3px #0003}
.portfolio-more{border:6px solid #d3bd73;outline:1px solid #ab9556;box-shadow:4px 5px 0 #b3a16a,10px 15px 20px #302b201c;background-image:linear-gradient(135deg,#f4dfa655,transparent 60%)}
.portfolio-more:hover{background-color:#d8c17b}.portfolio-more .text-link{border-bottom:1px solid #8a7744;padding-bottom:5px}
.profile-photo{transform:perspective(950px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg));transition:transform .35s}.profile-photo>img{border:8px solid var(--mount);outline:1px solid #c7beaa;box-shadow:9px 11px 0 #c7b67f,18px 24px 35px #3e342c25}
/* The rest of the gallery carries the same material language. */
.review-card{position:relative;border:1px solid #d1c6ae;box-shadow:5px 6px 0 #dcd2bd;border-radius:3px;background:linear-gradient(135deg,#f5f1e8,#eae4d7)}
.review-card:before{content:'“';position:absolute;right:15px;bottom:-15px;color:#bda77440;font:400 170px/1 var(--heading);pointer-events:none}
.review-card>*{position:relative}.review-rail{padding-bottom:16px}
.merch-feature .shirt-gallery{box-shadow:10px 13px 0 #d7c99f,22px 28px 35px #46382520;outline:1px solid #b9ab8c;border:7px solid #e9e1d1}
.watch-feature{position:relative;isolation:isolate;overflow:clip;background:radial-gradient(ellipse at 20% 70%,#414536 0,#262821 70%)}
.film-word{position:absolute;bottom:-.15em;left:-3%;font:400 clamp(150px,24vw,360px)/1 var(--heading);color:#c1b17a10;white-space:nowrap;z-index:-1;pointer-events:none;transform:translate3d(var(--drift,0px),0,0)}
.watch-feature .feature-photo{overflow:visible;border:8px solid #5b5b47;outline:1px solid #b49d5d;box-shadow:12px 14px 0 #161a14,23px 25px 40px #0005;transform:perspective(950px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg));transition:transform .4s}
.watch-feature .video-teaser{border-radius:3px}.play{box-shadow:0 0 0 10px #d6bd6620,0 0 0 11px #dfcd8350,3px 5px 20px #0004;transition:box-shadow .25s}.video-teaser:hover .play{box-shadow:0 0 0 16px #d6bd6620,0 0 0 17px #dfcd8350,3px 5px 20px #0004}
.home-visit{position:relative;background:radial-gradient(ellipse at 100% 0,#d6bd6626,transparent 60%),var(--paper)}
.home-visit .visit-copy{border:1px solid #c6baa0;padding:35px;box-shadow:8px 8px 0 #e7dfce;background:#f8f5ee;position:relative;transform:rotate(-1deg)}
.home-visit .visit-copy:after{content:'✦';position:absolute;right:18px;top:-25px;color:#957b38;font:400 45px/1 Georgia,serif;background:var(--paper);padding:0 8px}
.faq-list details{margin-bottom:12px;border:1px solid #c8bca4!important;border-radius:3px;background:#f7f4ed;box-shadow:4px 4px 0 #d7cbb4;transition:box-shadow .2s,background .2s}
.faq-list summary{padding:23px 22px!important}.faq-list .faq-answer{padding-inline:22px}.faq-list details[open]{box-shadow:6px 6px 0 #c3ae75;background:#fffcf5}.faq-list details p{padding-right:0}.faq-toggle{flex-shrink:0}
.cta-banner{position:relative;isolation:isolate;overflow:clip;background:#f7f4ed}
.cta-banner:before{content:'';position:absolute;width:min(66vw,740px);aspect-ratio:1;border:1px solid #b09b6650;box-shadow:0 0 0 16px #f7f4ed,0 0 0 17px #b09b6630;border-radius:50%;left:-13vw;top:50%;transform:translateY(-50%);z-index:-1}
.cta-banner h2{text-shadow:3px 4px 0 #d9caa5}.cta-invitation .button{box-shadow:5px 6px 0 #bda977}
#site-footer{position:relative;isolation:isolate;overflow:hidden;padding-top:10px}.footer-signature{font:400 clamp(110px,24vw,380px)/1.08 var(--heading);text-align:center;letter-spacing:-.02em;color:#cabc88;margin-bottom:-.05em;pointer-events:none;text-shadow:2px 3px #171b14,3px 4px #645e43}
.footer-motion{border:0;border-bottom:1px solid #858572;background:transparent;color:inherit;padding:8px 0;font:inherit;min-height:44px}
#site-menu .menu-shell{background:radial-gradient(ellipse at 90% 35%,#d6bd6633,transparent 65%)}
#site-menu[open] .menu-links a{animation:menu-arrive .45s both;animation-delay:calc(var(--order,0) * 55ms)}
#site-menu .menu-links a:nth-child(2){--order:1}#site-menu .menu-links a:nth-child(3){--order:2}#site-menu .menu-links a:nth-child(4){--order:3}
@keyframes menu-arrive{from{transform:translateX(-20px);opacity:.2}to{transform:translateX(0);opacity:1}}
@media(hover:hover) and (pointer:fine){
 [data-depth].depth-active{transition:transform .12s ease-out;will-change:transform}
 .artist-card:hover .portrait-wrap{box-shadow:9px 13px 0 #c7b67f,10px 14px 0 #897947,20px 27px 35px #3e342c30}
 .art-card:hover .art-image{box-shadow:5px 8px 0 #c7bea9,15px 22px 27px #302b2029}
 .button,.book-link,.header-book{transition:transform .2s,box-shadow .2s,background .2s}
 .button:hover,.book-link:hover{transform:translateY(-3px);box-shadow:4px 6px 0 #a18a4855}
}
@media(max-width:1100px){.gallery-seal{margin-left:5px;margin-bottom:28px;width:125px}.seal-letter{font-size:68px}.home-visit .visit-copy{padding:24px}.crew-portraits{column-gap:28px}.art-section #featured-art{gap:35px 22px}}
@media(max-width:700px){
 .hero-engraving{width:110vw;right:-35vw;top:12%;opacity:.18}.gallery-seal{position:absolute;right:2px;bottom:86px;width:88px;margin:0;--rest:12deg;filter:drop-shadow(5px 8px 6px #0005)}.seal-letter{font-size:46px}.seal-star{font-size:10px}.seal-face{box-shadow:inset 0 0 0 3px #a28a47,inset 0 0 0 4px #eedfa5,2px 3px 0 #7c662f,3px 4px 0 #514525}.hero-note{position:relative}.hero-note .location{max-width:calc(100% - 93px)}.hero-note>p:not(.location){max-width:calc(100% - 88px)}
 .ink-ribbon{padding:17px 0 32px}.ribbon-track>span{font-size:44px}.motion-toggle{bottom:5px;min-height:28px}.ribbon-track{animation-duration:32s}
 #artists .crew-layout{padding-top:48px}.crew-intro:after{display:none}.crew-portraits{padding:20px 31px 30px;gap:27px}.crew-portraits>.artist-card{flex-basis:78%}.artist-card .portrait-wrap{border-width:5px;box-shadow:5px 7px 0 #c7b67f,6px 8px 0 #897947,9px 14px 16px #3e342c20}.artist-card .portrait-wrap:before{inset:-12px 9px 9px -11px}.artist-card:nth-child(even) .portrait-wrap:before{inset:9px -11px -11px 9px}.artist-card h3{margin-top:24px!important;padding-left:12px}.artist-grid{gap:34px 24px;padding-inline:8px}
 .art-section #featured-art{gap:30px 18px}.art-card .art-image{border-width:4px;box-shadow:3px 4px 0 #c7bea9,6px 8px 12px #302b201c}.art-card .art-caption{padding-top:17px}.art-image:after{display:none}.portfolio-more{border-width:4px;padding:12px}.art-plus{width:28px;height:28px;right:8px;bottom:8px;font-size:20px}.wall-type{font-size:135px;top:30px}
 .merch-feature .shirt-gallery{border-width:5px;box-shadow:6px 8px 0 #d7c99f,12px 17px 20px #4638251a}.watch-feature .feature-photo{border-width:5px;box-shadow:6px 8px 0 #161a14,12px 16px 20px #0004;margin-right:8px}.film-word{font-size:155px}.home-visit .visit-copy{padding:25px 20px;transform:none;font-size:12px;gap:20px 12px}.home-visit .visit-copy .text-link{font-size:16px}.faq-list summary{padding:20px 17px!important}.faq-list .faq-answer{padding-inline:17px}.footer-signature{font-size:25vw;margin-top:12px}.footer-top{padding-top:32px}.footer-motion{align-self:flex-start}.cta-banner:before{width:85vw;left:-33vw}
}
@media(max-width:360px){.gallery-seal{width:72px;right:-5px;bottom:120px}.seal-letter{font-size:39px}.hero-note .location{max-width:none}.hero-note>p:not(.location){max-width:230px}.artist-grid{column-gap:18px}.home-visit .visit-copy{grid-template-columns:1fr}.art-section #featured-art{gap:28px 15px}}
body.effects-paused [data-depth]{transform:none!important}body.effects-paused [data-scroll-type]{transform:none!important}body.effects-paused .ribbon-track,body.effects-paused .seal-type,body.effects-paused .scroll-track:after{animation-play-state:paused!important}
@media(prefers-reduced-motion:reduce){[data-depth],[data-scroll-type]{transform:none!important}.ribbon-track,.seal-type,#site-menu[open] .menu-links a{animation:none!important}.button:hover,.book-link:hover{transform:none}.hero-engraving{transform:none}}
body.effects-paused #site-menu[open] .menu-links a{animation:none}

/* October refinement: masks, quieter navigation and a compact footer. */
.hero-masks{width:clamp(150px,15vw,220px);margin:0 0 24px 16px;transform:perspective(800px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg)) rotate(-7deg);transition:transform .35s;filter:drop-shadow(8px 12px 10px #0006)}
.hero-masks img{display:block;width:100%;height:auto;object-fit:contain}
.close-menu{border:0!important;border-radius:0!important;width:auto!important;height:auto!important;min-height:44px;padding:10px 0 10px 20px;background:transparent!important;text-decoration:underline;text-underline-offset:6px}
.masthead nav{gap:clamp(13px,1.7vw,29px)}.masthead .nav-link{font-family:var(--heading);font-size:clamp(20px,1.9vw,28px);letter-spacing:0}
.crew-end{justify-content:space-between;margin-top:35px}.crew-end .rail-controls{margin-left:auto}
/* The review stage is not a scroll container. Hidden cards reserve the same height. */
.review-rail{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;overflow:visible;scroll-snap-type:none;overscroll-behavior:auto;margin:0;padding:5px 6px 12px 0;touch-action:pan-y}
.review-rail.reviews-ready .review-card{grid-row:1;visibility:hidden;opacity:0;pointer-events:none;transition:opacity .35s ease;min-width:0}
.review-rail.reviews-ready .review-card.review-current{visibility:visible;opacity:1;pointer-events:auto}
.review-rail .review-card{width:auto;min-height:340px;max-height:none;overflow:visible;padding:30px;flex:none}
.review-rail .review-card h3{max-width:440px}.review-controls{flex-wrap:wrap;gap:8px}
.review-controls #review-autoplay{font:400 11px/1.4 Epilogue,sans-serif;border:0;border-bottom:1px solid #ae9e7a;padding:10px 4px;min-height:44px;border-radius:0;background:transparent}
.review-total{display:flex;align-items:center;gap:12px}.review-total strong{font:400 50px/1 var(--heading);color:var(--ink)}.review-total span{max-width:100px;font-size:12px;line-height:1.5;text-decoration:underline;text-underline-offset:4px}
.review-heading-end{align-items:flex-end;gap:16px}.review-rail-footer{margin-top:6px}
#site-footer{padding-top:0}.footer-top{display:grid;grid-template-columns:1fr 1.1fr 1fr;align-items:start;gap:35px;padding:38px 0 30px;border:0}
.footer-brand img{width:140px;height:70px;object-fit:contain}.footer-brand p{font-size:11px;margin-top:12px;max-width:220px}
.footer-sitemap .eyebrow,.footer-visit .eyebrow{margin:0 0 14px!important;font:400 10px/1.5 Epilogue,sans-serif;color:#cfbd75;letter-spacing:.09em}
.footer-sitemap>div{display:grid;grid-template-columns:1fr 1fr;gap:8px 25px}.footer-sitemap a{font:400 20px/1.25 var(--heading)}
.footer-visit p:not(.eyebrow){font-size:12px;line-height:1.8;color:#cecbc0;margin:0 0 9px}.footer-visit>a{display:inline-block;font-size:12px;margin-right:15px;line-height:2}
.footer-sitemap a:hover,.footer-visit>a:hover{color:var(--gold)}.footer-bottom{padding-block:17px;gap:16px;font-size:10px}
.sitemap-layout{display:grid;grid-template-columns:1fr 1fr;gap:40px}.sitemap-layout h2{font-size:44px;margin-bottom:24px}.sitemap-layout a{display:block;width:fit-content;line-height:2.3;text-decoration:underline;text-underline-offset:4px}
@media(min-width:701px) and (max-width:1050px){.masthead{grid-template-columns:1fr 105px 1fr;gap:15px;padding-inline:22px}.masthead nav{gap:12px}.masthead .nav-link{font-size:20px}.masthead .header-actions{gap:16px}.masthead .header-book{padding-inline:13px;font-size:15px}.masthead .menu-trigger{font-size:17px}}
@media(min-width:701px) and (max-width:850px){.masthead .nav-link{font-size:17px}.masthead nav{gap:9px}.masthead .header-actions{gap:11px}.masthead .header-book{font-size:13px;padding-inline:10px}.masthead{grid-template-columns:1fr 90px 1fr;gap:10px}}
@media(max-width:820px){.review-rail{grid-template-columns:1fr;gap:0;margin:0;padding:4px 6px 12px 0}.review-rail .review-card{min-height:355px;flex:none;padding:26px}.review-rail .review-card h3{font-size:34px}.review-heading-end{align-items:flex-start}.review-total strong{font-size:43px}.review-rail-footer{font-size:10px}.footer-top{grid-template-columns:.8fr 1.2fr;gap:25px}.footer-brand{grid-column:auto}.footer-visit{grid-column:1/-1;display:flex;align-items:center;flex-wrap:wrap;gap:8px 20px}.footer-visit .eyebrow{display:none}.footer-visit p:not(.eyebrow){margin:0}.footer-visit>a{margin:0}.footer-bottom{align-items:flex-start}}
@media(max-width:700px){.hero-masks{position:absolute;width:102px;right:-4px;bottom:85px;margin:0;transform:perspective(800px) rotate(-7deg)}.hero-note .location{max-width:calc(100% - 100px)}.hero-note>p:not(.location){max-width:calc(100% - 96px)}.crew-end{margin-top:12px}.footer-top{padding:30px 0 24px;column-gap:20px}.footer-brand img{width:115px;height:60px}.footer-brand p{font-size:10px;max-width:135px}.footer-sitemap>div{column-gap:16px}.footer-sitemap a{font-size:18px;min-height:30px}.footer-bottom{gap:12px;padding-block:15px}.footer-bottom .credit{width:auto}.sitemap-layout{grid-template-columns:1fr;gap:35px}.review-heading-end{margin-top:20px}.review-rail-footer p{font-size:10px}}
@media(max-width:360px){.hero-masks{width:80px;bottom:120px;right:-6px}.hero-note .location{max-width:none}.hero-note>p:not(.location){max-width:230px}.footer-top{grid-template-columns:1fr}.footer-brand{display:flex;align-items:center;gap:18px}.footer-brand p{margin:0}.footer-sitemap a{font-size:21px}.footer-visit{grid-column:auto}}
@media(min-width:701px) and (max-width:960px){.masthead nav{display:none}.masthead{grid-template-columns:1fr 110px 1fr}.masthead .mark{grid-column:2;grid-row:1}.masthead .header-actions{display:contents}.masthead .menu-trigger{grid-column:1;grid-row:1;justify-self:start}.masthead .header-book{grid-column:3;grid-row:1;justify-self:end}}
.review-rail:not(.reviews-ready) .review-card:nth-child(n+3){display:none}
@media(max-width:820px){.review-rail:not(.reviews-ready) .review-card:nth-child(n+2){display:none}}

/* A shallow sculptural assembly: floating face, recessed edge and separate shadow. */
.hero-masks{position:relative;perspective:750px;transform-style:preserve-3d;filter:none;transform:perspective(800px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg)) rotateZ(-7deg)}
.mask-sculpture{position:relative;transform-style:preserve-3d;animation:mask-float 7s ease-in-out infinite;animation-play-state:paused}
.hero-masks .mask-face{position:relative;transform:translateZ(15px);filter:drop-shadow(1px 2px 0 #8a6939) drop-shadow(2px 3px 0 #3c3025);backface-visibility:hidden}
.hero-masks .mask-relief{position:absolute;inset:0;transform:translate3d(3px,4px,-7px);filter:brightness(.36) sepia(.4);pointer-events:none}
.mask-light{position:absolute;inset:0;pointer-events:none;transform:translateZ(16px);mask:url('assets/laugh-cry-masks.webp') center/contain no-repeat;-webkit-mask:url('assets/laugh-cry-masks.webp') center/contain no-repeat;background:linear-gradient(115deg,transparent 20%,#fff4 43%,#fff9 49%,transparent 60%);background-size:300% 100%;mix-blend-mode:soft-light;animation:mask-luster 7s ease-in-out infinite;animation-play-state:paused;opacity:.6}
.mask-cast-shadow{position:absolute;left:17%;right:10%;bottom:-4%;height:8%;background:#080a08;filter:blur(9px);border-radius:50%;transform:translateZ(-35px);opacity:.3;pointer-events:none;animation:mask-shadow 7s ease-in-out infinite;animation-play-state:paused}
@keyframes mask-float{0%,100%{transform:translate3d(0,1px,0) rotateX(-5deg) rotateY(-9deg) rotateZ(-2deg)}50%{transform:translate3d(0,-11px,12px) rotateX(7deg) rotateY(10deg) rotateZ(3deg)}}
@keyframes mask-luster{0%,100%{background-position:95% 50%;opacity:.25}50%{background-position:5% 50%;opacity:.65}}
@keyframes mask-shadow{0%,100%{transform:translate3d(0,0,-35px) scale(1);opacity:.32}50%{transform:translate3d(5px,4px,-35px) scale(.82);opacity:.16}}
body.effects-ready:not(.effects-paused) .hero-masks.is-inview .mask-sculpture,body.effects-ready:not(.effects-paused) .hero-masks.is-inview .mask-light,body.effects-ready:not(.effects-paused) .hero-masks.is-inview .mask-cast-shadow{animation-play-state:running}
body.menu-open .hero-masks *,body.modal-open .hero-masks *,body.effects-paused .hero-masks *{animation-play-state:paused!important}
@media(max-width:700px){.hero-masks{position:absolute}.mask-sculpture{animation-name:mask-float-mobile}.mask-cast-shadow{filter:blur(6px)}@keyframes mask-float-mobile{0%,100%{transform:translate3d(0,0,0) rotateX(-4deg) rotateY(-7deg) rotateZ(-2deg)}50%{transform:translate3d(0,-6px,6px) rotateX(5deg) rotateY(8deg) rotateZ(2deg)}}}
@media(prefers-reduced-motion:reduce){.hero-masks *{animation:none!important}.mask-sculpture{transform:none}.mask-light{opacity:.15}}

/* Put the verified reputation ahead of the individual review carousel. */
.review-proof{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:30px;padding:28px 34px;margin:0 6px 30px 0;background:#eee6d1;border:1px solid #bba56a;border-radius:5px;box-shadow:5px 6px 0 #d6caa9;color:var(--ink)}
.review-proof-score{display:flex;align-items:baseline;gap:8px;white-space:nowrap}.review-proof-score>strong{font:400 clamp(76px,8vw,112px)/1 var(--heading)}.review-proof-score>span{font:400 19px/1 Epilogue,sans-serif;color:#716952}
.rating-stars{display:inline-block;position:relative;white-space:nowrap;font:400 33px/1.3 Arial,sans-serif;letter-spacing:3px;color:#c5b99b}.rating-stars-fill{position:absolute;left:0;top:0;overflow:hidden;color:#82651e}
.review-proof-detail p{font-size:13px;line-height:1.7;margin:8px 0 0}.review-proof-detail strong{font-weight:600}
.review-proof-five{display:grid;grid-template-columns:auto auto;align-items:center;column-gap:14px;border-left:1px solid #bead82;padding-left:30px}.review-proof-five>strong{font:400 60px/1 var(--heading);grid-row:1/3}.review-proof-five>span{font-size:13px;line-height:1.5;max-width:95px}.review-proof-five>small{font-size:10px;text-decoration:underline;text-underline-offset:4px;margin-top:7px}.review-proof:hover{border-color:#806621}.review-heading-end{justify-content:flex-end}
.review-rail-footer p{max-width:75%;line-height:1.6}
@media(max-width:820px){.review-proof{gap:18px;padding:24px;grid-template-columns:auto 1fr}.review-proof-score>strong{font-size:82px}.rating-stars{font-size:28px;letter-spacing:2px}.review-proof-detail p{font-size:12px}.review-proof-five{grid-column:1/-1;grid-template-columns:auto 1fr auto;border-left:0;border-top:1px solid #bead82;padding:17px 0 0;gap:12px}.review-proof-five>strong{font-size:42px;grid-row:auto}.review-proof-five>span{max-width:none;font-size:12px}.review-proof-five>small{margin:0}.review-heading-end{justify-content:flex-start}}
@media(max-width:380px){.review-proof{padding:20px 17px;gap:14px}.review-proof-score>strong{font-size:70px}.review-proof-score>span{font-size:15px}.rating-stars{font-size:24px}.review-proof-detail p{font-size:11px}.review-proof-five>span{font-size:11px}.review-proof-five>small{font-size:9px}}

/* Reputation stays secondary to the client stories; no overall rating display. */
.review-endorsement{display:flex;align-items:center;gap:18px;width:fit-content;max-width:100%;margin:0 0 28px;padding:0 0 12px;border-bottom:1px solid #baa56e;color:var(--ink)}
.review-endorsement>span:first-child{font:400 27px/1.2 Arial,sans-serif;letter-spacing:3px;color:#82651e;white-space:nowrap}
.review-endorsement>span:last-child{font-size:13px;line-height:1.6}.review-endorsement strong{font-weight:600}.review-endorsement:hover{border-color:var(--ink)}
@media(max-width:700px){.review-endorsement{flex-direction:column;align-items:flex-start;gap:8px;margin-bottom:22px}.review-endorsement>span:first-child{font-size:24px}.review-endorsement>span:last-child{font-size:12px}}

