:root{--paper:#f9f7f2}
body{background:#f9f7f2}.hub-top{display:flex;align-items:center;justify-content:space-between;min-height:58px;font-size:9px;letter-spacing:1.9px;color:#8c7852;gap:20px}.hub-top>a:last-child{font-size:11px;letter-spacing:0;color:#68666a;display:flex;gap:10px;align-items:center;min-height:44px}.hub-top a:hover{color:#080c48}
.hub-main{position:relative;background:linear-gradient(180deg,#f9f7f2 0%,#f0eae0 55%,#f9f7f2 100%);padding-bottom:58px}.welcome{display:grid;grid-template-columns:.9fr 1.1fr;gap:40px;align-items:center;min-height:455px;padding-top:8px;position:relative;max-width:1000px}.welcome-portrait{position:relative;height:440px;width:100%;margin:0;align-self:end;isolation:isolate}.welcome-portrait>img{position:relative;width:100%;height:100%;object-fit:contain;object-position:center bottom;display:block;z-index:1}.welcome-arch{position:absolute;inset:28px 17px 0;background:#e7ddcc6b;border:1px solid #d2c1a03d;border-radius:48% 48% 0 0;z-index:0}.welcome-portrait figcaption{position:absolute;left:27px;bottom:28px;z-index:2;font-size:9px;letter-spacing:.3px;color:#fff;background:#080c48a6;padding:7px 11px;border-radius:20px;backdrop-filter:blur(8px)}
.welcome-copy{padding:20px 0 30px;text-align:center;position:relative;z-index:2}.welcome h1{font-size:inherit;line-height:1;margin:0 auto;max-width:440px;letter-spacing:0}.welcome h1 img{display:block;width:100%;height:auto}.welcome-rule{width:130px;height:1px;background:#c9b58d;margin:30px auto}.welcome-message{font:400 24px/1.55 var(--sans);letter-spacing:-.5px;color:#55504a;margin:0}.welcome-message em{font:italic 1.14em Georgia,serif;color:#92743f}.welcome-audience{font-size:10px;letter-spacing:1.2px;color:#898174;margin:22px 0 0}
.quick-actions{position:relative;z-index:3;max-width:850px;margin-top:-10px;display:flex;flex-direction:column;gap:16px}.quick-card{width:100%;border:1px solid #fff9;border-radius:24px;background:#fcfaf7;box-shadow:0 7px 18px #4434220c,inset 0 1px 0 #fff;display:flex;align-items:center;gap:25px;padding:19px 25px;min-height:112px;text-align:left;color:#3b3938;text-decoration:none;transition:box-shadow .2s,background .2s;position:relative;cursor:pointer;font-family:var(--sans)}.quick-card:hover{background:#fffdfa;box-shadow:0 9px 22px #44342214}.quick-card:focus-visible{outline:3px solid #b69a5e;outline-offset:4px}.quick-primary{border-color:#ded4bf;background:#fffdfa}.quick-icon{display:grid;place-items:center;width:70px;height:70px;flex-shrink:0;border:1px solid #e8e0d2;border-radius:50%;background:#f6f2eb;box-shadow:0 3px 5px #6d563c0a}.quick-icon>svg{width:30px;height:30px;stroke:#9a7d43;stroke-width:1.35;stroke-linecap:round;stroke-linejoin:round}.quick-primary .quick-icon{background:#080c48;border-color:#080c48;box-shadow:none}.quick-primary .quick-icon>svg{stroke:#e4ce9d}.quick-copy{display:block;flex:1;min-width:0}.quick-title{display:block;font-size:18px;line-height:1.3;font-weight:550;letter-spacing:-.3px;color:#4e483d}.quick-primary .quick-title{color:#080c48;font-weight:650}.quick-description{display:block;font-size:12px;line-height:1.6;color:#898175;margin-top:6px}.quick-arrow{width:40px;height:40px;border:1px solid #ebe3d5;background:#fbf9f4;border-radius:50%;display:grid;place-items:center;flex-shrink:0;box-shadow:0 2px 4px #6d563c08}.quick-arrow>svg{width:17px;height:17px;stroke:#9a7d43;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;transition:transform .2s}.quick-disclosure{scroll-margin-top:24px}.quick-disclosure>summary{list-style:none}.quick-disclosure>summary::-webkit-details-marker{display:none}.quick-disclosure>summary::marker{content:''}.quick-disclosure[open]>summary{border-radius:24px 24px 0 0;box-shadow:none;border-color:#e6ddce;border-bottom:0;background:#fffdfa}.quick-disclosure[open]>summary .quick-arrow>svg{transform:rotate(90deg)}.quick-content{padding:3px 25px 22px;border:1px solid #e6ddce;border-top:0;border-radius:0 0 24px 24px;background:#fffdfa;box-shadow:0 7px 18px #4434220a}
.quick-content .section{padding:20px 0 0;border-top:1px solid #eee8df}.expanded-services .section-heading{margin:0 0 18px}.expanded-services .section-heading .eyebrow,.expanded-services .section-heading>p{display:none}.expanded-services h2{font-size:26px}.expanded-services .service-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.expanded-services .service-card{padding:17px;min-height:165px}.expanded-services .filters{max-width:460px}.expanded-team{grid-template-columns:1fr;gap:20px}.expanded-team .team-heading{display:none}.expanded-team .team-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.expanded-team .team-image,.expanded-team .team-placeholder{height:165px}.expanded-team .portrait-credit{grid-column:1;margin:0}.expanded-team .team-info h3{font-size:14px}.expanded-team .team-info p{font-size:10px}.expanded-team .team-book{font-size:11px;min-height:44px}
@media(max-width:700px){.hub-top{width:calc(100% - 36px);min-height:48px;font-size:7px;letter-spacing:1.3px;gap:12px}.hub-top>a:last-child{font-size:9px;min-height:40px;gap:7px}.hub-main{padding-bottom:31px}.welcome{width:calc(100% - 20px);grid-template-columns:.95fr 1.05fr;gap:0;min-height:285px;padding-top:0;align-items:center}.welcome-portrait{height:286px;align-self:end;width:100%}.welcome-portrait>img{width:110%;max-width:none;margin-left:-6%;object-fit:cover;object-position:50% 0}.welcome-arch{inset:23px 0 0 5px;border-radius:48% 48% 0 0}.welcome-portrait figcaption{left:12px;bottom:20px;font-size:7px;padding:6px 8px}.welcome-copy{padding:0 6px 20px 0}.welcome h1{width:100%;max-width:none;margin-top:8px}.welcome-rule{width:68px;margin:20px auto;height:1px}.welcome-message{font-size:14px;line-height:1.65;letter-spacing:-.3px}.welcome-message br{display:none}.welcome-message em{font-size:1.16em;display:block;margin-top:2px}.welcome-audience{font-size:7px;line-height:1.8;letter-spacing:.4px;margin-top:14px;padding:0 5px}.quick-actions{width:calc(100% - 36px);gap:13px;margin-top:-6px}.quick-card{min-height:105px;padding:15px 15px;gap:14px;border-radius:21px}.quick-icon{width:53px;height:53px}.quick-icon>svg{width:25px;height:25px}.quick-title{font-size:16px;line-height:1.4;letter-spacing:-.25px}.quick-description{font-size:11px;line-height:1.6;margin-top:5px}.quick-arrow{width:29px;height:29px}.quick-arrow>svg{width:13px;height:13px}.quick-disclosure[open]>summary{border-radius:21px 21px 0 0}.quick-content{padding:0 13px 18px;border-radius:0 0 21px 21px}.expanded-services h2{font-size:23px}.expanded-services .service-toolbar{margin-bottom:13px}.expanded-services .filters{padding:3px}.expanded-services .filter{padding-inline:10px;font-size:9px}.expanded-services .filter:first-child{padding-left:10px}.expanded-services .filter:last-child{padding-right:10px}.expanded-services .service-grid{gap:9px}.expanded-services .service-card{padding:13px 10px;min-height:162px}.expanded-services .service-card h3{font-size:12px;min-height:33px}.expanded-services .service-bottom{gap:4px;align-items:center}.expanded-services .service-price{font-size:11px}.expanded-services .service-book{padding:7px 8px;font-size:8px;gap:4px;min-height:44px}.expanded-services .fine-print{font-size:8px}.expanded-team .team-grid{gap:10px}.expanded-team .team-image,.expanded-team .team-placeholder{height:92px}.expanded-team .team-info h3{font-size:10px;min-height:28px}.expanded-team .team-info p{font-size:8px}.expanded-team .team-book{font-size:9px}.expanded-team .portrait-credit{font-size:8px}.expanded-team .team-placeholder>span{font-size:34px}
}
@media(max-width:360px){.welcome-portrait{height:268px}.welcome-copy{padding-right:3px}.welcome-message{font-size:13px}.welcome-rule{margin-block:17px}.welcome-audience{font-size:6px}.quick-actions{width:calc(100% - 30px)}.quick-card{padding:14px 12px;gap:11px}.quick-title{font-size:14px}.quick-description{font-size:9px}.quick-icon{width:47px;height:47px}.quick-arrow{width:27px;height:27px}.expanded-services .service-bottom{flex-wrap:wrap}.expanded-services .service-card{min-height:175px}}

/* Short, one-time entrances follow the visitor's reading order. */
.page-motion [data-reveal]{opacity:0;transform:translateY(24px);transition:opacity .65s ease var(--reveal-delay,0ms),transform .72s cubic-bezier(.2,.65,.3,1) var(--reveal-delay,0ms),translate .1s linear,scale .1s linear,box-shadow .2s,background .2s}
.page-motion .welcome-portrait[data-reveal]{transform:translateY(18px)}
.page-motion [data-reveal].is-revealed{opacity:1;transform:translateY(0)}
.quick-disclosure[open] .quick-content{animation:panel-arrive .28s ease both}
@keyframes panel-arrive{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}
@media(hover:hover) and (pointer:fine){.quick-card:hover .quick-arrow{background:#eee4d2}.quick-card:hover .quick-icon>svg{transform:translateY(-1px)}.quick-icon>svg{transition:transform .2s ease}}
@media(prefers-reduced-motion:reduce){.page-motion [data-reveal],.page-motion .welcome-portrait[data-reveal]{opacity:1;transform:none;transition:none}.quick-disclosure[open] .quick-content{animation:none}.quick-icon>svg{transition:none!important;transform:none!important}}

.page-motion .quick-actions>[data-reveal]{translate:0 var(--scroll-lift,0px);scale:var(--scroll-scale,1);transform-origin:50% 50%}@media(prefers-reduced-motion:reduce){.page-motion .quick-actions>[data-reveal]{translate:none;scale:none}}
