:root{--sot-ink:#12382e;--sot-muted:#89948d;--sot-gold:#ac905b;--sot-cream:#F5F1E8;--sot-line:#dcded6;--sot-text:#4b5b53}
.sot-portfolio,.sot-project{box-sizing:border-box;color:var(--sot-ink)}.sot-portfolio *,.sot-project *{box-sizing:border-box}
.sot-portfolio{max-width:1220px;margin:0 auto;padding:0 0 50px}.sot-filterbar{display:flex;align-items:center;flex-wrap:wrap;gap:11px;margin:0 0 32px;padding:0 0 15px;border-bottom:1px solid var(--sot-line)}.sot-filter{appearance:none;border:1px solid transparent!important;background:transparent!important;color:#69776f!important;font:inherit;font-size:13px!important;padding:9px 17px!important;line-height:1.4!important;cursor:pointer;border-radius:2px!important;transition:background .2s,color .2s,border-color .2s}.sot-filter:is(:hover,:focus-visible){border-color:var(--sot-gold)!important;color:var(--sot-ink)!important}.sot-filter.is-active{background:var(--sot-ink)!important;color:#fff!important;border-color:var(--sot-ink)!important}.sot-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:44px 30px}.sot-card[hidden],.sot-no-filter-results[hidden]{display:none!important}.sot-card{min-width:0;margin:0}.sot-card-link{text-decoration:none!important;color:inherit!important;display:block}.sot-card-photo{position:relative;overflow:hidden;aspect-ratio:1.38;background:#eae8e0}.sot-card-img{width:100%;height:100%!important;max-width:none!important;object-fit:cover;display:block;transition:transform .65s cubic-bezier(.2,.7,.2,1)}.sot-card-link:is(:hover,:focus-visible) .sot-card-img{transform:scale(1.045)}.sot-card-arrow{position:absolute;right:16px;bottom:16px;display:grid;place-items:center;background:#f7f3ea;width:38px;height:38px;color:var(--sot-ink);font-size:22px;opacity:0;transform:translateY(5px);transition:opacity .25s,transform .25s}.sot-card-link:is(:hover,:focus-visible) .sot-card-arrow{opacity:1;transform:none}.sot-card-info{padding:20px 2px 0}.sot-card-eyebrow,.sot-related-location{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--sot-gold);font-weight:600}.sot-card-title{font-family:'Cormorant Garamond',Georgia,'Times New Roman',serif!important;font-weight:400!important;font-size:clamp(22px,2.1vw,30px)!important;line-height:1.18!important;letter-spacing:-.025em;color:var(--sot-ink)!important;margin:9px 0 9px!important}.sot-card-excerpt{max-width:470px;color:var(--sot-text);font-size:13px;line-height:1.7;margin:0 0 13px}.sot-card-more{display:inline-block;color:var(--sot-ink);font-size:12px;font-weight:600;letter-spacing:.02em;border-bottom:1px solid var(--sot-gold);padding-bottom:4px}.sot-card-more span{margin-left:8px}.sot-no-filter-results{color:var(--sot-text)}.sot-empty{text-align:center;padding:45px 20px;background:#f0efe9}.sot-empty h2{font:400 28px 'Cormorant Garamond',Georgia,serif;color:var(--sot-ink)}.sot-photo-placeholder{width:100%;height:100%;background:linear-gradient(135deg,#e9e5d9,#c6cec4);display:flex;align-items:center;justify-content:center;text-align:center;padding:20px;color:#476353;font:400 22px/1.3 'Cormorant Garamond',Georgia,serif;letter-spacing:.02em}
.sot-project{background:var(--sot-cream);padding:0;overflow:hidden;width:auto;max-width:none;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw)}.sot-project .sot-container{width:min(1400px,calc(100% - 96px));margin-left:auto;margin-right:auto}.sot-project-intro{padding:96px 0 42px}.sot-back{display:inline-block;color:#718276!important;text-decoration:none!important;font-size:12px;margin:0 0 62px}.sot-back:hover{text-decoration:underline!important}.sot-kicker{font-family:inherit;font-size:11px!important;font-weight:600;letter-spacing:.15em;text-transform:uppercase;color:var(--sot-gold)!important;margin:0 0 19px!important}.sot-kicker-divider{color:#a4a89c;margin:0 5px}.sot-project-heading{font-family:'Cormorant Garamond',Georgia,'Times New Roman',serif!important;font-size:clamp(50px,5.6vw,92px)!important;line-height:.96!important;font-weight:400!important;letter-spacing:-.035em;color:var(--sot-ink)!important;max-width:1140px;margin:0 0 25px!important}.sot-project-lead{font-size:clamp(16px,1.5vw,19px);line-height:1.7;color:var(--sot-text);max-width:760px;margin:0}.sot-hero-area{padding-bottom:58px}.sot-project-hero-image{width:100%;height:auto;aspect-ratio:1.8;object-fit:cover;display:block}.sot-project-empty-image{display:flex;align-items:center;justify-content:center;background:#d8ddd4;color:#4e6758;font:normal 22px Georgia,serif}.sot-project-overview{display:grid;grid-template-columns:minmax(280px,.9fr) minmax(420px,1.1fr);gap:6%;padding:34px 0 88px;border-top:1px solid var(--sot-line)}.sot-project h2{font:400 clamp(34px,3.5vw,58px)/1 'Cormorant Garamond',Georgia,serif!important;letter-spacing:-.028em;color:var(--sot-ink);margin:0}.sot-project h2 em{font-weight:normal;font-style:normal;color:var(--sot-muted)}.sot-facts{display:grid;grid-template-columns:1fr 1fr;gap:26px 30px;margin:10px 0 0}.sot-facts div{margin:0}.sot-facts dt{font-size:11px;letter-spacing:.13em;text-transform:uppercase;color:var(--sot-gold);margin:0 0 10px}.sot-facts dd{font:400 19px/1.35 'Cormorant Garamond',Georgia,serif;color:var(--sot-ink);margin:0}.sot-project-story{display:grid;grid-template-columns:minmax(280px,.95fr) minmax(420px,1.05fr);gap:6%;padding:0 0 100px}.sot-story-copy{padding-top:3px;color:var(--sot-text);font-size:15px;line-height:1.9}.sot-story-copy p{margin:0 0 18px}.sot-section-heading{text-align:center;padding-bottom:37px}.sot-project-gallery{padding-bottom:96px}.sot-gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.sot-gallery-item{display:block;position:relative;overflow:hidden;aspect-ratio:1.15;background:#e3e6df}.sot-gallery-item:first-child{grid-column:span 2;grid-row:span 2;aspect-ratio:auto;min-height:420px}.sot-gallery-item:first-child:nth-last-child(odd){grid-column:span 2;aspect-ratio:auto}.sot-gallery-item img{height:100%;width:100%;object-fit:cover;display:block;transition:transform .5s}.sot-gallery-item:hover img{transform:scale(1.04)}.sot-gallery-zoom{position:absolute;right:16px;bottom:13px;color:white;font-size:25px;text-shadow:0 1px 12px #222}.sot-before-after{padding-bottom:98px}.sot-before-after-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.sot-before-after-grid figure{margin:0;position:relative;background:#e1e1dc;aspect-ratio:1.3}.sot-before-after-grid img{width:100%;height:100%;object-fit:cover;display:block}.sot-image-label{position:absolute;z-index:1;top:14px;left:14px;background:var(--sot-cream);color:var(--sot-ink);padding:8px 13px;text-transform:uppercase;font-size:10px;letter-spacing:.15em}.sot-related{padding:70px 0 96px;background:#eaece6}.sot-related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.sot-related-card{color:var(--sot-ink)!important;text-decoration:none!important;display:block}.sot-related-photo{aspect-ratio:1.2;overflow:hidden;background:#e7e7df;margin-bottom:16px}.sot-related-photo img{height:100%;width:100%;object-fit:cover;display:block;transition:transform .35s}.sot-related-card:hover img{transform:scale(1.04)}.sot-related-card h3{font:400 25px/1.05 'Cormorant Garamond',Georgia,serif!important;color:var(--sot-ink)!important;margin:7px 0}.sot-project-cta{background:var(--sot-ink);padding:80px 0 85px}.sot-cta-inner{display:flex;align-items:center;justify-content:space-between;gap:50px}.sot-project-cta h2{color:#fff!important;max-width:780px;font-size:clamp(31px,3.4vw,47px)!important}.sot-project-cta h2 em{color:#a7bab0}.sot-project-cta p:not(.sot-kicker){font-size:14px;line-height:1.6;color:#d1dcd5;max-width:550px}.sot-cta-button{background:#b69a65;color:#fff!important;text-decoration:none!important;padding:16px 24px;white-space:nowrap;display:inline-flex;gap:30px;align-items:center;font-size:13px;transition:background .2s}.sot-cta-button:hover{background:#9a7d4c}.sot-lightbox[hidden]{display:none!important}.sot-lightbox{position:fixed;z-index:999999;inset:0;background:rgba(0,0,0,.93);display:flex;align-items:center;justify-content:center;padding:55px}.sot-lightbox img{max-width:90vw;max-height:88vh;object-fit:contain}.sot-lightbox button{appearance:none;border:0;background:rgba(20,20,20,.7);color:#fff;cursor:pointer;position:absolute;display:grid;place-items:center;font-size:37px;width:46px;height:46px}.sot-lightbox-close{right:17px;top:12px}.sot-lightbox-prev{left:12px;top:50%}.sot-lightbox-next{right:12px;top:50%}.sot-modal-open{overflow:hidden}
@media(max-width:1024px){.sot-project .sot-container{width:min(100%,calc(100% - 48px))}.sot-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sot-gallery-item:first-child{grid-column:1/-1;grid-row:auto;min-height:unset;aspect-ratio:1.7}.sot-project-overview,.sot-project-story{gap:4%}}@media(max-width:767px){.sot-portfolio{padding-bottom:25px}.sot-grid{gap:28px 14px}.sot-card-photo{aspect-ratio:1.06}.sot-card-title{font-size:22px!important}.sot-card-excerpt{font-size:12px}.sot-card-info{padding-top:13px}.sot-filterbar{gap:4px 2px;margin-bottom:24px}.sot-filter{padding:7px 11px!important;font-size:11px!important}.sot-project{margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw)}.sot-project .sot-container{width:calc(100% - 28px)}.sot-project-intro{padding:46px 0 35px}.sot-back{margin-bottom:34px}.sot-project-heading{font-size:clamp(40px,9vw,62px)!important;line-height:.98!important}.sot-hero-area{padding-bottom:34px}.sot-project-hero-image{aspect-ratio:1.25}.sot-project-overview,.sot-project-story{grid-template-columns:1fr;gap:23px;padding-bottom:55px}.sot-project-overview{padding-top:24px}.sot-facts{gap:22px 15px}.sot-facts dd{font-size:18px}.sot-project-gallery,.sot-before-after{padding-bottom:60px}.sot-gallery-grid,.sot-before-after-grid{gap:11px}.sot-related{padding:58px 0}.sot-related-grid{gap:10px}.sot-related-card h3{font-size:19px!important}.sot-related-location{font-size:9px}.sot-cta-inner{display:block}.sot-project-cta{padding:60px 0}.sot-cta-button{margin-top:15px}.sot-section-heading{padding-bottom:28px}}
@media(max-width:520px){.sot-grid{grid-template-columns:1fr;gap:37px}.sot-card-photo{aspect-ratio:1.25}.sot-card-title{font-size:27px!important}.sot-gallery-grid,.sot-before-after-grid{grid-template-columns:1fr}.sot-gallery-item:first-child:nth-last-child(odd){grid-column:auto;aspect-ratio:1.3}.sot-related-grid{grid-template-columns:1fr 1fr}.sot-related-card:last-child:nth-child(odd){display:none}.sot-lightbox{padding:15px}.sot-lightbox img{max-width:94vw}.sot-lightbox button{width:38px;height:38px}}
@media(prefers-reduced-motion:reduce){.sot-portfolio *, .sot-project *{transition:none!important}}


/* Version 1.1.2: scoped ThemeREX/content-wrapper spacing corrections. */
body.single-sot_project { --sot-cream: #F5F1E8; }
body.single-sot_project .page_content_wrap,
body.single-sot_project .site-content,
body.single-sot_project #primary,
body.single-sot_project .site-main:has(.sot-project) {
  padding-top:0!important; padding-bottom:0!important;
  margin-top:0!important; margin-bottom:0!important;
  background-color:#F5F1E8!important;
}
body.single-sot_project .page_content_wrap > .content_wrap,
body.single-sot_project .page_content_wrap > .content_wrap > .content,
body.single-sot_project .site-content > .content_wrap {
  width:100%!important;max-width:none!important;
  padding-top:0!important;padding-bottom:0!important;
  margin-top:0!important;margin-bottom:0!important;
}
body.single-sot_project .post_content:has(> .sot-project),
body.single-sot_project .entry-content:has(> .sot-project) {margin:0!important;padding:0!important}
body.single-sot_project .page_content_wrap:has(.sot-project),
body.single-sot_project .site-content:has(.sot-project) {background:#F5F1E8!important}
body.single-sot_project .top_panel_title,
body.single-sot_project .sc_layouts_title {display:none!important}
body.single-sot_project .sot-project {
  background:#F5F1E8!important;
  margin-top:0!important;margin-bottom:0!important;
  padding-top:0!important;padding-bottom:0!important;
  width:100vw;max-width:100vw;
  margin-left:calc(50% - 50vw)!important;
  margin-right:calc(50% - 50vw)!important;
}
body.single-sot_project .sot-project .sot-project-intro {padding-top:clamp(38px,5vw,74px)}
body.single-sot_project .sot-related {background:#F5F1E8!important}
/* CTA must not inherit the theme's oversized button sizing. */
body.single-sot_project .sot-project-cta .sot-cta-button {
  display:inline-flex!important;width:auto!important;min-width:0!important;
  max-width:100%!important;min-height:0!important;height:auto!important;
  flex:0 0 auto;align-items:center;gap:22px!important;
  padding:15px 23px!important;
  background:#B69A65!important;color:#fff!important;
  font-family:'Manrope',Arial,sans-serif!important;
  font-size:13px!important;font-weight:500!important;line-height:1.4!important;
  letter-spacing:.005em!important;text-transform:none!important;
  border:0!important;border-radius:0!important;box-shadow:none!important;
}
body.single-sot_project .sot-project-cta .sot-cta-button:hover,
body.single-sot_project .sot-project-cta .sot-cta-button:focus-visible {background:#9A7D4C!important}
/* Limit long galleries while keeping all images accessible. */
.sot-gallery-grid.is-condensed .sot-gallery-item:nth-child(n+10){display:none}
.sot-gallery-action{text-align:center;margin:32px auto 0}
.sot-gallery-action .sot-gallery-showall {
  display:inline-flex;gap:16px;align-items:center;
  font:500 13px/1.3 'Manrope',Arial,sans-serif!important;
  padding:12px 2px!important;color:var(--sot-ink)!important;
  border:0!important;border-bottom:1px solid var(--sot-gold)!important;
  background:transparent!important;border-radius:0!important;cursor:pointer;
}
.sot-gallery-showall[hidden]{display:none!important}
@media(max-width:767px){
  body.single-sot_project .sot-project{width:100vw;max-width:100vw}
  body.single-sot_project .sot-project .sot-project-intro{padding-top:34px}
  body.single-sot_project .sot-project-cta .sot-cta-button{padding:14px 20px!important}
}


/* v1.1.3: Editorial project overview. Applies only to [shakespeare_portfolio]. */
.sot-portfolio.sot-portfolio-editorial {
  max-width: 1400px;
  padding-bottom: 65px;
  color: #12382e;
}
.sot-portfolio-editorial .sot-portfolio-topline {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  margin: 0 0 14px;
}
.sot-portfolio-editorial .sot-portfolio-browse,
.sot-portfolio-editorial .sot-portfolio-total {
  color: #99845f;
  font: 600 10px/1.5 'Manrope', Arial, sans-serif;
  text-transform: uppercase;
  letter-spacing: .17em;
}
.sot-portfolio-editorial .sot-portfolio-total {color: #87928a;}
.sot-portfolio-editorial .sot-filterbar {
  display:flex;
  align-items:center;
  gap: 4px 34px;
  margin-bottom: 34px;
  padding: 0;
  border-bottom: 1px solid #dadbd2;
  overflow-x: auto;
  flex-wrap: nowrap;
  scrollbar-width: thin;
}
.sot-portfolio-editorial .sot-filter {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  width: auto !important;
  min-width: 0 !important;
  min-height: 48px !important;
  margin: 0 !important;
  padding: 9px 0 12px !important;
  border: 0 !important;
  border-bottom: 2px solid transparent !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
  color: #777f76 !important;
  font: 500 13px/1.4 'Manrope', Arial, sans-serif !important;
  white-space: nowrap;
  letter-spacing: 0;
  transition: color .2s, border-color .2s;
}
.sot-portfolio-editorial .sot-filter.is-active,
.sot-portfolio-editorial .sot-filter:hover,
.sot-portfolio-editorial .sot-filter:focus-visible {
  background: transparent !important;
  color: #143e32 !important;
  border-color: #ac905b !important;
}
.sot-portfolio-editorial .sot-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  column-gap: clamp(24px, 3vw, 52px);
  row-gap: clamp(46px, 5vw, 78px);
}
.sot-portfolio-editorial .sot-card {margin:0;min-width:0;}
.sot-portfolio-editorial .sot-card[hidden] {display:none!important;}
.sot-portfolio-editorial .sot-card-link {display:block;text-decoration:none!important;}
.sot-portfolio-editorial .sot-card-photo {
  position:relative;
  overflow:hidden;
  aspect-ratio: 1.46;
  background:#e5e8df;
}
.sot-portfolio-editorial .sot-card-img {
  display:block;
  width:100%;
  height:100%!important;
  object-fit:cover;
  transition:transform .65s cubic-bezier(.21,.6,.21,1),filter .35s;
}
.sot-portfolio-editorial .sot-card-link:hover .sot-card-img,
.sot-portfolio-editorial .sot-card-link:focus-visible .sot-card-img {transform:scale(1.035);}
.sot-portfolio-editorial .sot-card-arrow {
  position:absolute;
  right:16px;
  bottom:16px;
  display:grid;
  place-items:center;
  width:45px;
  height:45px;
  color:#193f33;
  background:#f5f1e8;
  font-size:24px;
  border-radius:50%;
  opacity:0;
  transform:translateY(9px);
  transition:opacity .22s,transform .22s;
}
.sot-portfolio-editorial .sot-card-link:hover .sot-card-arrow,
.sot-portfolio-editorial .sot-card-link:focus-visible .sot-card-arrow {
  opacity:1;
  transform:translateY(0);
}
.sot-portfolio-editorial .sot-card-info {padding:19px 1px 0;}
.sot-portfolio-editorial .sot-card-meta {
  display:flex;
  gap:11px;
  align-items:center;
  flex-wrap:wrap;
}
.sot-portfolio-editorial .sot-card-eyebrow,
.sot-portfolio-editorial .sot-card-category {
  color:#a58a59;
  font:600 10px/1.5 'Manrope',Arial,sans-serif;
  letter-spacing:.13em;
  text-transform:uppercase;
}
.sot-portfolio-editorial .sot-card-category {color:#7c857c;}
.sot-portfolio-editorial .sot-card-meta-dot {
  display:block;
  width:3px;height:3px;
  border-radius:50%;background:#b0b4a9;
}
.sot-portfolio-editorial .sot-card-title {
  display:block;
  margin:7px 0 13px !important;
  max-width:600px;
  color:#12382e !important;
  font-family:'Cormorant Garamond',Georgia,serif !important;
  font-size:clamp(29px,2.8vw,41px) !important;
  font-weight:400 !important;
  line-height:1.07 !important;
  letter-spacing:-.022em;
}
.sot-portfolio-editorial .sot-card-more {
  display:inline-flex;
  gap:12px;
  align-items:center;
  border:0;
  border-bottom:1px solid transparent;
  padding:0 0 4px;
  color:#4f6558;
  font:500 12px/1.4 'Manrope',Arial,sans-serif;
  letter-spacing:0;
  transition:border-color .2s,color .2s;
}
.sot-portfolio-editorial .sot-card-more span {margin-left:0;font-size:16px;}
.sot-portfolio-editorial .sot-card-link:hover .sot-card-more,
.sot-portfolio-editorial .sot-card-link:focus-visible .sot-card-more {
  border-color:#ac905b;
  color:#143e32;
}
.sot-portfolio-editorial .sot-portfolio-bottom {
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:16px;
  margin:56px 0 0;
  padding:28px 0 0;
  border-top:1px solid #dedfd7;
}
.sot-portfolio-editorial .sot-results-count {
  color:#89928a;
  font:500 12px/1.5 'Manrope',Arial,sans-serif;
  margin:0;
}
.sot-portfolio-editorial .sot-load-more {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:30px;
  background:transparent!important;
  color:#12382e!important;
  border:1px solid #ad986c!important;
  border-radius:0!important;
  min-height:46px;
  padding:12px 25px!important;
  font:500 13px/1.4 'Manrope',Arial,sans-serif!important;
  cursor:pointer;
  transition:background .25s,color .25s;
}
.sot-portfolio-editorial .sot-load-more:hover,
.sot-portfolio-editorial .sot-load-more:focus-visible {background:#12382e!important;color:#fff!important;border-color:#12382e!important;}
.sot-portfolio-editorial .sot-load-more[hidden] {display:none!important;}
@media(max-width:767px){
  .sot-portfolio-editorial .sot-filterbar {gap:24px;margin-bottom:25px;}
  .sot-portfolio-editorial .sot-filter {min-height:43px!important;font-size:12px!important;}
  .sot-portfolio-editorial .sot-grid {gap:35px 20px;}
  .sot-portfolio-editorial .sot-card-title {font-size:clamp(26px,4vw,33px)!important;}
  .sot-portfolio-editorial .sot-card-photo {aspect-ratio:1.14;}
  .sot-portfolio-editorial .sot-card-info {padding-top:13px;}
  .sot-portfolio-editorial .sot-card-arrow {opacity:1;transform:none;width:34px;height:34px;font-size:18px;right:10px;bottom:10px;}
  .sot-portfolio-editorial .sot-portfolio-bottom {margin-top:37px;}
}
@media(max-width:600px){
  .sot-portfolio-editorial .sot-grid {grid-template-columns:1fr;row-gap:37px;}
  .sot-portfolio-editorial .sot-card-photo {aspect-ratio:1.35;}
  .sot-portfolio-editorial .sot-card-title {font-size:33px!important;}
  .sot-portfolio-editorial .sot-portfolio-topline {margin-bottom:10px;}
  .sot-portfolio-editorial .sot-card-meta {gap:9px;}
  .sot-portfolio-editorial .sot-card-info {padding-top:15px;}
}
@media(prefers-reduced-motion:reduce){
  .sot-portfolio-editorial *{transition:none!important;}
}
