/* The homepage's palette, stitching, framed photography and action components. */
.p-story,.p-workshop-story,.p-supports,.p-location{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:8%;padding-block:95px;align-items:center}.p-story{background:#faf8f4}.p-story-year{position:relative;padding-bottom:65px}.p-year{display:block;font-size:clamp(110px,16vw,235px);line-height:1.1;letter-spacing:-.08em;color:#9e3028;font-weight:400}.p-year-caption{display:block;margin-top:20px;font-size:14px;color:#776657}.p-editorial-seam{position:absolute;bottom:-15px;left:0;width:100%;height:140px;fill:none;stroke:#9e3028;stroke-width:1;stroke-dasharray:5 8;opacity:.45}.p-story-copy h2,.p-workshop-story h2{font-size:clamp(32px,3.5vw,52px);margin:0 0 28px;line-height:1.15}.p-story-copy p:last-child,.p-workshop-story p:last-child{margin-bottom:0}.p-workshop-story{background:#302924;color:#eee8de;position:relative;background-image:repeating-linear-gradient(118deg,transparent 0 105px,#ffffff05 106px 107px),radial-gradient(ellipse at 0 100%,#9e302824,transparent 65%)}.p-workshop-story .s-kicker{color:#eaa48c}.p-photo-frame{position:relative;overflow:hidden;margin:0;border-radius:0 45px 0 0}.p-photo-frame img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;transition:transform 1s cubic-bezier(.22,1,.36,1)}.p-photo-frame:after{content:'';position:absolute;inset:16px;border:1px dashed #fff8;pointer-events:none;transition:inset .6s}.p-photo-frame:hover img{transform:scale(1.035)}.p-photo-frame:hover:after{inset:24px}.p-supports{padding-block:65px;border-bottom:1px solid #cfc2b1;align-items:start}.p-supports>div:first-child>img{display:block;width:150px;height:auto;margin-top:25px}.p-supports p:last-child{margin-bottom:0}.p-team{background:#e8dfd2;padding-block:90px;background-image:repeating-linear-gradient(118deg,transparent 0 140px,#c4af9720 141px 142px)}.p-team-grid{gap:45px}.p-team-grid article{grid-template-columns:150px minmax(0,1fr);align-items:center;background:transparent;border-top:1px solid #bbaa96;padding-top:30px;gap:25px}.p-team-grid figure{position:relative;border-radius:0 25px 0 0}.p-team-grid figure:after{content:'';position:absolute;inset:9px;border:1px dashed #fff9;pointer-events:none}.p-team-grid img{height:200px;aspect-ratio:auto;object-fit:cover;transition:transform .7s}.p-team-grid article:hover img{transform:scale(1.04)}.p-team-grid article>div{padding:0}.p-team-grid h3{font-size:clamp(26px,3vw,40px);margin:0 0 25px}.p-team-grid .text-button{font-size:13px}.p-team .p-section-heading{margin-bottom:45px}
.ps-inner .p-awards.ps-gallery{display:block;padding-block:75px 100px}.p-award{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:10%;align-items:center;padding:65px 0;border-bottom:1px solid #cfc2b1}.p-award:first-child{padding-top:0}.p-award:last-child{border:0;padding-bottom:0}.p-award:nth-child(even) .p-award-document{order:2}.p-award-document{position:relative;padding:35px;background:#ded2c2;background-image:repeating-linear-gradient(118deg,transparent 0 75px,#b3977a12 76px 77px);border-radius:0 40px 0 0}.p-award-document:before{content:'';position:absolute;inset:15px;border:1px dashed #b29a7d;pointer-events:none}.ps-inner .p-award-document a{display:block;width:fit-content;max-width:100%;margin:auto;background:white;border-radius:0;box-shadow:0 20px 35px #30272225}.ps-inner .p-award-document img{display:block;width:auto;max-width:100%;max-height:380px;height:auto;aspect-ratio:auto;object-fit:contain;transition:transform .7s}.p-award-copy h2{font-size:clamp(27px,3.2vw,46px);line-height:1.24;margin:24px 0 32px}.ps-inner .p-award-copy .text-button{display:inline-flex;background:transparent;border-radius:0;font-size:13px}
.p-contact-layout{padding-block:85px 100px;gap:9%;align-items:start}.p-contact-info{padding-top:0;border-top:0}.p-contact-quote{margin-top:35px;padding-top:25px;border-top:1px solid #cfc2b1}.p-contact-quote h3{font-size:25px;line-height:1.3;margin:0 0 15px}.p-contact-quote p{font-size:14px;line-height:1.8;margin-bottom:22px}.p-message-panel{min-width:0;scroll-margin-top:130px}.p-message-form.request-form{margin:0;padding:35px;background:#faf8f4;border:1px solid #d1c3b1;border-top:2px solid #9e3028;box-shadow:10px 10px 0 #e0d3c0;border-radius:0 30px 0 0}.p-message-form h2{font-size:27px;line-height:1.3;margin:20px 0 25px}.p-message-form label{display:block;font-size:13px;line-height:1.5;margin-bottom:20px}.p-message-form .form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}.p-message-form input:not([type=checkbox]),.p-message-form textarea{display:block;width:100%;min-width:0;background:transparent;border:0;border-bottom:1px solid #bba994;color:#302722;padding:12px 0;border-radius:0;font:inherit;font-size:16px;min-height:46px}.p-message-form textarea{resize:vertical;min-height:115px}.p-message-form input:focus-visible,.p-message-form textarea:focus-visible{outline:2px solid #9e3028;outline-offset:4px}.p-message-form label.p-message-consent{display:flex;align-items:flex-start;gap:12px;font-size:12px;margin:25px 0}.p-message-consent input{width:18px;height:18px;margin:0;accent-color:#9e3028;flex-shrink:0}.p-message-form .button{min-height:50px}.p-message-form .button:disabled{opacity:.65;cursor:wait}.p-message-status{font-size:14px;line-height:1.65;margin:22px 0 0}.p-message-status:empty{display:none}.p-message-status.is-error{color:#9e3028}.p-message-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.p-location{background:#e3dacd;padding-block:75px;gap:6%;align-items:stretch;background-image:repeating-linear-gradient(118deg,transparent 0 135px,#c4af971a 136px 137px)}.p-location-info{padding-block:15px}.p-location-info .p-editor{margin:25px 0 30px}.p-location-info h2:first-child{margin-top:0}.p-location-map{position:relative;min-height:480px;overflow:hidden;border:1px solid #bbaa96;border-radius:0 35px 0 0;background:#d5ccb9}.p-location-map iframe{display:block;width:100%;height:100%;min-height:480px;border:0}
.p-gallery,.p-materials,.p-prices{position:relative;background-image:repeating-linear-gradient(118deg,transparent 0 160px,#c4af9712 161px 162px)}.p-gallery .p-section-heading,.p-materials .p-section-heading,.p-prices .p-section-heading{padding-bottom:30px;border-bottom:1px solid #cfc2b1}.p-work-grid .s-work-card figure{position:relative}.p-work-grid .s-work-card figure:after{content:'';position:absolute;inset:14px;border:1px dashed #fff9;pointer-events:none;transition:inset .6s}.p-work-grid .s-work-card:hover figure:after{inset:22px}.p-material-card>summary{position:relative}.p-material-card>summary>img{transition:transform .7s,filter .7s}.p-material-card:not([open])>summary:hover>img{transform:scale(1.025)}.p-material-card{box-shadow:0 10px 20px #30272208}.p-prices .p-price-table{background:#faf8f4;padding:28px;border-radius:0 35px 0 0;border-top:2px solid #9e3028}.p-prices .p-price-table .ps-table-scroll{border:0}.p-detail .ps-gallery a{position:relative}.p-detail .ps-gallery a:after{content:'';position:absolute;inset:13px;border:1px dashed #fff9;pointer-events:none;transition:inset .6s}.p-detail .ps-gallery a:hover:after{inset:20px}.p-request-body{background-image:repeating-linear-gradient(118deg,transparent 0 180px,#c4af9710 181px 182px)}.p-motion .p-photo-frame[data-p-reveal]{clip-path:inset(8% 0 8% 0);transition:opacity .8s,transform .8s,clip-path 1.1s cubic-bezier(.22,1,.36,1)}.p-motion .p-photo-frame.p-visible{clip-path:inset(0)}
@media(max-width:1000px){.p-story,.p-workshop-story{gap:6%;padding-block:70px}.p-team-grid article{grid-template-columns:120px minmax(0,1fr);gap:18px}.p-team-grid img{height:170px}.p-team-grid .text-button{font-size:11px}.p-award{gap:7%}.p-award-document{padding:25px}.p-contact-layout{gap:5%}.p-message-form.request-form{padding:25px}.p-message-form .form-row{grid-template-columns:1fr;gap:0}.p-location-map,.p-location-map iframe{min-height:420px}}
@media(max-width:700px){.p-story,.p-workshop-story,.p-supports,.p-location{grid-template-columns:1fr;gap:35px;padding-block:50px}.p-story-year{padding-bottom:40px}.p-year{font-size:140px}.p-year-caption{margin-top:12px}.p-editorial-seam{height:100px;max-width:360px;bottom:-20px}.p-story-copy h2,.p-workshop-story h2{font-size:32px}.p-workshop-story .p-photo-frame{margin-bottom:5px}.p-supports{gap:25px}.p-supports>div:first-child>img{margin-top:20px}.p-team{padding-block:50px}.p-team-grid{gap:30px}.p-team-grid article{grid-template-columns:110px minmax(0,1fr);gap:20px;padding-top:25px}.p-team-grid h3{font-size:30px;margin-bottom:20px}.p-team-grid img{height:155px}.ps-inner .p-awards.ps-gallery{padding-block:50px 60px}.p-award{grid-template-columns:1fr;gap:30px;padding-block:45px}.p-award:nth-child(even) .p-award-document{order:0}.p-award-document{padding:30px}.ps-inner .p-award-document img{max-height:330px}.p-award-copy h2{font-size:29px;margin:16px 0 25px}.p-contact-layout{padding-block:50px 65px;gap:45px}.p-contact-email{font-size:13px}.p-message-form.request-form{padding:24px;box-shadow:6px 6px 0 #e0d3c0}.p-message-form h2{font-size:24px}.p-message-form .button{width:100%}.p-location-map,.p-location-map iframe{min-height:340px}.p-prices .p-price-table{padding:15px}.p-gallery .p-section-heading,.p-materials .p-section-heading,.p-prices .p-section-heading{padding-bottom:20px}}
@media(prefers-reduced-motion:reduce){.p-motion .p-photo-frame[data-p-reveal]{clip-path:none}.p-editorial-seam{stroke-dashoffset:0!important}}

.ps-inner .p-award-document a{max-width:280px}.ps-inner .p-award-document a img{width:100%!important;height:auto!important;max-height:none;aspect-ratio:auto!important}

.ps-inner .p-award-document a img{contain:none!important;contain-intrinsic-size:none!important}

.p-message-consent a{text-decoration:underline;text-underline-offset:3px}.ps-kind-privacy .p-content>.p-editor{max-width:800px;padding:35px;border-top:2px solid #9e3028;background:#faf8f4;border-radius:0 35px 0 0}.ps-kind-privacy .p-content{background-image:repeating-linear-gradient(118deg,transparent 0 160px,#c4af9712 161px 162px)}@media(max-width:700px){.ps-kind-privacy .p-content>.p-editor{padding:24px}}

.p-catalog [hidden]{display:none!important}.p-catalog .p-filters{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:thin;scroll-padding-inline:12px}.p-catalog .p-filters a{flex-shrink:0;white-space:nowrap}.p-catalog[aria-busy=true] .p-work-grid{opacity:.55;transition:opacity .2s}.p-catalog .p-work-grid{transition:opacity .2s}.p-load-more{display:flex;flex-direction:column;align-items:center;gap:18px;margin-top:50px}.p-catalog-status{font-size:13px;color:#776657;line-height:1.6}.p-catalog-status:empty{display:none}.p-load-control[aria-disabled=true]{opacity:.65;cursor:wait}.p-material-grid>.p-material-card[hidden]{display:none!important}@media(max-width:700px){.p-load-more{margin-top:35px}}

.p-catalog .p-filters{scrollbar-color:#b3a08b transparent}.p-catalog .p-filters::-webkit-scrollbar{height:3px;background:transparent}.p-catalog .p-filters::-webkit-scrollbar-thumb{background:#b3a08b;border-radius:2px}.p-load-more,.p-catalog .p-work-grid{overflow-anchor:none}

/* Gallery heading: retain only the full-width filter divider. */
.p-gallery .p-section-heading{border-bottom:0}

.p-materials .p-section-heading{border-bottom:0}


/* Contact portraits use the same native people photos as About. */
.p-contact-people{display:grid;gap:32px;margin-top:40px}.p-contact-profile{display:grid;grid-template-columns:116px minmax(0,1fr);align-items:center;gap:28px}.p-contact-portrait{position:relative;margin:0;overflow:hidden;border-radius:0 25px 0 0;background:#ded2c2}.p-contact-portrait:after{content:'';position:absolute;inset:9px;border:1px dashed #fff9;pointer-events:none}.p-contact-portrait img{display:block;width:100%;height:145px;object-fit:cover;transition:transform .7s cubic-bezier(.22,1,.36,1)}.p-contact-profile:hover img{transform:scale(1.04)}.p-contact-profile h3{font-size:27px;letter-spacing:-.045em;font-weight:400;margin:0 0 9px}.p-contact-profile small{display:block;color:#776657;font-size:12px;margin-bottom:7px}.p-contact-profile .text-button{font-size:clamp(17px,1.6vw,23px);white-space:nowrap}.p-contact-general{margin-top:38px}.p-contact-general .s-kicker{display:block;margin-bottom:12px}.p-contact-general .p-contact-email{margin:0;font-size:15px}.p-contact-info .p-contact-quote{border-top:0;padding-top:0;margin-top:38px}.p-contact-quote h3{font-size:25px}.p-contact-quote p{max-width:44ch}
@media(max-width:700px){.p-contact-people{gap:26px;margin-top:28px}.p-contact-profile{grid-template-columns:90px minmax(0,1fr);gap:20px}.p-contact-portrait img{height:118px}.p-contact-profile h3{font-size:25px}.p-contact-profile .text-button{font-size:17px}.p-contact-general{margin-top:30px}}
@media(prefers-reduced-motion:reduce){.p-contact-portrait img{transition:none}.p-contact-profile:hover img{transform:none}}

/* Completed contact composition: portrait cards and a shared general-contact panel. */
.p-contact-heading{position:relative;padding-right:40px}.p-contact-heading h2{position:relative;z-index:1}.p-contact-seam{position:absolute;right:-12px;bottom:-21px;width:240px;height:58px;pointer-events:none;fill:none;stroke:#9b3025;stroke-width:1;stroke-dasharray:3 5;opacity:.35;transform:rotate(-8deg)}
.p-contact-people{gap:20px;margin-top:42px}.p-contact-profile{position:relative;grid-template-columns:144px minmax(0,1fr);gap:0;background:#f7f2e9;border:1px solid #d2c1ae;border-top-color:#9b3025;border-radius:0 38px 0 0;overflow:hidden;box-shadow:8px 9px 0 #e2d5c140;transition:box-shadow .4s ease,border-color .4s ease}.p-contact-profile:hover,.p-contact-profile:focus-within{border-color:#b88774;box-shadow:11px 12px 0 #ded0bc80}.p-contact-portrait{border-radius:0;background:#ded2c2;align-self:stretch}.p-contact-portrait:after{inset:11px;opacity:.55;border:1px dashed #fff}.p-contact-portrait img{height:178px;object-position:center 35%}.p-contact-profile-copy{padding:24px 26px;min-width:0}.p-contact-profile h3{font-size:32px;margin-bottom:12px}.p-contact-profile small{display:flex;align-items:center;gap:7px;font-size:12px;margin-bottom:10px}.p-contact-profile small svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.3;stroke-linejoin:round}.p-contact-profile .text-button{font-size:clamp(18px,1.7vw,23px)}
.p-contact-general{position:relative;display:flex;align-items:center;gap:24px;margin-top:28px;padding:25px 28px;background:#2e2722;color:#f4ece0;border-radius:0 30px 0 0;overflow:hidden}.p-contact-general:after{content:'';position:absolute;right:-35px;top:-68px;width:200px;height:150px;border:1px dashed #ac716255;border-radius:50%;transform:rotate(-30deg);pointer-events:none}.p-contact-general .s-kicker{color:#e69b82;margin-bottom:10px;font-size:10px}.p-contact-general .p-contact-email{color:#f4ece0;font-size:clamp(14px,1.25vw,17px)}.p-contact-general .p-contact-email:before{background:#bda38d}.p-contact-mail-icon{flex:0 0 33px;width:33px;height:33px;fill:none;stroke:#db9a82;stroke-width:1.2;stroke-linejoin:round}.p-contact-info .p-contact-quote{margin-top:30px}.p-contact-quote h3{font-size:25px;margin-bottom:12px}.p-contact-quote p{margin-bottom:18px;font-size:14px;line-height:1.7}
@media(min-width:701px) and (max-width:1100px){.p-contact-profile{grid-template-columns:112px minmax(0,1fr)}.p-contact-portrait img{height:158px}.p-contact-profile-copy{padding:20px 17px}.p-contact-profile h3{font-size:27px}.p-contact-profile .text-button{font-size:17px}.p-contact-general{padding:22px 18px;gap:15px}.p-contact-general .p-contact-email{font-size:13px}.p-contact-mail-icon{width:25px;height:25px;flex-basis:25px}}
@media(max-width:700px){.p-contact-heading{padding-right:0}.p-contact-seam{width:170px;right:0;bottom:-20px}.p-contact-people{margin-top:34px;gap:18px}.p-contact-profile{grid-template-columns:112px minmax(0,1fr);border-radius:0 28px 0 0;box-shadow:6px 7px 0 #e2d5c140}.p-contact-portrait img{height:154px}.p-contact-profile-copy{padding:18px}.p-contact-profile h3{font-size:27px;margin-bottom:11px}.p-contact-profile small{font-size:11px;margin-bottom:8px}.p-contact-profile .text-button{font-size:16px}.p-contact-general{margin-top:24px;padding:22px 20px;gap:18px}.p-contact-general .p-contact-email{font-size:14px}.p-contact-mail-icon{flex-basis:28px;width:28px;height:28px}.p-contact-info .p-contact-quote{margin-top:28px}}
@media(max-width:360px){.p-contact-profile{grid-template-columns:96px minmax(0,1fr)}.p-contact-profile-copy{padding:16px 13px}.p-contact-profile .text-button{font-size:14px}.p-contact-general{padding:20px 15px;gap:12px}.p-contact-general .p-contact-email{font-size:12px}}
@media(prefers-reduced-motion:reduce){.p-contact-profile,.p-contact-portrait img{transition:none}.p-contact-profile:hover img{transform:none}}

.p-contact-general .p-contact-email:is(:hover,:focus-visible){color:#e7c6ac}

/* The heading occupies its own row; form and first portrait share row two. */
.p-contact-layout{row-gap:0}
.p-contact-layout>.p-contact-heading h2{font-size:clamp(30px,3vw,45px);margin:20px 0 0}
.p-contact-layout>.p-contact-heading{margin-bottom:42px}
.p-contact-layout>.p-contact-info .p-contact-people{margin-top:0}
@media(min-width:701px){.p-contact-layout>.p-contact-heading{grid-column:1;grid-row:1}.p-contact-layout>.p-contact-info{grid-column:1;grid-row:2}.p-contact-layout>.p-message-panel{grid-column:2;grid-row:2}}
@media(max-width:700px){.p-contact-layout>.p-contact-heading{margin-bottom:34px}.p-contact-layout>.p-message-panel{margin-top:45px}}
