/* Unified service and team presentation. Scoped to these two sections. */
.reference-home #services.services-premium {padding:80px 0 56px;background:#fff;}
.reference-home #services>.wrap,.reference-home #representative>.wrap,.reference-home #representative>.ref-container {width:calc(100% - 64px);max-width:1040px;margin-left:auto;margin-right:auto;}
.reference-home #services .service-editorial-head {max-width:780px;margin-bottom:36px;}
.reference-home #services .profile-eyebrow {color:#2563eb;font-size:12px;font-weight:700;letter-spacing:0;margin-bottom:12px;}
.reference-home #services .service-editorial-head h2 {font-size:34px;line-height:1.4;letter-spacing:-.045em;font-weight:750;color:#142b46;}
.reference-home #services .service-editorial-head p {font-size:14px;line-height:1.9;color:#66788b;margin-top:18px;text-wrap:pretty;}
.reference-home #services .service-editorial-grid {gap:18px;}
.reference-home #services .service-editorial-card {position:relative;border:1px solid #e0e9f2;border-radius:16px;padding:28px;background:#fff;box-shadow:0 6px 24px #183e6805;}
.reference-home #services .service-editorial-card:hover {border-color:#9dc3f0;background:#f8fbff;transform:translateY(-3px);}
.reference-home #services .service-index {width:36px;height:36px;border-radius:10px;background:#edf5ff;color:#2563eb;font-size:12px;font-weight:750;margin-bottom:24px;}
.reference-home #services .service-editorial-card h3 {font-size:21px;color:#142b46;font-weight:750;}
.reference-home #services .service-editorial-card p {font-size:13px;line-height:1.85;color:#66788b;margin-top:12px;}
.reference-home #services .service-detail {font-size:12px;font-weight:650;margin-top:26px;color:#2563eb;}
.reference-home #services .service-care-row {gap:18px;margin-top:18px;}
.reference-home #services .service-care-card {border-radius:16px;border:1px solid #e0eaf6;background:#f3f8ff;padding:22px 26px;gap:18px;}
.reference-home #services .service-care-icon {border-radius:12px;box-shadow:0 3px 12px #245a9b06;}
.reference-home #services .service-care-card h3 {color:#142b46;font-size:17px;}
.reference-home #services .service-care-card p {color:#66788b;font-size:12px;}
.reference-home #representative.representative-premium {background:linear-gradient(180deg,#fff 0%,#f3f8ff 55%,#f3f8ff 100%);padding:40px 0 72px;}
.reference-home #representative .representative-editorial {display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:60px;align-items:center;padding-top:52px;border-top:1px solid #e1eaf4;}
.reference-home #representative .representative-editorial-copy {align-self:center;max-width:560px;}
.reference-home #representative .representative-editorial-copy h2 {font-size:32px;line-height:1.55;letter-spacing:-.045em;font-weight:700;color:#142b46;word-break:keep-all;text-wrap:pretty;}
.reference-home #representative .representative-editorial-copy h2 strong {font-weight:750;color:#2563eb;}
.reference-home #representative .profile-lead {font-size:16px;font-weight:650;color:#263f59;margin-top:26px;line-height:1.8;}
.reference-home #representative .profile-description {font-size:14px;color:#66788b;line-height:1.95;margin-top:14px;}
.reference-home #representative .profile-consult {display:inline-flex;align-items:center;gap:16px;border:1px solid #cfdef0;border-radius:9px;padding:12px 18px;margin-top:28px;font-size:12px;color:#245890;background:#fff;text-decoration:none;}
.reference-home #representative .representative-portrait {width:100%;max-width:360px;border:1px solid #dfebf5;border-radius:18px;overflow:hidden;background:#edf7ff;box-shadow:0 14px 36px #173d6810;align-self:center;}
.reference-home #representative .representative-portrait img {width:100%;height:auto;object-fit:contain;}
.reference-home #representative .representative-portrait figcaption {background:#fff;padding:15px 20px;border-top:1px solid #e4edf6;}
.reference-home #representative .representative-portrait figcaption strong {font-size:13px;color:#263f59;font-weight:650;}
.reference-home #representative .representative-team-row {margin-top:32px;}
.reference-home #representative .team-gallery-track {display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:18px;max-width:800px;margin:0 auto;justify-content:center;overflow:visible;}
.reference-home #representative .team-gallery-card {width:100%;min-width:0;}
.reference-home #representative .team-gallery-photo {border-radius:12px;border:1px solid #e0e9f2;box-shadow:0 4px 16px #173d6807;}
.reference-home #representative .team-gallery-name {font-size:11px;text-align:center;color:#627a92;margin-top:10px;}
@media(max-width:900px){
.reference-home #representative .representative-editorial {grid-template-columns:minmax(0,1fr) 300px;gap:32px;}
.reference-home #representative .representative-editorial-copy h2 {font-size:27px;}
}
@media(max-width:640px){
.reference-home #services.services-premium {padding:52px 0 32px;}
.reference-home #services>.wrap,.reference-home #representative>.wrap,.reference-home #representative>.ref-container {width:calc(100% - 40px);}
.reference-home #services .service-editorial-head h2 {font-size:28px;}
.reference-home #services .service-editorial-head p {font-size:13px;}
.reference-home #services .service-editorial-head p br {display:none;}
.reference-home #services .service-editorial-grid {grid-template-columns:1fr;gap:12px;}
.reference-home #services .service-editorial-card {padding:22px;}
.reference-home #services .service-index {margin-bottom:16px;}
.reference-home #services .service-editorial-card h3 {font-size:20px;}
.reference-home #services .service-care-row {grid-template-columns:1fr;gap:12px;margin-top:12px;}
.reference-home #services .service-care-card {padding:20px;}
.reference-home #representative.representative-premium {padding:24px 0 48px;}
.reference-home #representative .representative-editorial {grid-template-columns:1fr;gap:28px;padding-top:36px;}
.reference-home #representative .representative-editorial-copy {grid-column:1;grid-row:1;}
.reference-home #representative .representative-editorial-copy h2 {font-size:27px;}
.reference-home #representative .profile-lead {font-size:14px;margin-top:20px;}
.reference-home #representative .profile-description {font-size:13px;}
.reference-home #representative .representative-portrait {grid-column:1;grid-row:2;justify-self:center;max-width:340px;}
.reference-home #representative .team-gallery-track {display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;justify-content:flex-start;padding-bottom:12px;}
.reference-home #representative .team-gallery-card {width:124px;flex:0 0 124px;}
}

