:root{--w20-blue:#0d3454;--w20-wine:#791029;--w20-gap:24px;--w20-inset:28px}
*,*::before,*::after{box-sizing:border-box}
html{scroll-padding-top:120px}section[id],article[id]{scroll-margin-top:120px}
main p,main li{line-height:1.65}main p{overflow-wrap:anywhere}
.button,.subnav a,footer a{border-radius:8px!important;min-height:48px;max-width:100%;padding:14px 22px!important;line-height:1.45!important;white-space:normal!important;text-align:center;text-decoration:none!important;box-sizing:border-box;cursor:pointer;font-weight:700}
main .button,.subnav a{display:inline-flex;align-items:center;justify-content:center;gap:10px;background:var(--w20-wine);color:#fff!important;border:1px solid var(--w20-wine)}
main .button.outline{background:transparent;color:inherit!important;border-color:currentColor}
.button:hover,.subnav a:hover{filter:brightness(.94)}
.button:focus-visible,.subnav a:focus-visible,[data-lightbox]:focus-visible{outline:3px solid var(--w20-blue);outline-offset:4px}
.hero .button:focus-visible,.page-intro .button:focus-visible,.subnav a:focus-visible{outline-color:white}
.actions,.subnav{display:flex;flex-wrap:wrap;align-items:stretch;gap:20px}.subnav a{margin:0;background:var(--w20-wine);color:#fff}
.paths,.gallery{gap:24px;align-items:stretch}.path,.work{display:flex;flex-direction:column;min-width:0;border:1px solid var(--w20-blue);border-radius:16px;overflow:hidden;background:white}
.path>img,.work>button{flex:none}.path>img,.work img{display:block}.path-copy,.work-copy{display:flex;flex-direction:column;flex:1;min-width:0;padding:var(--w20-inset)}
.path-copy .button{margin-top:auto;color:white!important}.path-copy p:last-of-type{margin-bottom:24px}
.work-copy h3,.path-copy h3{margin-top:12px;margin-bottom:16px;line-height:1.3;overflow-wrap:anywhere}
.work-copy .reference-price{margin-top:auto;padding-top:20px}.w20-work-actions{margin-top:auto;padding-top:24px;display:flex;justify-content:flex-start}.work-copy .reference-price+.w20-work-actions{margin-top:0}
.reference-price{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:12px;line-height:1.5}.reference-price strong{white-space:nowrap}
.more-gallery{padding:var(--w20-inset)!important;border:1px solid var(--w20-wine)!important;border-radius:16px!important;background:white;min-width:0}
.more-gallery>summary{display:flex!important;align-items:center;justify-content:center;width:100%;gap:12px;padding:14px 22px!important;min-height:56px;background:var(--w20-wine);color:white;border-radius:8px;cursor:pointer;text-align:center;line-height:1.45}
.more-gallery>summary::before{color:white!important}.more-gallery[open]>summary{margin-bottom:28px}
.more-gallery .gallery-thumbs{gap:20px}.gallery-thumbs button,.unique-gallery button,.studio-bar-gallery button{border-radius:8px;overflow:hidden}
.w20-disclosure-actions{display:flex;justify-content:center;padding-top:28px}.w20-disclosure-close{width:fit-content}
.contact-grid{grid-auto-rows:1fr;gap:32px!important}.contact-grid>div,.contact-grid>form{height:auto!important;padding:32px!important;border-radius:16px!important}
.contact-grid>div>p{margin-bottom:24px}.contact-grid .w20-contact-points{padding-left:22px;margin:0 0 28px}.w20-contact-points li+li{margin-top:14px}
.contact-grid a[href^="mailto"]{display:inline-block;max-width:100%;overflow-wrap:anywhere;line-height:1.65}
.contact-grid .w20-contact-email{margin-top:28px!important;padding-top:0}.contact-grid .w20-contact-email a{display:block}
.form label{line-height:1.5}.form .form-trap{display:none!important}.form button{align-self:stretch}.form-status{overflow-wrap:anywhere}
.w20-message-count{font-size:.85rem;font-weight:400;line-height:1.5;margin-top:4px}
.footer{background:var(--w20-blue)!important;color:#f5f7f8!important;padding:40px 0}.footer small{color:#d4e1e9;line-height:1.6}.footer-inner{gap:24px;align-items:center}.footer a{display:inline-flex!important;align-items:center;justify-content:center;gap:8px;margin:0!important;background:var(--w20-wine)!important;border:1px solid var(--w20-wine)!important;color:white!important;font-weight:700}
.footer a:hover{background:#123b57!important;border-color:white!important}.footer .copyright{flex-basis:100%;margin-top:8px}
.w20-external-arrow{display:inline-block;width:1em;height:1em;min-width:1em;flex:0 0 1em;margin-left:.25em;vertical-align:-.12em;overflow:visible}.w20-external-link::after{content:none!important;display:none!important}
.w20-return-button{position:fixed;z-index:90;left:max(16px,calc((100vw - 1280px)/2));bottom:calc(16px + env(safe-area-inset-bottom,0px));display:flex;align-items:center;justify-content:center;min-height:48px;max-width:calc(100vw - 32px);padding:14px 22px!important;background:#071e35!important;border:1px solid #071e35!important;border-radius:8px!important;color:white!important;font-family:inherit;font-size:1rem;font-weight:700;line-height:1.4;cursor:pointer;box-shadow:0 3px 14px #071e3526}
.w20-return-button[hidden]{display:none!important}.w20-has-return{padding-bottom:96px}.w20-return-button:focus-visible{outline:3px solid var(--w20-wine);outline-offset:4px}
body.nav-open .w20-return-button{visibility:hidden}
.lightbox{border:1px solid var(--w20-wine)!important;border-radius:16px!important;inset:0;margin:auto;padding:24px!important;width:min(1160px,calc(100vw - 48px))!important;height:calc(100dvh - 48px)!important;max-height:calc(100dvh - 48px)!important;background:#0b1b2d!important;color:white;overflow:auto}
.lightbox[open]{display:flex!important;flex-direction:column;gap:20px}.lightbox::backdrop{background:#071e35d9}
.w20-lightbox-header{display:flex;justify-content:flex-end;flex-shrink:0}.lightbox button{position:static!important;inset:auto!important;min-height:48px;min-width:48px;padding:12px 18px;font:700 1rem/1.4 Arial,sans-serif;background:var(--w20-wine);border:1px solid var(--w20-wine);border-radius:8px;color:white;cursor:pointer}
.lightbox button:focus-visible{outline:3px solid white;outline-offset:3px}.lightbox [data-close]{width:auto!important;padding:12px 22px!important;font-size:1rem!important}
.lightbox-inner{height:auto!important;min-height:0;flex:1;display:flex;align-items:center;justify-content:center;padding:0!important}.lightbox img{display:block;width:auto;height:auto;max-width:100%!important;max-height:calc(100dvh - 285px)!important;object-fit:contain}
.lightbox .caption{position:static!important;inset:auto!important;max-width:100%;font-size:.95rem;line-height:1.55;overflow-wrap:anywhere;text-align:center;flex-shrink:0}
.w20-gallery-controls{display:flex;align-items:center;justify-content:center;gap:20px;flex-shrink:0}.w20-gallery-position{font-size:.95rem;line-height:1.5}.w20-gallery-dots{display:flex;justify-content:center;gap:4px;flex-wrap:wrap}.lightbox .w20-gallery-dot{min-width:32px;min-height:32px;width:32px;height:32px;padding:8px!important;background:transparent;border:0;font-size:0}.w20-gallery-dot::before{content:"";display:block;width:10px;height:10px;margin:auto;border-radius:50%;background:#8299aa}.w20-gallery-dot[aria-pressed="true"]::before{background:white}
.lightbox .gallery-prev,.lightbox .gallery-next{font-size:1.5rem;line-height:1;width:52px;height:48px;display:flex;align-items:center;justify-content:center;padding:0!important;background:#123b57;border-color:#58788d}
@media(max-width:900px),(hover:none) and (pointer:coarse){.w20-return-button{left:50%;right:auto;transform:translateX(-50%)!important;width:max-content}.w20-has-return{padding-bottom:calc(96px + env(safe-area-inset-bottom,0px))}}
@media(max-width:700px){:root{--w20-inset:24px}html{scroll-padding-top:108px}section[id],article[id]{scroll-margin-top:108px}.actions,.subnav{justify-content:center;gap:16px}.subnav a{flex:1 1 180px}.path-copy,.work-copy{padding:24px}.path-copy .button,.w20-work-actions .button{align-self:center}.w20-work-actions{justify-content:center}.contact-grid{grid-auto-rows:1fr;gap:24px!important}.contact-grid>div,.contact-grid>form{padding:24px!important}.contact-grid .w20-contact-email{margin-top:28px!important}.footer-inner{flex-direction:column;align-items:center;text-align:center;gap:20px}.footer a{width:fit-content}.lightbox{padding:20px!important;width:calc(100vw - 24px)!important;height:calc(100dvh - 24px)!important;max-height:calc(100dvh - 24px)!important;gap:16px!important}.lightbox img{max-height:calc(100dvh - 280px)!important}.lightbox .caption{font-size:.9rem}.more-gallery{padding:24px!important}.more-gallery>summary{padding:14px 18px!important}.hdl-copy{min-width:0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button,[data-lightbox] img{transition:none!important}}

body.w20-lightbox-open{overflow:hidden}.lightbox button:disabled{opacity:.45;cursor:default}

/* Rectangular hero tiles; scale the image inside its fixed rounded frame. */
.hero-media .hero-gallery-link{display:block;width:100%;aspect-ratio:4/3;border-radius:16px!important;overflow:hidden;border:2px solid white;line-height:0}
.hero-media .hero-gallery-link img{display:block;width:100%!important;height:100%!important;aspect-ratio:auto!important;border:0!important;border-radius:0!important;object-fit:cover!important;transform:none;transition:transform .28s ease}
@media(hover:hover) and (pointer:fine){.hero-media .hero-gallery-link:hover img{transform:scale(1.035);filter:none}}
.hero-media .hero-gallery-link:focus-visible img{transform:scale(1.035)}
@media(prefers-reduced-motion:reduce){.hero-media .hero-gallery-link img{transition:none!important}.hero-media .hero-gallery-link:hover img,.hero-media .hero-gallery-link:focus-visible img{transform:none!important}}

.hero-media .hero-gallery-link .hero-circle{display:block;width:100%!important;height:100%!important;aspect-ratio:auto!important;border:0!important;border-radius:0!important;overflow:hidden}

.gallery,.paths{grid-auto-rows:1fr}.w20-work-actions .button,.path-copy>.button{min-height:72px}

.hero-media .hero-gallery-link .hero-circle{background:none!important}.hero-media .hero-gallery-link .hero-circle::before,.hero-media .hero-gallery-link .hero-circle::after{content:none!important}

.hero-media .hero-gallery-link img{position:static!important;inset:auto!important;left:auto!important;top:auto!important;transform-origin:center}
