@font-face{font-family:Montserrat;src:url('assets/montserrat.woff2') format('woff2');font-weight:100 900;font-display:swap}
:root{--navy:#0b2d38;--teal:#0f6b6e;--gold:#dea02d;--stone:#f5f4f0;--muted:#405e65;--line:#0b2d3822;--type-title:clamp(2.25rem,4vw,3.5rem);--type-section:2rem;--type-card:1.625rem;--type-body:1rem;--type-ui:.875rem;--type-meta:.75rem}
*{box-sizing:border-box}html{scroll-padding-top:30px}body{margin:0;background:var(--stone);color:var(--navy);font:400 var(--type-body)/1.7 Montserrat,Arial,sans-serif}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer;color:inherit}img{display:block;max-width:100%}h1,h2,h3,p{margin-top:0}a:focus-visible,button:focus-visible{outline:3px solid var(--teal);outline-offset:5px}a,button{-webkit-tap-highlight-color:transparent;touch-action:manipulation}[hidden]{display:none!important}.wrap{width:min(1120px,90%);margin-inline:auto}.skip-link{position:absolute;top:-100px;left:5%;padding:12px 20px;background:#fff;z-index:20}.skip-link:focus{top:8px}
.preview-bar{padding:5px 5%;background:var(--navy);color:#ecf2ef;font-size:var(--type-meta);text-align:center;line-height:1.5}
.site-header{display:flex;align-items:center;justify-content:space-between;gap:25px;padding-block:22px;border-bottom:1px solid var(--line)}.brand img{width:175px;height:auto}.site-header nav{display:flex;gap:28px;align-items:center;font-size:var(--type-ui);font-weight:600}.site-header nav a{display:inline-flex;align-items:center;min-height:44px}.site-header nav a:hover{text-decoration:underline;text-underline-offset:5px}
.hero{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr);gap:32px;align-items:center;padding-block:32px 40px}.eyebrow{font-size:var(--type-meta);color:var(--teal);letter-spacing:1.6px;font-weight:700;margin-bottom:18px}h1{font-size:var(--type-title);font-weight:800;line-height:1.1;letter-spacing:-.025em;margin-bottom:22px}h1>span{color:var(--teal)}.hero-copy>p:last-child{max-width:510px;color:var(--muted);font-size:var(--type-body);line-height:1.7;margin:0}
.orb-stage{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:0;padding-top:84px;padding-bottom:4px}.business-orb{width:246px;height:246px;border-radius:50%;border:2px solid var(--gold);background:#fff;box-shadow:0 23px 28px -19px #0b2d3870;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:20px;gap:5px;animation:gentle-float 8s ease-in-out infinite;transition:scale .25s,box-shadow .25s}.business-orb:hover,.business-orb:focus-visible{scale:1.045;box-shadow:0 29px 34px -19px #0b2d3880;animation-play-state:paused}.business-orb:focus-visible{outline:3px solid var(--teal);outline-offset:5px}.orb-mark{width:100px;height:100px;object-fit:contain}.orb-wordmark{width:140px;height:46px;object-fit:contain}.orb-category{font-size:.8125rem;font-weight:600;line-height:1.4;white-space:normal;text-wrap:balance;text-align:center;max-width:175px;margin-top:3px}
.business-prompt{position:absolute;top:0;left:50%;transform:translateX(-50%);width:285px;max-width:100%;padding:15px 23px;background:#fff;border:1px solid #0f6b6e35;border-radius:32px;box-shadow:0 12px 20px -16px #0b2d3844;visibility:hidden;opacity:0;transition:opacity .15s}.business-prompt:after{content:'';position:absolute;left:46%;bottom:-7px;width:12px;height:12px;background:#fff;border-right:1px solid #0f6b6e35;border-bottom:1px solid #0f6b6e35;transform:rotate(45deg)}.business-prompt>a{font-size:var(--type-ui);font-weight:600;line-height:1.5;display:block;min-height:44px}.orb-stage:hover .business-prompt,.orb-stage:focus-within .business-prompt{visibility:visible;opacity:1}.orb-stage.prompt-dismissed .business-prompt{visibility:hidden;opacity:0}.orb-actions{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:4px 16px;margin-top:15px;max-width:100%}.orb-hint{font-size:var(--type-meta);color:var(--muted);line-height:1.5;margin:0}.motion-control{border:0;border-bottom:1px solid var(--line);background:none;padding:8px 0;min-height:44px;color:var(--muted);font-size:var(--type-meta)}.paused .business-orb{animation-play-state:paused}
.directory{border-top:1px solid var(--line);padding-block:32px 48px;scroll-margin-top:30px}.directory-heading{margin-bottom:24px}.directory-heading h2{font-size:var(--type-section);font-weight:700;line-height:1.25;letter-spacing:-.025em;margin:0}.business-card{display:grid;grid-template-columns:.85fr 1.15fr;border:1px solid var(--line);border-radius:14px;background:#fff;overflow:hidden;scroll-margin-top:50px;transition:box-shadow .25s,border-color .25s}.business-card:focus,.business-card.is-selected{outline:3px solid var(--teal);outline-offset:4px;border-color:var(--gold);box-shadow:0 12px 25px #0b2d380c}.card-photo{min-width:0;background:#e6e7df;min-height:300px}.card-photo img{width:100%;height:100%;object-fit:cover;object-position:center}.card-copy{padding:34px 38px}.business-category{font-size:.8125rem;color:var(--teal);font-weight:600;margin-bottom:12px}.card-copy h3{font-size:var(--type-card);font-weight:700;line-height:1.25;letter-spacing:-.02em;margin-bottom:16px}.card-copy .services{font-size:var(--type-body);font-weight:400;line-height:1.7;margin-bottom:18px}.profile-link{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:13px 24px;border-radius:10px;background:var(--navy);color:#fff;font-size:var(--type-ui);font-weight:600}.profile-link:hover{background:var(--teal)}
footer{display:flex;align-items:center;justify-content:space-between;gap:25px;padding-block:24px;border-top:1px solid var(--line);font-size:var(--type-meta);color:var(--muted)}footer img{width:125px;height:auto}footer p{margin:0}footer a{min-height:44px;display:inline-flex;align-items:center;text-decoration:underline;text-underline-offset:4px}.host-credit{display:flex;align-items:center;gap:10px}.host-credit .circle-host-mark{width:28px;height:28px;flex:0 0 28px;object-fit:contain}
@keyframes gentle-float{0%,100%{translate:0 0}50%{translate:0 -6px}}
@media(max-width:850px){.hero{gap:24px;grid-template-columns:minmax(0,1.1fr) minmax(255px,.9fr)}.business-orb{width:228px;height:228px;padding:18px;gap:4px}.orb-mark{width:87px;height:87px}.orb-wordmark{width:132px;height:43px}.orb-category{max-width:170px}.business-prompt{width:255px;padding:14px 19px}.card-copy{padding:28px}.card-photo{min-height:300px}}
@media(max-width:650px){:root{--type-section:1.75rem;--type-card:1.5rem;--type-title:clamp(2rem,8.6vw,2.25rem)}.site-header{padding-block:16px;gap:15px}.brand img{width:125px}.site-header nav{gap:15px;font-size:.8125rem}.site-header nav a:last-child{display:none}.hero{grid-template-columns:1fr;gap:20px;padding-block:28px 26px}.hero-copy{max-width:510px}.eyebrow{margin-bottom:16px}h1{margin-bottom:18px}.orb-stage{padding-top:8px;padding-bottom:0;max-width:360px;width:100%;margin-inline:auto}.business-prompt{position:relative;top:auto;left:auto;transform:none;visibility:visible;opacity:1;width:280px;margin-top:18px;padding:13px 22px}.business-prompt:after{top:-7px;bottom:auto;transform:rotate(225deg)}.orb-stage.prompt-dismissed .business-prompt{display:none}.orb-actions{margin-top:8px}.directory{padding-block:28px 36px}.directory-heading{margin-bottom:22px}.business-card{grid-template-columns:1fr}.card-photo{min-height:0;height:225px}.card-photo img{height:100%;object-fit:cover}.card-copy{padding:25px}.profile-link{width:100%;margin-top:4px}footer{flex-wrap:wrap;gap:12px}footer p{flex-basis:100%;order:3}footer img{width:115px}footer a{margin-left:auto}}
@media(max-width:360px){.business-orb{width:218px;height:218px}.orb-mark{width:82px;height:82px}.orb-wordmark{width:128px;height:42px}.orb-category{max-width:165px}.card-photo{height:205px}.card-copy{padding:22px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}
