
:root{--cream:#f6f0e4;--teal:#154b46;--orange:#c94e31;--line:#cfc8b9;--muted:#666c62;--light:#ece2d0}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:25px}body{margin:0;background:var(--cream);color:var(--teal);font:16px/1.7 Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}button,a,summary{touch-action:manipulation}button{font:inherit;color:inherit;cursor:pointer}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid currentColor;outline-offset:5px}img{display:block;width:100%;max-width:100%;height:auto}p,h1,h2,h3,figure{margin:0}.skip{position:fixed;z-index:20;top:12px;left:12px;background:var(--cream);color:var(--teal);padding:12px;transform:translateY(-160%)}.skip:focus{transform:none}.notice{display:flex;align-items:center;justify-content:space-between;gap:20px;background:var(--teal);color:var(--cream);padding:9px 5%;font:8px/1.6 Arial,sans-serif;letter-spacing:1px}.notice a{white-space:nowrap}header{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:27px 5%;border-bottom:1px solid var(--line)}.brand{font:bold italic 39px/.95 Georgia,serif;letter-spacing:-2px;white-space:nowrap}.brand>span{display:block;font:8px/1.5 Arial,sans-serif;text-transform:uppercase;letter-spacing:2px;margin-top:12px}nav{display:flex;align-items:center;gap:34px;font-size:12px}nav a{border-bottom:1px solid transparent;padding:8px 0}nav a:hover{border-color:var(--orange)}nav .nav-call{background:var(--teal);color:var(--cream);padding:12px 19px}.welcome{padding:24px 5% 45px}.welcome-top{display:flex;justify-content:space-between;gap:20px;font:8px/1.5 Arial,sans-serif;letter-spacing:1.8px;color:var(--muted)}h1{font:500 clamp(56px,7.8vw,112px)/.98 Georgia,'Times New Roman',serif;letter-spacing:-.055em;text-align:center;margin:45px auto 23px}h1 em{font-weight:400;color:var(--orange)}.welcome-intro{text-align:center;color:var(--muted);font-size:14px;line-height:1.8;margin-bottom:36px}.street-scene{position:relative;max-width:1020px;margin:0 auto;padding-right:50px}.street-scene figure{transform:rotate(-1deg)}.photograph{padding:0;border:0;background:var(--teal);display:block;width:100%;text-align:left;overflow:hidden;position:relative}.street-scene .photograph{border:8px solid white;box-shadow:0 20px 45px -30px #463d3480}.street-scene img{height:clamp(300px,36vw,500px);object-fit:cover;object-position:center 35%;transition:transform .7s}.photograph:hover img{transform:scale(1.025)}.enlarge{position:absolute;left:16px;bottom:14px;color:white;display:flex;gap:35px;align-items:center;background:#154b46e8;padding:9px 12px;font:8px Arial,sans-serif;letter-spacing:1px}.enlarge b{font-size:19px;font-weight:400;line-height:1}.street-scene figcaption{font-size:10px;color:var(--muted);padding:13px 9px;line-height:1.6}.street-scene figcaption a{text-decoration:underline;text-underline-offset:3px}.unit-stamp{position:absolute;right:0;top:32px;width:166px;height:166px;border-radius:50%;background:var(--orange);color:var(--cream);border:8px solid var(--cream);outline:1px solid var(--orange);display:flex;align-items:center;justify-content:center;flex-direction:column;transform:rotate(9deg);transition:transform .3s}.unit-stamp:hover{transform:rotate(0)}.unit-stamp small{font-size:7px;letter-spacing:1.2px}.unit-stamp strong{font:500 68px/.95 Georgia,serif;letter-spacing:-4px;margin:5px 0 9px}.unit-stamp>span{font-size:7px;letter-spacing:.8px}.welcome-bottom{display:flex;align-items:center;justify-content:space-between;gap:25px;margin:22px auto 0;max-width:1000px}.welcome-bottom>p:first-child{font-size:12px;line-height:1.8}.welcome-bottom>p:first-child span{font-size:10px;color:var(--muted)}.call-link{background:var(--teal);color:var(--cream);padding:14px 21px;display:flex;gap:45px;align-items:center;font-size:12px}.call-link span{font-size:24px;line-height:1}.little-note{font:italic 22px/1.2 Georgia,serif;transform:rotate(-5deg)}.little-note em{color:var(--orange)}.chapter-divider{display:flex;justify-content:space-between;align-items:center;gap:20px;border-block:1px solid var(--line);padding:19px 5%;font-size:9px;letter-spacing:1.5px}.chapter-divider i{font-size:23px;line-height:1;color:var(--orange);font-style:normal}.section{padding:75px 5%}.section-label{display:flex;align-items:center;gap:16px;font-size:9px;letter-spacing:1.5px;margin-bottom:38px}.section-label>span{border:1px solid currentColor;border-radius:50%;width:29px;height:29px;display:grid;place-items:center;font-size:9px;letter-spacing:0}.section-label>p{font-size:8px}.service-layout{display:grid;grid-template-columns:1fr 1.4fr;gap:13%}h2{font:500 clamp(45px,5.4vw,77px)/1.02 Georgia,serif;letter-spacing:-.05em}h2 em{font-weight:400}.service-intro>p{font-size:14px;color:var(--muted);max-width:330px;margin-top:25px;line-height:1.9}.prepare-card{border-top:1px solid var(--line);margin-top:40px;padding-top:20px;max-width:340px}.eyebrow{font:8px/1.5 Arial,sans-serif;letter-spacing:1.6px}.prepare-card>span{color:var(--orange);font-weight:700}.prepare-card>p{font-size:12px;line-height:1.8;margin:12px 0 18px;min-height:65px}.prepare-card>a{font-size:15px;font-weight:700;border-bottom:1px solid var(--teal);padding-bottom:5px}.service-ledger{border-top:1px solid var(--teal)}.service-ledger details{border-bottom:1px solid var(--line);padding:23px 0}.service-ledger summary{cursor:pointer;list-style:none;display:grid;grid-template-columns:40px 1fr 30px;gap:16px;align-items:start;font:27px/1.1 Georgia,serif;letter-spacing:-.5px}.service-ledger summary::-webkit-details-marker{display:none}.service-ledger .row-number{font:9px Arial,sans-serif;letter-spacing:1px;padding-top:5px;color:var(--orange)}.service-ledger summary>b{font:27px/1 Arial,sans-serif;letter-spacing:0;font-weight:400;transition:transform .3s;color:var(--orange)}.service-ledger details[open] summary>b{transform:rotate(45deg)}.service-ledger details p{margin:19px 50px 3px 56px;color:var(--muted);font-size:13px;line-height:1.9}.arrival{background:var(--teal);color:var(--cream);padding-bottom:95px}.arrival>.section-label{color:#c3d1bc}.arrival-heading{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:45px}.arrival-heading h2{font-size:clamp(44px,4.9vw,70px);max-width:760px}.arrival-heading h2 em{color:#e6b78f}.arrival-heading>p{max-width:270px;font-size:12px;color:#c3d1bc;line-height:1.9}.arrival-layout{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:start}.arrival-visual{position:sticky;top:22px}.arrival-visual img{height:470px;object-fit:cover;object-position:50% 48%;transition:transform .7s}.arrival-visual .enlarge{background:var(--cream);color:var(--teal)}.arrival-visual figcaption{font-size:9px;line-height:1.8;color:#c3d1bc;margin-top:13px}.arrival-visual figcaption a{text-decoration:underline;text-underline-offset:3px}.arrival-key{display:flex;align-items:center;justify-content:space-between;gap:15px;border-block:1px solid #c3d1bc50;margin-top:23px;padding:16px 0}.arrival-key>[data-guide]{font-size:13px;letter-spacing:1px;padding:4px 7px;transition:background .3s,color .3s}.arrival-key>[data-guide].is-active{background:var(--cream);color:var(--teal)}.arrival-key>span:nth-child(even){color:#97b5a9}.arrival-key>strong{font:500 36px/1 Georgia,serif;letter-spacing:-1px}.guide-caption{font-size:9px;color:#c3d1bc;margin-top:12px}.arrival-stops{margin:0;padding:0;list-style:none}.arrival-stop{border-top:1px solid #c3d1bc60;padding:30px 0 38px;min-height:235px;opacity:.65;transition:opacity .35s}.arrival-stop:last-child{border-bottom:1px solid #c3d1bc60}.arrival-stop.is-active{opacity:1}.arrival-stop>button{padding:0;border:0;background:none;display:block;text-align:left;width:100%;position:relative;padding-right:30px}.arrival-stop button small{display:block;font:8px Arial,sans-serif;letter-spacing:1.4px;color:#e6b78f;margin-bottom:18px}.arrival-stop button span{font:37px/1.1 Georgia,serif;letter-spacing:-1.5px}.arrival-stop button b{position:absolute;right:0;bottom:4px;font:25px/1 Arial;font-weight:400;color:#e6b78f}.arrival-stop>p{font-size:13px;color:#e1e6d8;line-height:1.9;margin-top:20px;max-width:370px}.arrival-stop>p strong{font-weight:400;color:white}.arrival-stop>a{display:inline-block;font-size:11px;margin-top:16px;border-bottom:1px solid #c3d1bc70;padding-bottom:3px}.visit{background:#e6cbb0}.visit-layout{display:grid;grid-template-columns:1.3fr 1fr;gap:13%}.visit h2{font-size:clamp(54px,7vw,100px)}.visit h2 em{color:var(--orange)}.phone{font-size:clamp(22px,2.8vw,38px);font-weight:700;letter-spacing:-1px;margin:32px 0 18px;display:flex;justify-content:space-between;align-items:center;gap:20px;max-width:440px}.phone span{font-weight:400}.visit-layout>div>p{font-size:13px;max-width:350px;line-height:1.9}.visit-card{border-top:1px solid var(--teal);padding-top:21px}.visit-card h3{font-size:21px;letter-spacing:-.6px;margin-top:20px}.visit-card>p{font-size:12px;line-height:1.8;margin-top:8px}.hours{margin:25px 0}.hours>div{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid #154b4650;padding:12px 0;font-size:12px}.hours dd{margin:0;text-align:right}.directions{display:flex;align-items:center;justify-content:space-between;background:var(--teal);color:var(--cream);padding:13px 17px;font-size:12px;min-height:48px}.directions>span{font-size:21px}.visit-card>.fine{font-size:10px;opacity:.8;margin-top:16px}footer{display:grid;grid-template-columns:1fr 1fr;gap:15%;padding:45px 5%}footer .brand{font-size:44px}footer p{font-size:10px;color:var(--muted);line-height:1.9;margin-bottom:17px}footer>div>a{display:inline-block;font-size:10px;border-bottom:1px solid var(--line);margin:0 22px 10px 0}dialog{border:0;background:var(--cream);color:var(--teal);padding:20px;width:min(880px,92vw);max-height:90dvh;box-shadow:0 30px 100px #0008}dialog::backdrop{background:#092d29e8;backdrop-filter:blur(4px)}#close-photo{display:block;margin:0 0 15px auto;min-height:44px;padding:10px 16px;background:var(--teal);color:var(--cream);font-size:12px;border:0}dialog>img{max-height:65dvh;object-fit:contain}dialog p{font-size:11px;margin-top:15px}dialog>a{display:inline-block;font-size:10px;border-bottom:1px solid var(--teal);margin-top:6px}.arrived{animation:arrive .7s both}@keyframes arrive{from{opacity:.6;transform:translateY(15px)}to{opacity:1;transform:none}}
@media(min-width:1600px){header,.notice,.welcome,.chapter-divider,.section,footer{padding-left:max(5%,calc((100vw - 1440px)/2));padding-right:max(5%,calc((100vw - 1440px)/2))}}
@media(max-width:1000px){h1{font-size:83px}.service-layout{gap:8%}.service-ledger summary{font-size:25px;grid-template-columns:30px 1fr 25px}.service-ledger details p{margin-left:46px;margin-right:20px}.arrival-heading{display:block}.arrival-heading>p{max-width:450px;margin-top:25px}.arrival-layout{gap:7%}.arrival-visual img{height:410px}.arrival-stop button span{font-size:30px}.visit-layout{gap:8%}.visit-card h3{font-size:19px}.phone{font-size:29px}.little-note{font-size:20px}}
@media(max-width:650px){.notice{font-size:7px;letter-spacing:.6px;gap:16px}.notice>span{max-width:235px}header{padding:22px 5%;align-items:end;gap:22px}.brand{font-size:32px}.brand>span{font-size:6px;letter-spacing:1.2px;margin-top:9px}nav{gap:12px;flex-wrap:wrap;max-width:180px;justify-content:end;font-size:9px}nav a{padding:3px 0}nav .nav-call{padding:7px 10px}.welcome{padding-top:20px;padding-bottom:33px}.welcome-top{font-size:6px;letter-spacing:1px;gap:20px}.welcome-top>span:last-child{max-width:100px;text-align:right}h1{font-size:clamp(44px,11vw,70px);letter-spacing:-.06em;margin:35px auto 20px}.welcome-intro{font-size:12px;margin-bottom:27px}.street-scene{padding-right:0}.street-scene .photograph{border:5px solid white}.street-scene img{height:300px;object-position:50% 40%}.street-scene figcaption{font-size:8px;padding:10px 3px}.enlarge{left:10px;bottom:10px;font-size:7px;gap:20px;padding:8px 10px}.unit-stamp{width:105px;height:105px;border-width:5px;top:17px;bottom:auto;right:-3px;transform:rotate(9deg)}.unit-stamp small{font-size:5px;letter-spacing:.5px}.unit-stamp strong{font-size:44px;letter-spacing:-2px;margin:3px 0 5px}.unit-stamp>span{font-size:5px;letter-spacing:.4px}.welcome-bottom{flex-wrap:wrap;gap:20px;margin-top:31px;align-items:start}.welcome-bottom>p:first-child{font-size:11px;max-width:60%}.welcome-bottom>p:first-child span{font-size:9px}.call-link{width:100%;justify-content:space-between;padding:13px 17px;font-size:12px;order:3}.little-note{font-size:16px;margin-top:15px}.chapter-divider{padding:15px 5%;font-size:6px;letter-spacing:.7px;gap:10px}.chapter-divider i{font-size:16px}.section{padding:50px 5%}.section-label{margin-bottom:28px;gap:12px}.section-label>p{font-size:7px;letter-spacing:1px}.section-label>span{width:25px;height:25px;font-size:8px}.service-layout{display:block}h2{font-size:48px}.service-intro>p{font-size:13px;max-width:340px;margin-top:20px}.prepare-card{margin-top:25px;padding-top:18px;max-width:none;margin-bottom:30px}.prepare-card>p{font-size:12px;min-height:0;margin:9px 0 14px}.prepare-card>a{font-size:14px}.service-ledger summary{font-size:27px;gap:12px;grid-template-columns:27px 1fr 25px}.service-ledger details{padding:21px 0}.service-ledger details p{font-size:12px;margin-left:39px;margin-right:12px}.arrival-heading{margin-bottom:30px}.arrival-heading h2{font-size:44px}.arrival-heading>p{font-size:12px;margin-top:22px}.arrival-layout{display:block}.arrival-visual{position:static}.arrival-visual img{height:350px;object-position:center 48%}.arrival-visual figcaption{font-size:8px}.arrival-key{margin-top:17px;padding:12px 0}.arrival-key>[data-guide]{font-size:11px}.arrival-key>strong{font-size:31px}.guide-caption{font-size:8px}.arrival-stops{margin-top:30px}.arrival-stop{min-height:0;padding:25px 0 30px;opacity:1}.arrival-stop button span{font-size:32px}.arrival-stop>p{font-size:12px;margin-top:17px}.arrival-stop button small{margin-bottom:14px;font-size:7px}.arrival-stop.is-active button span{color:#e6b78f}.visit-layout{display:block}.visit h2{font-size:65px}.phone{font-size:29px;margin-top:26px;gap:10px;max-width:none}.visit-layout>div>p{font-size:12px}.visit-card{margin-top:32px}.visit-card h3{font-size:21px}.visit-card>.fine{font-size:9px}footer{display:block;padding:35px 5%}footer .brand{font-size:36px}footer>div{margin-top:25px}footer p{font-size:9px}dialog{padding:15px}dialog>img{max-height:58dvh}}
@media(max-width:360px){header{gap:15px}.brand{font-size:28px}nav{max-width:155px;font-size:8px;gap:8px}h1{font-size:40px}.street-scene img{height:270px}.phone{font-size:25px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}.photograph:hover img{transform:none}.unit-stamp:hover{transform:rotate(9deg)}}
