.coastal {
  --coast-content-max: 1376px; --coast-gutter: 52px;
  --coast-page-inset: max(var(--coast-gutter), calc((100vw - var(--coast-content-max)) / 2));
  --coast-paper: #f8f8f5; --coast-ivory: #e4edf5; --coast-ink: #102e50;
  --coast-blue: #0d47a1; --coast-accent: #2ab3ff; --coast-muted: #526781; --coast-line: #cad9e8;
  --coast-font: 'DM Sans', sans-serif; --coast-display: 'Instrument Serif', Georgia, serif;
  --blue: var(--coast-blue); --blue-deep: #0a397d; --navy: var(--coast-ink); --sky: var(--coast-ivory);
  --sky-2: #eef4fa; --wave: #a9c9e8; --ink: var(--coast-ink); --slate: var(--coast-muted);
  --line: var(--coast-line); --white: var(--coast-paper); --font-body: var(--coast-font);
  --font-display: var(--coast-display); --radius: 0; --shadow: none;
  background: var(--coast-paper); color: var(--coast-ink);
  font: 400 16px/1.65 var(--coast-font); overflow-x: clip;
}
.coastal h1,.coastal h2,.coastal h3 { font-weight: 400; line-height: 1.1; }
.coastal h1 { font-size: clamp(46px,5vw,75px); }
.coastal h2 { font-size: clamp(38px,4vw,64px); }
.coastal h3 { font-size: 28px; }
.coastal a { color: inherit; }
.coastal img { display: block; max-width: 100%; }
.coastal a:focus-visible,.coastal button:focus-visible,.coastal input:focus-visible,.coastal textarea:focus-visible,.coastal summary:focus-visible {
  outline: 2px solid var(--coast-blue); outline-offset: 4px;
}
.coastal .skip-link { left: 18px; top: -100px; padding: 12px 18px; color: var(--coast-paper); background: var(--coast-ink); }
.coastal .skip-link:focus { top: 12px; left: 18px; }
.coastal .visually-hidden { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
.coastal .container,.coastal .coast-container,.coastal .coast-header-inner { width: min(calc(100% - 2 * var(--coast-gutter)), var(--coast-content-max)); max-width: var(--coast-content-max); padding-inline: 0; margin-inline: auto; }
.coastal .coast-eyebrow { color: var(--coast-blue); font: 700 11px/1.4 var(--coast-font); letter-spacing: .19em; text-transform: uppercase; margin: 0; }
.coastal .coast-display { font-family: var(--coast-display); font-weight: 400; letter-spacing: -.027em; line-height: .99; margin: 0; }
.coastal .coast-text-link { display: inline-flex; align-items: center; gap: 10px; text-decoration: none; border-bottom: 1px solid currentColor; padding-bottom: 5px; font-size: 13px; font-weight: 700; letter-spacing: .025em; transition: gap .25s ease, opacity .25s ease; }
.coastal .coast-text-link:hover { gap: 17px; opacity: .75; }
.coastal .coast-button { min-height: 53px; padding: 13px 24px; display: inline-flex; align-items: center; justify-content: center; gap: 16px; text-decoration: none; font: 700 13px/1.4 var(--coast-font); letter-spacing: .015em; border: 1px solid var(--coast-blue); border-radius: 0; cursor: pointer; transition: transform .25s ease, background .25s ease; }
.coastal .coast-button:hover { transform: translateY(-2px); }
.coastal .coast-button-primary { background: var(--coast-blue); color: #fff; }
.coastal .coast-button-primary:hover { background: var(--blue-deep); color: #fff; }
.coastal .btn { border-radius: 0; font-size: 13px; }
.coastal .btn-solid { background: var(--coast-ink); }
.coastal .btn-ghost { border-color: var(--coast-ink); color: var(--coast-ink); }

.coastal .coast-header { height: 106px; background: var(--coast-paper); border-bottom: 1px solid var(--coast-line); position: relative; z-index: 20; }
.coastal .coast-header-inner { height: 100%; display: flex; align-items: center; gap: 38px; }
.coastal .coast-brand { flex: 0 0 auto; display: block; }
.coastal .coast-brand img { width: 202px; height: auto; max-height: 81px; object-fit: contain; }
.coastal .coast-nav { margin-left: auto; display: flex; align-items: center; gap: clamp(13px,1.9vw,33px); }
.coastal .coast-nav a { text-decoration: none; font-size: 12px; font-weight: 600; white-space: nowrap; transition: color .2s ease; }
.coastal .coast-nav a:hover,.coastal .coast-nav a[aria-current] { color: var(--coast-blue); }
.coastal .coast-nav .coast-nav-portal { border-bottom: 1px solid var(--coast-line); padding-bottom: 3px; }
.coastal .coast-header-phone { background: var(--coast-blue); color: #fff; display: inline-flex; align-items: center; justify-content: center; padding: 12px 15px; text-decoration: none; font-size: 12px; font-weight: 700; white-space: nowrap; }
.coastal .coast-header-phone:hover { color: #fff; background: var(--blue-deep); }
.coastal .coast-menu-button { display: none; border: 1px solid var(--coast-line); border-radius: 0; background: transparent; color: var(--coast-ink); height: 43px; width: 43px; flex-direction: column; align-items: center; justify-content: center; gap: 5px; cursor: pointer; }
.coastal .coast-menu-button span { width: 21px; height: 1.5px; background: currentColor; transition: transform .2s ease; }
.coastal .coast-menu-button[aria-expanded="true"] span:first-child { transform: translateY(6.5px) rotate(45deg); }
.coastal .coast-menu-button[aria-expanded="true"] span:nth-child(2) { opacity: 0; }
.coastal .coast-menu-button[aria-expanded="true"] span:last-child { transform: translateY(-6.5px) rotate(-45deg); }

.coastal .coast-hero { min-height: 685px; display: grid; grid-template-columns: minmax(0,47%) minmax(0,53%); background: #f1f5f9; }
.coastal .coast-hero-content { padding: clamp(65px,7vw,118px) 7.4% 75px var(--coast-page-inset); display: flex; flex-direction: column; align-items: flex-start; position: relative; z-index: 1; }
.coastal .coast-hero-content .coast-eyebrow { margin-bottom: 31px; }
.coastal .coast-hero h1 { max-width: 690px; font-size: clamp(58px,5.25vw,88px); }
.coastal .coast-hero h1 em { font-weight: 400; color: var(--coast-blue); }
.coastal .coast-hero-lede { max-width: 480px; margin: 31px 0 0; color: var(--coast-muted); font-size: clamp(15px,1.13vw,17px); line-height: 1.8; }
.coastal .coast-hero-actions { display: flex; align-items: center; gap: 22px; flex-wrap: wrap; margin-top: 34px; }
.coastal .coast-hero-visual { min-height: 685px; position: relative; background: #8fa8ab; }
.coastal .coast-hero-visual::after { content: ''; position: absolute; inset: 0; background: linear-gradient(90deg,rgba(14,38,45,.07),transparent 38%),linear-gradient(0deg,rgba(13,35,42,.27),transparent 34%); pointer-events: none; }
.coastal .coast-hero-visual > img { width: 100%; height: 100%; object-fit: cover; object-position: 50% 76%; position: absolute; inset: 0; }
.coastal .coast-image-caption { position: absolute; bottom: 32px; right: 40px; z-index: 2; display: flex; align-items: center; gap: 12px; color: #f6f5ee; font-size: 10px; font-weight: 700; letter-spacing: .18em; text-transform: uppercase; }
.coastal .coast-image-caption::before { content: ''; width: 25px; height: 1px; background: currentColor; }
.coastal .coast-trust { background: #064683; color: #e9f2fc; }
.coastal .coast-trust-inner { min-height: 122px; display: flex; align-items: center; }
.coastal .coast-trust p { max-width: 950px; margin: 0; font-size: clamp(15px,1.32vw,18px); line-height: 1.6; }
.coastal .coast-trust strong { color: #fff9ee; font-weight: 600; }
.coastal .coast-services { padding: 135px 0 145px; }
.coastal .coast-services-layout { display: grid; grid-template-columns: 39% 1fr; gap: 8%; }
.coastal .coast-section-intro .coast-eyebrow { margin-bottom: 28px; }
.coastal .coast-section-intro h2 { font-size: clamp(49px,4.3vw,73px); max-width: 540px; }
.coastal .coast-section-intro > p:not(.coast-eyebrow) { color: var(--coast-muted); max-width: 435px; font-size: 15px; line-height: 1.85; margin: 28px 0 0; }
.coastal .coast-service-list { border-top: 1px solid var(--coast-line); }
.coastal .coast-service { display: grid; grid-template-columns: 48px 1fr; gap: 18px; border-bottom: 1px solid var(--coast-line); padding: 28px 0 31px; }
.coastal .coast-service-num { color: #567da7; padding-top: 7px; font-size: 12px; letter-spacing: .08em; }
.coastal .coast-service h3 { font-family: var(--coast-display); font-size: clamp(29px,2.45vw,39px); line-height: 1.12; max-width: 510px; letter-spacing: -.02em; margin: 0; }
.coastal .coast-service p { color: var(--coast-muted); max-width: 490px; margin: 12px 0 15px; font-size: 14px; line-height: 1.75; }
.coastal .coast-service .coast-text-link { font-size: 12px; }
.coastal .coast-principles { background: var(--coast-ivory); display: grid; grid-template-columns: minmax(0,44%) minmax(0,56%); min-height: 810px; }
.coastal .coast-principles-image { min-height: 810px; position: relative; background: #9eaca9; }
.coastal .coast-principles-image img { width: 100%; height: 100%; object-fit: cover; position: absolute; inset: 0; }
.coastal .coast-principles-image::after { content: ''; position: absolute; inset: 0; background: linear-gradient(0deg,rgba(20,44,50,.26),transparent 45%); }
.coastal .coast-principles-image .coast-image-caption { left: 54px; right: auto; }
.coastal .coast-principles-content { padding: 100px var(--coast-page-inset) 100px 10%; }
.coastal .coast-principles-content .coast-eyebrow { margin-bottom: 27px; }
.coastal .coast-principles h2 { font-size: clamp(48px,4.25vw,70px); max-width: 680px; margin-bottom: 43px; }
.coastal .coast-feature { display: grid; grid-template-columns: 34px 1fr; gap: 19px; border-top: 1px solid #c0d2e5; padding: 19px 0 20px; }
.coastal .coast-feature:last-child { border-bottom: 1px solid #c0d2e5; }
.coastal .coast-feature > span { color: #436b98; font-size: 11px; padding-top: 6px; }
.coastal .coast-feature h3 { font-family: var(--coast-display); font-size: 28px; line-height: 1.13; margin: 0; }
.coastal .coast-feature p { color: var(--coast-muted); font-size: 13px; max-width: 530px; margin: 5px 0 0; line-height: 1.7; }
.coastal .coast-team { padding: 132px 0 140px; }
.coastal .coast-team-layout { display: grid; grid-template-columns: minmax(0,1.15fr) minmax(300px,.8fr); gap: clamp(48px,8vw,128px); align-items: center; }
.coastal .coast-team-head { display: block; margin: 0; }
.coastal .coast-team-head .coast-eyebrow { margin-bottom: 23px; }
.coastal .coast-team h2 { font-size: clamp(53px,5vw,80px); }
.coastal .coast-team-description { max-width: 500px; color: var(--coast-muted); font-size: 16px; line-height: 1.8; margin: 25px 0 0; }
.coastal .coast-team-grid { display: grid; grid-template-columns: repeat(4,1fr); border-left: 1px solid var(--coast-line); }
.coastal .coast-team-grid.coast-team-featured { grid-template-columns: minmax(0,1fr); width: 100%; max-width: 390px; justify-self: center; }
.coastal .coast-team-member { min-height: 290px; border-right: 1px solid var(--coast-line); border-top: 1px solid var(--coast-line); border-bottom: 1px solid var(--coast-line); padding: 23px 23px 27px; display: flex; flex-direction: column; }
.coastal .coast-team-index { font-size: 11px; color: #6784a3; }
.coastal .coast-team-monogram { font: 400 70px/1 var(--coast-display); color: #8baed2; margin: auto 0 24px; }
.coastal .coast-team-photo { display: block; width: 100%; height: auto; aspect-ratio: 1; object-fit: cover; object-position: center 25%; margin: 18px 0 24px; }
.coastal .about-intro { display: grid; grid-template-columns: minmax(0, 1fr) minmax(240px, 340px); align-items: center; gap: clamp(32px, 6vw, 96px); }
.coastal .about-office-video { display: block; width: 100%; height: auto; aspect-ratio: 9 / 16; max-height: 605px; object-fit: contain; background: var(--coast-ink); }
.coastal .about-office-video:focus-visible { outline: 3px solid var(--coast-ink); outline-offset: 5px; }
@media (max-width: 760px) {
  .coastal .about-intro { grid-template-columns: 1fr; gap: 32px; }
  .coastal .about-office-video { max-width: 340px; justify-self: center; }
}
.coastal .coast-team-member h3 { font-family: var(--coast-display); font-size: 28px; line-height: 1.05; margin: 0; }
.coastal .coast-team-member p { color: var(--coast-muted); font-size: 12px; margin: 8px 0 0; line-height: 1.45; }
.coastal .coast-team-link { margin-top: 32px; }

.coastal .coast-contact { background: #064683; color: #f4f8ff; border-top: 4px solid var(--coast-accent); padding: 110px 0 120px; }
.coastal .coast-contact-grid { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,.92fr); gap: clamp(60px,10vw,175px); align-items: start; }
.coastal .coast-contact h2 { color: inherit; font-size: clamp(65px,6.1vw,98px); }
.coastal .coast-contact-lede { max-width: 485px; font-size: 17px; line-height: 1.8; margin: 29px 0 0; }
.coastal .coast-contact-lede a,.coastal .coast-contact-details a { text-underline-offset: 4px; }
.coastal .coast-contact-promise { border-top: 1px solid rgba(237,243,238,.34); border-bottom: 1px solid rgba(237,243,238,.34); margin: 36px 0 35px; padding: 17px 0; font-size: 14px; }
.coastal .coast-contact-promise strong { color: #fff; }
.coastal .coast-contact-details { list-style: none; padding: 0; margin: 0; display: grid; gap: 9px; font-size: 13px; color: #dfedfb; }
.coastal .coast-contact-details strong { display: inline-block; min-width: 76px; color: #fff; font-weight: 600; }
.coastal .coast-contact-areas { max-width: 480px; color: #c6dff4; font-size: 12px; margin: 29px 0 0; line-height: 1.8; }
.coastal .coast-form { background: #f6f9fc; color: var(--coast-ink); padding: clamp(29px,4vw,54px); }
.coastal .coast-form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 19px; }
.coastal .coast-field { margin-bottom: 22px; }
.coastal .coast-field label { display: block; font-size: 11px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; margin-bottom: 8px; }
.coastal .coast-field input,.coastal .coast-field textarea { display: block; width: 100%; min-height: 45px; border: 0; border-bottom: 1px solid #abc0d4; border-radius: 0; background: transparent; padding: 9px 0; color: var(--coast-ink); font: 400 14px/1.5 var(--coast-font); resize: vertical; }
.coastal .coast-field textarea { min-height: 93px; }
.coastal .coast-form button { width: 100%; margin-top: 1px; }
.coastal .form-note { color: var(--coast-muted); font-size: 11px; line-height: 1.65; margin: 18px 0 0; }
.coastal .form-status { font-size: 12px; margin: 11px 0 0; min-height: 0; }
.coastal .form-status:empty { display: none; }
.coastal .form-status.is-success { color: #176138; }
.coastal .form-status.is-error { color: #b3261e; }
.coastal .hp-field { position: absolute; left: -9999px; width: 1px; height: 1px; opacity: 0; }
.coastal .coast-footer { background: #0b376b; color: #dbe9f8; padding: 80px 0 32px; }
.coastal .coast-footer-grid { display: grid; grid-template-columns: 1.4fr 1fr 1fr .65fr; gap: 50px; }
.coastal .coast-footer-mark { width: 60px; height: 60px; object-fit: contain; filter: brightness(0) invert(1); margin-bottom: 18px; }
.coastal .coast-footer .coast-footer-name { max-width: 230px; color: #f5f5eb; font-family: var(--coast-display); font-size: 27px; line-height: 1.12; margin: 0; }
.coastal .coast-footer-tag { max-width: 255px; margin: 13px 0 16px; color: #c5dcf1; font-size: 12px; line-height: 1.6; }
.coastal .coast-footer h2 { color: #a6defc; font: 700 11px/1.4 var(--coast-font); letter-spacing: .16em; text-transform: uppercase; margin: 0 0 19px; }
.coastal .coast-footer p,.coastal .coast-footer address,.coastal .coast-footer li { font-size: 12px; line-height: 1.9; font-style: normal; }
.coastal .coast-footer a { text-decoration: none; }
.coastal .coast-footer a:hover { text-decoration: underline; text-underline-offset: 4px; }
.coastal .coast-footer-col p + p { margin-top: 15px; }
.coastal .coast-footer ul { list-style: none; padding: 0; margin: 0; }
.coastal .coast-footer-bottom { border-top: 1px solid #3f6590; margin-top: 72px; padding-top: 22px; display: flex; gap: 30px; justify-content: space-between; color: #bfd3e8; }
.coastal .coast-footer-bottom p { font-size: 10px; max-width: 570px; margin: 0; }

/* Inner pages retain their existing content and grids, with the shared coastal palette and type. */
.coastal .container.narrow > p { max-width: 860px; }
.coastal .page-hero { background: #f1f5f9; padding: 80px 0 65px; }
.coastal .page-hero h1 { max-width: 950px; }
.coastal .page-hero .lede { color: var(--coast-muted); }
.coastal .section { padding: 85px 0; }
.coastal .service-editorial-photo { max-width: 960px; margin: 48px 0 0; }
.coastal .service-editorial-photo--portrait { max-width: 480px; }
.coastal .service-editorial-photo img { display: block; width: 100%; height: auto; }
.coastal .therapy-services-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(20px, 3vw, 40px); }
.coastal .adhd-services-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); row-gap: 48px; }
.coastal .adhd-services-grid .therapy-service-image { aspect-ratio: 12 / 5; }
.coastal .therapy-service-card { min-width: 0; }
.coastal .therapy-service-image { display: block; width: 100%; aspect-ratio: 890 / 400; object-fit: cover; margin-bottom: 22px; }
.coastal .therapy-service-card h2 { font-size: clamp(30px, 2.35vw, 38px); line-height: 1.15; margin: 0 0 12px; }
.coastal .therapy-service-card p { color: var(--coast-muted); font-size: 14px; line-height: 1.75; margin: 0; }
.coastal .section-head .kicker { color: var(--coast-blue); letter-spacing: .19em; text-transform: uppercase; font-size: 11px; }
.coastal .card,.coastal .clinician { background: transparent; border-radius: 0; box-shadow: none; }
.coastal .therapy-program-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 20px; }
.coastal .therapy-program { background: #e9f2fa; border: 1px solid var(--coast-line); padding: clamp(24px,3vw,40px); }
.coastal .therapy-program h3 { font-family: var(--coast-display); font-size: clamp(28px,2.5vw,38px); margin: 0 0 15px; }
.coastal .therapy-program p { color: var(--coast-muted); font-size: 14px; line-height: 1.8; margin: 0 0 23px; }
.coastal .feature h3 { font-family: var(--coast-display); font-weight: 400; font-size: 28px; }
.coastal .brief-program-image { display: block; width: 100%; height: auto; margin-bottom: 22px; }
.coastal .testing-diagnoses-layout { display: grid; grid-template-columns: minmax(0, 1.6fr) minmax(0, 1fr); gap: clamp(32px, 5vw, 72px); align-items: start; }
.coastal .testing-diagnoses-copy h2 { font-size: clamp(38px, 3.4vw, 56px); margin: 0; }
.coastal .testing-diagnoses-copy .check-list { margin: 28px 0 0; font-size: 14px; }
.coastal .testing-diagnoses-image { display: block; width: 100%; height: auto; }
.coastal .evaluation-options-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 48px; align-items: start; }
.coastal .evaluation-options-grid .service-block { min-width: 0; padding: 24px 0 0; border-top: 1px solid var(--coast-line); border-bottom: 0; }
.coastal .evaluation-options-grid h2 { font-size: clamp(30px, 2.6vw, 38px); line-height: 1.15; margin-bottom: 14px; }
.coastal .avatar { border-radius: 0; font-weight: 400; }
.coastal .chips li { border-radius: 0; }
.coastal .faq-item,.coastal .map-wrap { border-radius: 0; box-shadow: none; }
.coastal .contact-grid .map-wrap { align-self: start; }
.coastal .callout { border-radius: 0; }

@media (max-width: 760px) {
  .coastal .testing-diagnoses-layout { grid-template-columns: 1fr; }
  .coastal .evaluation-options-grid { grid-template-columns: 1fr; gap: 32px; }
}
@media (max-width: 1180px) {
  .coastal { --coast-gutter: 32px; }
  .coastal .coast-header { height: 90px; }
  .coastal .coast-brand img { width: 168px; }
  .coastal .coast-nav { gap: 13px; }
  .coastal .coast-nav a { font-size: 11px; }
  .coastal .coast-header-phone { display: none; }
  .coastal .coast-hero-content { padding-right: 7%; }
  .coastal .coast-contact-grid { gap: 65px; }
}
@media (max-width: 900px) {
  .coastal { --coast-gutter: 22px; }
  .coastal .therapy-services-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .coastal .coast-header { height: 84px; }
  .coastal .coast-brand img { width: 165px; }
  .coastal .coast-menu-button { display: inline-flex; margin-left: auto; }
  .coastal .coast-nav { display: none; position: absolute; top: 100%; left: 0; right: 0; background: var(--coast-paper); margin: 0; padding: 12px var(--coast-page-inset) 22px; border-bottom: 1px solid var(--coast-line); box-shadow: 0 16px 28px rgba(21,45,51,.12); }
  .coastal .coast-nav.is-open { display: flex; flex-direction: column; align-items: stretch; gap: 0; }
  .coastal .coast-nav a { display: block; font-size: 15px; padding: 9px 0; }
  .coastal .coast-nav .coast-nav-portal { border: 0; padding: 9px 0; }
  .coastal .coast-header-phone { display: inline-flex; }
  .coastal .coast-hero { grid-template-columns: 1fr; }
  .coastal .coast-hero-content { padding: 72px var(--coast-page-inset) 78px; }
  .coastal .coast-hero h1 { max-width: 750px; }
  .coastal .coast-hero-visual { min-height: 430px; }
  .coastal .coast-trust-inner { padding-block: 25px; }
  .coastal .coast-services { padding: 95px 0; }
  .coastal .coast-services-layout { grid-template-columns: 1fr; gap: 52px; }
  .coastal .coast-section-intro > p:not(.coast-eyebrow) { max-width: 650px; }
  .coastal .coast-principles { grid-template-columns: 1fr; }
  .coastal .coast-principles-image { min-height: 450px; }
  .coastal .coast-principles-content { padding: 85px var(--coast-page-inset) 90px; }
  .coastal .coast-team { padding: 95px 0; }
  .coastal .coast-team-layout { grid-template-columns: minmax(0,1fr) minmax(270px,.8fr); gap: 36px; }
  .coastal .coast-team-member:nth-child(n+3) { border-top: 0; }
  .coastal .coast-contact-grid { grid-template-columns: 1fr; gap: 55px; }
  .coastal .coast-contact { padding: 85px 0; }
  .coastal .coast-footer-grid { grid-template-columns: repeat(2,1fr); }
}
@media (max-width: 600px) {
  .coastal { --coast-gutter: 19px; }
  .coastal .therapy-services-grid { grid-template-columns: 1fr; }
  .coastal .therapy-program-grid { grid-template-columns: 1fr; }
  .coastal .coast-header { height: 75px; }
  .coastal .coast-brand img { width: 148px; }
  .coastal .coast-header-phone { display: none; }
  .coastal .coast-hero-content { padding: 62px var(--coast-page-inset) 65px; }
  .coastal .coast-hero-content .coast-eyebrow { margin-bottom: 25px; }
  .coastal .coast-hero h1 { font-size: clamp(54px,14vw,74px); }
  .coastal .coast-hero-lede { margin-top: 25px; font-size: 15px; }
  .coastal .coast-hero-actions { gap: 19px; align-items: stretch; flex-direction: column; margin-top: 29px; width: 100%; }
  .coastal .coast-hero-actions .coast-button { width: 100%; }
  .coastal .coast-hero-actions .coast-text-link { align-self: flex-start; }
  .coastal .coast-hero-visual { min-height: 360px; }
  .coastal .coast-image-caption { right: 19px; bottom: 19px; }
  .coastal .coast-trust-inner { padding-block: 27px; }
  .coastal .coast-trust p { font-size: 14px; }
  .coastal .coast-services { padding: 78px 0 88px; }
  .coastal .coast-services-layout { gap: 44px; }
  .coastal .coast-section-intro h2 { font-size: 52px; }
  .coastal .coast-section-intro > p:not(.coast-eyebrow) { font-size: 14px; margin-top: 20px; }
  .coastal .coast-service { grid-template-columns: 29px 1fr; gap: 8px; padding: 24px 0 27px; }
  .coastal .coast-service h3 { font-size: 31px; }
  .coastal .coast-principles-image { min-height: 355px; }
  .coastal .coast-principles-image .coast-image-caption { left: 20px; }
  .coastal .coast-principles-content { padding: 76px var(--coast-page-inset) 83px; }
  .coastal .coast-principles h2 { font-size: 52px; }
  .coastal .coast-feature { gap: 9px; }
  .coastal .coast-feature h3 { font-size: 26px; }
  .coastal .coast-team { padding: 78px 0 90px; }
  .coastal .coast-team-layout { grid-template-columns: 1fr; gap: 40px; }
  .coastal .coast-team h2 { font-size: 64px; }
  .coastal .coast-team-description { font-size: 14px; }
  .coastal .coast-team-grid.coast-team-featured { justify-self: center; max-width: 390px; }
  .coastal .coast-team-member { min-height: 230px; padding: 16px 12px; }
  .coastal .coast-team-monogram { font-size: 53px; margin-bottom: 21px; }
  .coastal .coast-team-member h3 { font-size: 24px; }
  .coastal .coast-team-member p { font-size: 11px; }
  .coastal .coast-contact { padding: 74px 0 85px; }
  .coastal .coast-contact h2 { font-size: 76px; }
  .coastal .coast-contact-lede { font-size: 15px; }
  .coastal .coast-contact-grid { gap: 42px; }
  .coastal .coast-form { padding: 30px 20px; }
  .coastal .coast-form-row { grid-template-columns: 1fr; gap: 0; }
  .coastal .coast-footer { padding-top: 65px; }
  .coastal .coast-footer-grid { grid-template-columns: 1fr 1fr; gap: 38px 20px; }
  .coastal .coast-footer-brand { grid-column: 1 / -1; }
  .coastal .coast-footer-bottom { flex-direction: column; margin-top: 51px; gap: 11px; }
}
@media (prefers-reduced-motion: reduce) {
  .coastal,.coastal *,.coastal *::before,.coastal *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; }
}