/* Full-width FAQ list: existing typeface and palette retained. */
.reference-home #faq .faq-premium-layout {display:block;max-width:1040px;width:calc(100% - 64px);}
.reference-home #faq .faq-premium-intro {margin-bottom:32px;}
.reference-home #faq .faq-premium-list details {background:transparent;border-radius:0;}
.reference-home #faq .faq-premium-list summary {padding:22px 40px 22px 0;}
.reference-home #faq .faq-premium-list details p {padding:0 40px 25px 0;}
.reference-home #faq .faq-premium-list summary::before,.reference-home #faq .faq-premium-list summary::after {right:4px;}
@media(max-width:640px){
.reference-home #faq .faq-premium-layout {width:calc(100% - 40px);}
.reference-home #faq .faq-premium-intro {margin-bottom:26px;}
}

/* Owner-authored blog records, clearly distinguished from customer reviews. */
.reference-home #reviews .field-record-card {display:block;text-decoration:none;color:inherit;overflow:hidden;border-radius:16px;transition:transform .2s,border-color .2s;}
.reference-home #reviews .field-record-card:hover {transform:translateY(-4px);border-color:#9dc3f0;}
.reference-home #reviews .field-record-card .review-editorial-image {aspect-ratio:1/1;}
.reference-home #reviews .field-record-card .review-editorial-image img {width:100%;height:100%;object-fit:contain;}
.reference-home #reviews .field-record-card h3 {font-size:18px;line-height:1.6;word-break:keep-all;}
.field-record-link {display:inline-block;margin-top:18px;font-size:12px;font-weight:650;color:#2563eb;}

/* A restrained zoom inside the existing portrait frame. */
.reference-home #representative .profile-zoom {display:block;position:relative;width:100%;padding:0;overflow:hidden;border:0;background:transparent;cursor:zoom-in;appearance:none;}
.reference-home #representative .profile-zoom img {display:block;transition:transform .55s cubic-bezier(.22,.61,.36,1);transform-origin:50% 35%;}
.reference-home #representative .profile-zoom[aria-pressed="true"] {cursor:zoom-out;}
.reference-home #representative .profile-zoom[aria-pressed="true"] img {transform:scale(1.10);}
.reference-home #representative .profile-zoom:focus-visible {outline:3px solid #2563eb;outline-offset:4px;}
@media(hover:hover){.reference-home #representative .profile-zoom:not([aria-pressed="true"]):hover img {transform:scale(1.035);}}
@media(prefers-reduced-motion:reduce){.reference-home #representative .profile-zoom img {transition:none;}}

.reference-home #faq .faq-kicker {display:block;margin-bottom:12px;font-size:13px;line-height:1.5;font-weight:700;letter-spacing:.04em;color:#2563eb;}

.reference-home #faq .faq-answer-line {display:block;}
.reference-home #faq .faq-answer-line + .faq-answer-line {margin-top:9px;}
.reference-home #faq .faq-premium-list details p strong {font-weight:700;color:var(--brand-navy);}

.reference-home #consultation .consultation-actions {display:flex;justify-content:center;align-items:center;gap:12px;flex-wrap:wrap;margin-top:32px;}
.reference-home #consultation .consultation-pill {display:inline-flex;justify-content:center;align-items:center;gap:12px;min-height:46px;padding:13px 25px;border-radius:999px;font-size:13px;font-weight:650;line-height:1.5;text-decoration:none;transition:background .2s,box-shadow .2s;}
.reference-home #consultation .consultation-pill--primary {background:#2563eb;border:1px solid #2563eb;color:#fff;}
.reference-home #consultation .consultation-pill--primary:hover {background:#1d4ed8;box-shadow:0 5px 15px #2563eb20;}
.reference-home #consultation .consultation-pill--secondary {background:#fff;border:1px solid #d7e0eb;color:var(--brand-navy);}
.reference-home #consultation .consultation-pill--secondary:hover {background:#f3f8ff;}
@media(max-width:420px){.reference-home #consultation .consultation-pill {padding:12px 18px;font-size:12px;gap:9px;}.reference-home #consultation .consultation-actions {gap:10px;}}
