:root{--ink:#334155;--dark:#111;--paper:#fffdfd;--gold:#c4a47c;--light-gold:#ffcb8a;--muted:#7a7a7a;--pale:#f0f5fa}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font:400 17px/1.65 Montserrat,sans-serif;color:var(--ink);background:var(--paper)}h1,h2,h3,p,figure,ul{margin:0}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}img{max-width:100%;height:auto;vertical-align:middle}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,.gallery:focus-visible{outline:2px solid var(--gold);outline-offset:5px}button{touch-action:manipulation}button[hidden],[hidden]{display:none!important}.content-width{width:min(1330px,100%);margin-inline:auto}.script-title{font:300 120px/54px Gwendolyn,cursive;color:#fff;text-align:center}.eyebrow{font-size:12px;font-weight:600;line-height:1.2;letter-spacing:2px;text-transform:uppercase}.skip-link,.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.skip-link:focus,.sr-only:focus{clip:auto;width:auto;height:auto;z-index:100;padding:12px;background:#fff;color:#111;left:10px;top:10px}
.site-header{position:absolute;inset:0 0 auto;z-index:20}.header-inner{max-width:1240px;min-height:127.6px;margin:auto;padding:0 20px;display:flex;align-items:center;justify-content:space-between;gap:25px}.brand{flex:none;width:150px}.brand img{width:150px}.menu{display:flex;align-items:center;gap:32px;list-style:none;padding:0;color:#fff;text-transform:uppercase}.menu>li{position:relative}.menu a{display:block;white-space:nowrap}.menu a:hover{color:var(--gold)}.submenu-heading{display:flex;align-items:center;gap:5px}.submenu-toggle{border:0;background:none;color:inherit;padding:0 3px;font-size:17px;line-height:1}.submenu{position:absolute;left:0;top:100%;width:240px;list-style:none;padding:0;background:rgba(18,18,18,.74);display:none}.submenu a{padding:10px 16px}.has-submenu:hover>.submenu,.has-submenu:focus-within>.submenu,.has-submenu.is-open>.submenu{display:block}.phone{border:1px solid var(--gold);border-radius:25px;color:white;font-size:16px;font-weight:600;line-height:1;padding:15px 30px;white-space:nowrap}.phone:hover{color:var(--gold);border-color:#fff}.menu-toggle{display:none}
.home-hero{position:relative;min-height:80vh;display:flex;align-items:center;justify-content:center;padding:10px;isolation:isolate}.hero-image{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover}.home-hero:before{content:"";position:absolute;inset:0;background:#36210c;opacity:.91;mix-blend-mode:multiply;z-index:-1}.hero-content{width:min(700px,100%);display:flex;flex-direction:column;gap:20px;text-align:center}.hero-eyebrow,.hero-links h2{font:300 18px/1.3 Montserrat,sans-serif;letter-spacing:4px;text-transform:uppercase;color:var(--light-gold)}.hero-action{padding:100px 0 50px}.button{display:inline-block;border-radius:2px;font-size:16px;font-weight:500;line-height:1;padding:16px 30px;transition:color .5s,background .5s,transform .3s}.button-gold{padding:15px 30px;font-size:13px;font-weight:600;letter-spacing:1.3px;text-transform:uppercase;background:var(--gold);color:#fff}.button-gold:hover{background:var(--dark);color:var(--light-gold)}.hero-links{display:flex;justify-content:center;gap:20px;padding:10px}.hero-links h2{white-space:nowrap}.hero-links a:hover{color:white}.page-hero{height:400px;background:var(--dark);position:relative;display:flex;flex-direction:column;justify-content:center;gap:20px;padding:10px;text-align:center}.page-hero h3{font:600 12px/1.3 Montserrat,sans-serif;letter-spacing:2px;text-transform:uppercase;color:var(--light-gold)}.hero-divider{position:absolute;bottom:0;left:calc(50% - 50px);width:100px;height:75px;fill:var(--light-gold)}
.story{padding:100px 0;background:var(--paper)}.story-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px;align-items:center}.story-copy{border-right:2px solid var(--light-gold);display:flex;flex-direction:column;gap:20px;min-width:0}.story-copy>.eyebrow{color:#d1d5db}.story-title{font:400 64px/1 "Cormorant Garamond",serif}.prose p{margin-bottom:1.2em}.prose p:last-child{margin-bottom:1.2em}.button-outline{padding:25px 75px;border:1px solid #2c2c2c;color:var(--dark);background:transparent}.button-outline:hover{transform:translateY(-8px);border-color:var(--gold)}
.gallery{min-width:0;position:relative}.slides{position:relative;height:500px}.page-home .slides{height:400px}.slide{width:100%;height:100%;display:flex;align-items:flex-start;justify-content:center}.slide img{width:auto;height:auto;max-height:500px;max-width:100%;object-fit:contain}.gallery-arrow{position:absolute;top:50%;transform:translateY(-50%);border:0;background:none;color:white;font:40px/1 Arial,sans-serif;text-shadow:0 1px 3px #666;padding:5px 10px}.previous{left:0}.next{right:0}.gallery-dots{height:30px;display:flex;align-items:center;justify-content:center;gap:0}.gallery-dots button{border:0;background:transparent;width:24px;height:30px;padding:0;position:relative}.gallery-dots button:after{content:"";width:6px;height:6px;border-radius:50%;background:#000;opacity:.2;position:absolute;left:9px;top:12px}.gallery-dots button[aria-pressed=true]:after{opacity:1}
.services{background:var(--dark);color:var(--muted);padding:50px 0}.services-inner{display:flex;flex-direction:column;gap:20px}.services .eyebrow{text-align:center}.services-title{font:italic 400 64px/1 "Cormorant Garamond",serif;text-align:center;color:var(--pale)}.services-intro{width:50%;align-self:center;text-align:center}.services-intro p{margin-bottom:1.2em}.cards{padding:10px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.card{display:flex;flex-direction:column;gap:20px;padding:10px;transition:transform .3s}.card img{width:400px;max-width:100%;align-self:center;aspect-ratio:1;object-fit:cover;transition:filter .5s}.card h2{font:300 30px/1.3 "Cormorant Garamond",serif;color:var(--pale)}.card-copy p{margin-bottom:1.2em}.card:hover img{filter:brightness(1.1) saturate(1.1)}.card:hover h2{color:var(--gold)}.page-services .services{padding:150px 0 50px;min-height:88vh;display:flex;align-items:center}.page-services .cards{grid-template-columns:repeat(4,minmax(0,1fr))}.page-services .card:hover{transform:scale(.98)}
.site-footer{background:#010101;border-top:1px solid var(--gold);color:var(--pale);padding:20px 0;font-size:17px}.footer-inner{max-width:1200px;margin:auto;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:50px;text-align:center;align-items:center}.footer-about{font-size:16px}.footer-about img{width:150px;margin-bottom:10px}.hours p+p{margin-top:20px}address{font-style:normal;overflow-wrap:anywhere}.site-footer a:hover{color:var(--gold)}
@media(min-width:768px) and (max-width:1350px){.content-width{width:100%}.story-grid{padding-inline:0}}
@media(max-width:1100px){.header-inner{gap:15px}.menu{gap:20px}.phone{padding-inline:20px}}
@media(max-width:921px){.button-outline{font-size:14.592px}body,.site-footer{font-size:15.504px}.footer-about{font-size:14.592px}.header-inner{min-height:112px;padding:15px 20px;flex-wrap:wrap}.menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:6px;border:0;background:none;width:44px;height:44px;padding:5px;color:white;margin-left:auto}.menu-toggle span{height:3px;width:30px;background:currentColor;border-radius:1px}.phone{display:none}.site-header nav{display:none;position:absolute;top:100%;left:0;right:0;background:white;color:var(--gold)}.site-header nav.is-open{display:block}.menu{display:block;color:var(--gold);font-size:16px}.menu>li>a,.submenu-heading>a{padding:12px 20px}.submenu-heading{justify-content:space-between}.submenu-toggle{padding:14px 25px}.submenu{position:static;width:100%;background:#fff}.submenu a{padding:10px 35px}.has-submenu:hover>.submenu,.has-submenu:focus-within>.submenu{display:none}.has-submenu.is-open>.submenu{display:block}}
@media(max-width:767px){body{font-size:15.504px}.brand,.brand img{width:120px}.header-inner{min-height:105.875px}.script-title{font-size:64px;line-height:54px}.home-hero{padding:75px 10px 0}.hero-action{padding:50px 0}.hero-links{flex-direction:column}.hero-eyebrow{line-height:1.3}.story{padding:50px 10px}.story-grid{grid-template-columns:1fr;gap:20px}.story-copy{border:0}.story-title{font-size:64px}.button-outline{max-width:100%}.prose p{margin-bottom:1.2em}.services{padding:50px 10px}.services-intro{width:100%}.cards,.page-services .cards{grid-template-columns:1fr}.page-services .services{padding:50px 10px}.site-footer{font-size:15.504px;padding:20px 0}.footer-inner{grid-template-columns:1fr;gap:10px;padding-inline:0}.footer-about img{margin-bottom:10px}.page-hero .script-title{max-width:100%}.page-hero h3{line-height:1.3}.card h2{font-size:30px}.page-home .slides{height:auto;aspect-ratio:1}.page-home .slide{height:100%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

main{overflow-x:clip}.pending-animation{opacity:0}.reveal-right{animation:reveal-right 1.25s both}.reveal-left{animation:reveal-left 1.25s both}@keyframes reveal-right{from{opacity:0;transform:translateX(100%)}to{opacity:1;transform:none}}@keyframes reveal-left{from{opacity:0;transform:translateX(-100%)}to{opacity:1;transform:none}}.slides{overflow:hidden}.slide.is-changing{animation:gallery-enter .5s ease}@keyframes gallery-enter{from{opacity:.5;transform:translateX(5%)}to{opacity:1;transform:none}}

@media(max-width:921px){.card h2{font-size:22.8px}.site-footer{padding-bottom:30px}}
