:root{--ink:#123764;--gold:#526b5c;--paper:#ffffff;--line:#d8e1ec;--muted:#50627a;--serif:Georgia,'Times New Roman',serif;--sans:Arial,Helvetica,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:17px;line-height:1.65}a{color:inherit;text-underline-offset:5px}button,input,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a,button{touch-action:manipulation}button{cursor:pointer}a:focus-visible,button:focus-visible{outline:3px solid #526b5c;outline-offset:5px}img{max-width:100%;height:auto;display:block}[hidden]{display:none!important}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.12;font-weight:400}h1,h2{font-family:var(--serif);letter-spacing:-.045em}h1{font-size:clamp(3.5rem,6.4vw,6.2rem);margin-bottom:28px}h2{font-size:clamp(2.6rem,4.4vw,4.25rem);margin-bottom:0}h3{font-size:1.4rem}p{margin-bottom:1.2rem}.shell{max-width:1220px;width:calc(100% - 96px);margin-inline:auto}.site-header{background:var(--paper);border-bottom:1px solid var(--line)}.header-inner{min-height:115px;display:flex;align-items:center;justify-content:space-between;gap:35px}.brand{text-decoration:none;display:flex;flex-direction:column;line-height:1}.brand-name{font-family:var(--serif);font-size:2.5rem;font-weight:700;letter-spacing:-.055em}.brand-dot{color:#526b5c}.brand-place{font-size:.64rem;letter-spacing:.19em;font-weight:700;margin-top:9px}.custom-logo{max-width:210px;max-height:85px;width:auto;object-fit:contain}.header-inner nav{display:flex;gap:32px;align-items:center}.header-inner nav a{text-decoration:none;font-size:.92rem}.header-inner nav a:hover{text-decoration:underline}.header-cta{font-weight:700;text-decoration:none;font-size:.88rem;border-bottom:1px solid var(--ink);padding:8px 0}.header-cta span{margin-left:16px}.hero{padding:74px 0 72px}.hero-grid{display:grid;grid-template-columns:1.2fr .85fr;gap:70px;align-items:center}.eyebrow{font-size:.76rem;font-weight:700;letter-spacing:.13em;line-height:1.6;margin-bottom:29px}.hero .eyebrow{display:flex;align-items:center;gap:12px}.tiny-rule{display:inline-block;width:27px;height:2px;background:var(--ink)}.hero-intro{max-width:405px;font-size:1.08rem;color:var(--muted);margin-bottom:32px}.actions{display:flex;gap:26px;align-items:center;flex-wrap:wrap}.button{display:inline-flex;justify-content:center;align-items:center;gap:14px;border:1px solid var(--ink);background:var(--ink);color:white;padding:15px 24px;text-decoration:none;font-weight:700;font-size:.92rem;min-height:52px}.button:hover{background:#214e85}.text-link{font-weight:700;font-size:.9rem;text-decoration:underline;text-decoration-thickness:1px}.hero-footnote{font-size:.66rem;letter-spacing:.15em;font-weight:700;margin:45px 0 0;color:var(--muted)}.hero-side{background:var(--ink);color:var(--gold);min-height:480px;display:flex;flex-direction:column;transform:rotate(1.5deg)}.shop-sign{padding:47px 20px 40px;text-align:center;display:flex;flex:1;flex-direction:column;justify-content:center;border:1px solid #526b5c70;margin:22px 22px 0}.sign-small{font-size:.71rem;letter-spacing:.3em}.sign-name{font-family:var(--serif);font-style:italic;font-weight:700;font-size:clamp(3.4rem,5.2vw,5rem);letter-spacing:-.05em;line-height:1.4}.sign-bottom{font-size:.8rem;letter-spacing:.6em;padding-left:.6em}.sign-rule{width:46px;height:1px;background:var(--gold);margin:25px auto}.sign-motto{font-family:var(--serif);font-size:1.35rem;line-height:1.4}.visit-strip{display:flex;align-items:center;justify-content:space-between;background:var(--gold);color:var(--ink);text-decoration:none;padding:19px 24px;font-size:.9rem;font-weight:700;margin-top:22px}.strip-arrow{font-size:1.6rem;line-height:1}.hero-side.has-photo{transform:none;background:var(--ink);height:520px}.hero-photo{width:100%;height:445px;object-fit:cover;min-height:0}.has-photo .visit-strip{margin-top:auto}.values-strip{background:var(--gold);padding:19px 0}.values-strip .shell{display:flex;justify-content:space-between;align-items:center;gap:24px;font-size:.74rem;font-weight:700;letter-spacing:.13em}.values-strip span[aria-hidden]{font-size:1.2rem;line-height:1}.section{padding-top:92px;padding-bottom:96px}.section-top{display:flex;justify-content:space-between;gap:40px;align-items:flex-end;margin-bottom:45px}.section-top .eyebrow{margin-bottom:20px}.section-intro{color:var(--muted);font-size:.96rem;margin-bottom:4px;max-width:285px}.service-list{border-top:1px solid var(--ink)}.service-row{display:grid;grid-template-columns:65px 1fr auto;gap:22px;align-items:center;padding:30px 0;border-bottom:1px solid var(--line)}.service-number{font-size:.8rem;color:var(--muted);align-self:start;margin-top:8px}.service-row h3{font-family:var(--serif);font-size:1.85rem;margin:0 0 9px;letter-spacing:-.02em}.service-row p{margin:0;color:var(--muted);font-size:.95rem}.service-price{font-weight:700;font-size:.9rem}.story-section{background:var(--ink);color:var(--paper);padding:86px 0}.story-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px}.story-section .eyebrow{color:var(--gold)}.story-copy{padding-top:47px;font-size:1.15rem;line-height:1.8}.story-copy p{margin-bottom:25px}.signature{font-family:var(--serif);font-size:2.1rem;font-style:italic;font-weight:700;letter-spacing:-.04em;margin-top:30px}.signature span{color:var(--gold)}.story-photo{margin-top:30px;width:100%;aspect-ratio:4/3;object-fit:cover}.gallery-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.gallery-grid figure{margin:0}.gallery-grid img{width:100%;aspect-ratio:4/3;object-fit:cover}.gallery-section{border-bottom:1px solid var(--line)}.visit-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;align-items:stretch}.visit-details{display:grid;gap:26px}.detail-block{border-top:1px solid var(--line);padding-top:22px}.detail-block h3{font-size:1rem;font-weight:700;margin-bottom:14px}.detail-block p{font-size:.95rem;margin-bottom:12px}.muted{color:var(--muted)}.phone-link{font-family:var(--serif);font-size:1.75rem}.hours{margin:0 0 16px;font-size:.92rem}.hours div{display:flex;justify-content:space-between;gap:18px;padding:6px 0;border-bottom:1px solid var(--line)}.hours dd{margin:0;text-align:right}.map-card{background:#edf3fa;min-height:510px;display:flex;flex-direction:column}.map-placeholder{margin:auto;max-width:400px;padding:45px 30px;text-align:center}.map-kicker{display:block;font-size:.71rem;letter-spacing:.13em;font-weight:700;margin-bottom:45px}.map-placeholder h3{font-family:var(--serif);font-size:2.6rem;letter-spacing:-.04em;line-height:1.15}.map-placeholder p{font-size:.85rem;color:#405673}.map-placeholder .button{margin:10px 0 20px}.map-placeholder>a{display:block}.map-status:empty{display:none}.google-map{width:100%;min-height:460px;flex:1;border:0}.map-controls{padding:16px;display:flex;justify-content:space-between;gap:20px;align-items:center;flex-wrap:wrap}.map-unload{background:none;border:1px solid #647c9c;padding:8px 12px;font-size:.85rem;min-height:44px}.site-footer{background:var(--ink);color:white;padding:64px 0 26px}.footer-top{display:flex;justify-content:space-between;align-items:center;gap:30px;padding-bottom:55px}.site-footer .eyebrow{color:var(--gold);margin-bottom:18px}.footer-name{font-family:var(--serif);font-size:clamp(2rem,3.8vw,3.5rem);letter-spacing:-.035em;margin-bottom:0;line-height:1.2}.footer-name span{color:var(--gold)}.button-gold{background:var(--gold);color:var(--ink);border-color:var(--gold)}.button-gold:hover{background:#405447}.footer-bottom{display:flex;justify-content:space-between;gap:25px;padding-top:25px;border-top:1px solid #ffffff35;font-size:.78rem;color:#dce7f5}.footer-bottom p{margin:0}.footer-links{display:flex;gap:24px;align-items:center;flex-wrap:wrap}.footer-links ul{list-style:none;margin:0;padding:0;display:flex;gap:20px}.mobile-actions{display:none}.skip-link{position:absolute;top:-100px;left:16px;background:var(--gold);color:var(--ink);padding:12px 18px;z-index:100}.skip-link:focus{top:12px}.document-page{padding-block:75px 100px;min-height:65vh;max-width:850px}.document-page h1{font-size:clamp(2.8rem,6vw,4.5rem)}.document-page h2{font-size:2rem;margin-block:35px 18px}.document-page h3{margin-top:28px}.entry-content img{max-width:100%}.entry-content{overflow-wrap:anywhere}.post-summary{padding-block:20px;border-bottom:1px solid var(--line)}.extra-content{padding-bottom:60px;max-width:850px}.wp-caption{max-width:100%}.aligncenter{margin-inline:auto}.screen-reader-text{clip-path:inset(50%);height:1px;width:1px;overflow:hidden;position:absolute;white-space:nowrap}a.screen-reader-text:focus{clip-path:none;height:auto;width:auto;position:static}.navigation.pagination{margin-top:30px}.page-numbers{padding:8px}
@media(min-width:1500px){.hero{padding-block:90px}.hero-side{min-height:530px}}
@media(max-width:1000px){.shell{width:calc(100% - 56px)}.hero-grid{gap:38px;grid-template-columns:1.1fr 1fr}.hero-side{min-height:440px}.hero h1{font-size:4rem}.header-inner{gap:20px}.header-inner nav{gap:20px}.header-cta{display:none}.story-grid{gap:45px}.visit-grid{gap:35px}.sign-name{font-size:3.6rem}}
@media(max-width:700px){body{font-size:16px;padding-bottom:62px}.shell{width:calc(100% - 40px)}.header-inner{min-height:100px;gap:20px;flex-wrap:wrap;padding-block:16px}.brand-name{font-size:2rem}.brand-place{font-size:.56rem}.header-inner nav{gap:16px}.header-inner nav a{font-size:.8rem;padding-block:12px}.hero{padding:45px 0}.hero-grid{grid-template-columns:1fr;gap:38px}.hero h1{font-size:clamp(3.05rem,12vw,4.5rem)}.hero .eyebrow{font-size:.7rem;margin-bottom:22px}.hero-intro{font-size:1rem}.hero-footnote{margin-top:28px}.hero-side{min-height:350px;transform:none}.shop-sign{padding:22px}.sign-name{font-size:4.2rem}.sign-rule{margin:16px auto}.sign-motto{font-size:1.15rem}.visit-strip{padding:16px 22px}.values-strip{padding:16px 0}.values-strip .shell{font-size:.57rem;gap:10px;letter-spacing:.05em}.values-strip span[aria-hidden]{font-size:.9rem}.section{padding-block:60px}.section-top{display:block;margin-bottom:30px}.section-intro{margin-top:24px}.section-top>.text-link{display:inline-block;margin-top:24px}h2{font-size:2.8rem}.service-row{grid-template-columns:26px 1fr;gap:10px;padding-block:24px}.service-price{grid-column:2;font-size:.85rem}.service-row h3{font-size:1.65rem}.story-section{padding-block:55px}.story-grid{grid-template-columns:1fr;gap:26px}.story-copy{padding-top:0;font-size:1.05rem}.story-copy .signature{margin-bottom:0}.visit-grid{grid-template-columns:1fr;gap:30px}.map-card{min-height:425px}.map-placeholder{padding:30px 24px}.map-kicker{margin-bottom:28px}.google-map{min-height:400px}.footer-top{display:block;padding-bottom:35px}.footer-top .button{margin-top:26px}.site-footer{padding-top:45px}.footer-bottom{display:block}.footer-links{margin-top:20px;font-size:.85rem}.mobile-actions{display:grid;grid-template-columns:1fr 1fr;position:fixed;bottom:0;left:0;right:0;z-index:20;background:var(--gold);box-shadow:0 -2px 12px #0001;padding-bottom:env(safe-area-inset-bottom)}.mobile-action{display:flex;min-height:62px;align-items:center;justify-content:center;text-decoration:none;font-weight:700;font-size:.85rem}.mobile-action:first-child{background:var(--ink);color:white}.document-page{padding-top:45px}.gallery-grid{gap:12px}}
@media(max-width:380px){.header-inner{justify-content:center}.header-inner nav{justify-content:center;width:100%}.brand{text-align:center}.actions{gap:20px}.values-strip span[aria-hidden]{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
@media print{.site-header nav,.mobile-actions,.map-card,.site-footer,.actions,.header-cta{display:none}.hero-side{display:none}.hero-grid,.story-grid,.visit-grid{display:block}.shell{width:100%}.section,.hero,.story-section{padding-block:20px}.story-section{background:white;color:black}body{padding:0}.values-strip{background:white}}
.hero-grid>*{min-width:0}@media(max-width:700px){.sign-name{font-size:clamp(2.4rem,13vw,3.6rem)}.hero-side.has-photo{height:auto}.hero-photo{height:auto;aspect-ratio:4/5}.mobile-actions{padding-bottom:env(safe-area-inset-bottom)}body{padding-bottom:calc(62px + env(safe-area-inset-bottom))}}

.hero-side{color:#fff}.shop-sign{border-color:#ffffff70}.sign-rule{background:#fff}
.visit-strip,.values-strip,.button-gold,.mobile-actions{background:var(--gold);color:#fff}
.story-section .eyebrow,.site-footer .eyebrow,.signature span,.footer-name span{color:#fff}
.button-gold:hover{background:#405447;color:#fff}.skip-link{background:var(--gold);color:#fff}
.mobile-action:first-child{background:var(--ink);color:#fff}
.hero-footnote{font-size:.8rem;letter-spacing:.035em;text-transform:none}
.vibe-section{display:grid;grid-template-columns:1.2fr .8fr;gap:90px;padding-block:75px;border-bottom:1px solid var(--line)}
.vibe-section h2{font-size:clamp(2.3rem,3.7vw,3.4rem);max-width:620px}.vibe-copy{align-self:center;font-size:1.1rem;color:var(--muted)}.vibe-copy .text-link{color:var(--ink)}
.photo-invitation{background:#edf3fa;display:flex;align-items:center;justify-content:space-between;gap:40px;padding:36px 40px;margin-top:55px}.photo-invitation .eyebrow{margin-bottom:14px}.photo-invitation h2{font-size:2.1rem}.photo-invitation p:last-child{margin:16px 0 0;color:var(--muted)}.photo-invitation .button{flex-shrink:0}
@media(max-width:1000px){.header-inner nav{gap:18px}.vibe-section{gap:40px}.photo-invitation{gap:24px}}
@media(max-width:700px){.header-inner{justify-content:space-between}.header-inner nav{width:100%;justify-content:flex-start;flex-wrap:wrap;gap:4px 22px}.header-inner nav a{font-size:.88rem;padding-block:6px}.vibe-section{grid-template-columns:1fr;gap:24px;padding-block:50px}.vibe-copy{font-size:1rem}.vibe-copy p{margin-bottom:20px}.photo-invitation{display:block;padding:28px;margin-top:35px}.photo-invitation .button{margin-top:25px}.photo-invitation h2{font-size:1.9rem}}
