east-west-services{display:block;background:#fafaf8;color:#222120;font-family:var(--font-inter),Inter,system-ui,sans-serif;font-size:15px;line-height:1.6}
east-west-services *{box-sizing:border-box}east-west-services .ew-wrap{width:100%;max-width:1440px;margin-inline:auto;padding-inline:var(--gutter,clamp(20px,4.5vw,64px))}east-west-services [hidden]{display:none!important}east-west-services :is(h1,h2,h3,p,ul,ol,figure){margin:0}east-west-services :is(a,button,input,textarea,select){font:inherit}east-west-services a{color:inherit;text-underline-offset:4px}east-west-services button{cursor:pointer}east-west-services button:disabled{opacity:.6;cursor:wait}east-west-services :focus-visible{outline:2px solid #222120;outline-offset:4px}east-west-services :is(h1,h2,h3){font-family:var(--font-barlow),Barlow,sans-serif;font-weight:200;text-transform:uppercase;line-height:1.03;letter-spacing:3px}east-west-services h1{font-size:clamp(42px,5.3vw,76px);letter-spacing:4px}east-west-services h2{font-size:clamp(32px,3.1vw,48px)}east-west-services h3{font-size:24px;letter-spacing:1px;font-weight:400}.ew-hero{padding-block:62px 42px;display:grid;gap:18px}.ew-eyebrow{font:11px/1.5 var(--font-plex-mono),monospace;letter-spacing:2px;text-transform:uppercase;color:#6e6a66}.ew-lead{max-width:760px;color:#6e6a66;font-size:16px;line-height:1.65}.ew-service-section{background:#e9e6e1;border-block:1px solid #dedbd5}.ew-service-panel{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:56px;padding-block:32px}.ew-service-copy{display:grid;align-content:center;gap:18px;min-height:320px}.ew-service-copy h2{font-size:clamp(34px,3.5vw,50px);letter-spacing:4px}.ew-muted{color:#6e6a66}.ew-steps{list-style:none;display:grid;gap:8px;padding:0}.ew-steps li{display:flex;gap:16px;align-items:baseline}.ew-number{font:12px var(--font-plex-mono),monospace;color:#6e6a66}.ew-service-image{position:relative;aspect-ratio:5/3;overflow:hidden;background:#dedbd5;border-radius:6px}.ew-service-image img{width:100%;height:100%;object-fit:cover;display:block}.ew-image-note{position:absolute;top:12px;left:12px;background:rgba(250,250,248,.92);padding:4px 7px;font:10px var(--font-plex-mono),monospace;letter-spacing:1px}.ew-text-link{display:inline-flex;align-items:center;gap:10px;width:fit-content;min-height:44px;font:12px var(--font-plex-mono),monospace!important;text-transform:uppercase;letter-spacing:2px;text-decoration:none}.ew-text-link:hover{text-decoration:underline}.ew-selectors{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;padding-bottom:32px}.ew-selector{display:flex;flex-direction:column;justify-content:space-between;gap:14px;text-align:left;background:#fafaf8;color:#222120;border:1px solid #dedbd5;border-radius:6px;min-height:172px;padding:20px}.ew-selector:hover{border-color:#222120}.ew-selector[aria-selected=true]{background:#222120;color:#fafaf8;border-color:#222120}.ew-selector-top{display:flex;justify-content:space-between;font:11px var(--font-plex-mono),monospace;letter-spacing:1.5px}.ew-selector-title{font:300 clamp(22px,2.2vw,32px)/1.05 var(--font-barlow),Barlow,sans-serif;text-transform:uppercase;letter-spacing:1.5px}.ew-selector-sub{font-size:12px;line-height:1.45;opacity:.75}.ew-block{padding-block:64px}.ew-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.ew-button{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:12px 22px;border:1px solid #222120;background:#222120;color:#fafaf8!important;text-decoration:none;font-size:13px!important;font-weight:500!important;text-transform:uppercase;letter-spacing:.5px}.ew-button.secondary{background:#fff;color:#222120!important}.ew-button:hover{opacity:.85}.ew-proposed{display:inline-block;padding:3px 7px;border:1px dashed #263e65;color:#263e65;font:10px var(--font-plex-mono),monospace;letter-spacing:1px}.ew-breadcrumb{display:flex;flex-wrap:wrap;gap:10px;padding-top:24px;font:11px var(--font-plex-mono),monospace;letter-spacing:1px;text-transform:uppercase;color:#6e6a66}.ew-category-hero{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center;padding-block:32px 48px}.ew-category-copy{display:grid;gap:18px}.ew-category-hero .ew-service-image{aspect-ratio:3/2}.ew-section-title{display:flex;align-items:baseline;justify-content:space-between;gap:16px;padding-bottom:16px;border-bottom:1px solid #222120}.ew-offer{display:grid;grid-template-columns:40px 1fr auto;align-items:start;gap:22px;padding-block:22px;border-bottom:1px solid #dedbd5}.ew-offer-copy{display:grid;gap:8px}.ew-offer-copy p{max-width:640px}.ew-help-grid,.ew-process-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:24px}.ew-process-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.ew-help-grid article,.ew-process-grid article{display:grid;align-content:start;gap:10px}.ew-dark{background:#222120;color:#fafaf8;padding:32px;display:grid;gap:18px}.ew-dark .ew-muted{color:#d4d0ca}.ew-choice-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr));gap:10px}.ew-choice{display:grid;align-content:space-between;gap:12px;padding:20px;border:1px solid #6e6a66;color:inherit;text-decoration:none;min-height:140px}.ew-choice:first-child{background:#fafaf8;color:#222120}.ew-choice:hover{border-color:#fafaf8}.ew-choice strong{font:400 22px var(--font-barlow),sans-serif}.ew-other-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:16px}.ew-other{display:flex;align-items:center;gap:14px;padding:12px;border:1px solid #dedbd5;text-decoration:none}.ew-other img{width:64px;height:64px;object-fit:cover}.ew-other strong{font:400 18px var(--font-barlow),sans-serif;text-transform:uppercase}.ew-callout{padding:22px;border:1px solid #dedbd5;background:#e9e6e1}.ew-callout p+p{margin-top:8px}.ew-request{padding-block:28px 72px}.ew-request-heading{max-width:850px;display:grid;gap:14px;margin-block:28px 32px}.ew-form-grid{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:40px}.ew-form{display:grid;gap:30px}.ew-form fieldset{border:0;padding:0;min-width:0;display:grid;gap:16px}.ew-form legend{width:100%;padding-bottom:14px;font:11px var(--font-plex-mono),monospace;letter-spacing:2px;text-transform:uppercase}.ew-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.ew-field{display:grid;gap:7px;font-size:13px;font-weight:600}.ew-field input,.ew-field select,.ew-field textarea{min-height:48px;border:1px solid #dedbd5;background:#fff;padding:12px;font-size:15px;font-weight:400;max-width:100%;width:100%;border-radius:0}.ew-field textarea{resize:vertical;min-height:120px}.ew-full{grid-column:1/-1}.ew-chip-group{display:flex;flex-wrap:wrap;gap:8px}.ew-chip{display:flex;align-items:center;gap:8px;min-height:44px;padding:10px 14px;background:#fff;border:1px solid #dedbd5;font-size:14px}.ew-chip:has(input:checked){background:#222120;color:#fafaf8;border-color:#222120}.ew-chip input{accent-color:#222120}.ew-error{border-left:3px solid #a62913;background:#f3e7e3;padding:14px 18px;color:#8c1c00}.ew-form [aria-invalid=true]{border-color:#8c1c00}.ew-field-error{font-size:12px;color:#8c1c00;font-weight:400}.ew-context{align-self:start;position:sticky;top:110px;display:grid;gap:20px}.ew-context-card{border:1px solid #dedbd5;padding:20px;display:grid;gap:12px}.ew-context img{width:100%;aspect-ratio:5/3;object-fit:cover}.ew-context select{width:100%;min-height:44px;border:1px solid #dedbd5;padding:10px;background:#fff}.ew-context ol{list-style:none;padding:0;display:grid;gap:12px}.ew-context li{font-size:13px}.ew-summary{display:grid;gap:12px;padding:24px;border:1px solid #dedbd5;max-width:860px}.ew-summary dl{display:grid;gap:10px}.ew-summary dl>div{display:grid;grid-template-columns:140px 1fr;gap:16px;padding-block:8px;border-bottom:1px solid #dedbd5}.ew-summary dd{overflow-wrap:anywhere;white-space:pre-wrap}.ew-summary dt{color:#6e6a66}.ew-events-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:28px}.ew-event{border:1px solid #dedbd5;display:grid;align-content:start;gap:14px;padding:18px}.ew-event img{width:100%;aspect-ratio:3/2;object-fit:cover}.ew-preview{display:grid;gap:10px;overflow-wrap:anywhere}.ew-trap{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.ew-skeleton{height:260px;background:#e9e6e1;margin:32px auto;max-width:1280px}.ew-inline-status{min-height:24px;font-size:13px}.ew-spaced{margin-top:48px}.ew-mb{margin-bottom:48px}
@media(max-width:1000px){.ew-form-grid{grid-template-columns:minmax(0,1fr) 280px;gap:24px}.ew-process-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.ew-service-panel,.ew-category-hero{gap:32px}.ew-selector{padding:16px}}
@media(max-width:767px){.ew-hero{padding-block:32px}.ew-lead{font-size:14px}.ew-service-panel,.ew-category-hero{grid-template-columns:1fr;gap:24px;padding-block:28px}.ew-service-copy{min-height:0}.ew-service-copy h2{font-size:36px}.ew-selectors{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding-bottom:24px}.ew-selector{min-height:120px;padding:14px;gap:10px}.ew-selector-title{font-size:24px;letter-spacing:1px}.ew-selector-sub{display:none}.ew-block{padding-block:40px}.ew-offer{grid-template-columns:24px 1fr;gap:12px}.ew-offer>.ew-button{grid-column:2;justify-self:start}.ew-help-grid,.ew-process-grid{grid-template-columns:1fr;gap:20px}.ew-other-grid{grid-template-columns:1fr}.ew-form-grid{grid-template-columns:1fr}.ew-context{position:static;grid-row:1}.ew-context img{display:none}.ew-context>section:not(:first-child){display:none}.ew-context-card{padding:16px}.ew-fields{grid-template-columns:1fr}.ew-request-heading{margin-top:20px}.ew-summary dl>div{grid-template-columns:1fr;gap:4px}.ew-events-grid{grid-template-columns:1fr}.ew-dark{padding:24px}.ew-choice-grid{grid-template-columns:1fr}.ew-selector-top{font-size:10px;letter-spacing:1px}.ew-proposed{font-size:9px}.ew-spaced{margin-top:32px}}
@media(prefers-reduced-motion:no-preference){.ew-service-panel{animation:ew-service-in .2s ease}@keyframes ew-service-in{from{opacity:.65}to{opacity:1}}}
@media(max-width:767px){.ew-selector-title{font-size:clamp(15px,4.5vw,20px);letter-spacing:.5px;overflow-wrap:anywhere}.ew-context>section[data-class-preview]{display:block}}

/* ---------- Services intro: the Spaces & setups page conventions ---------- */
east-west-services .ew-services-hero { padding-block: 20px 24px; gap: 12px; }
east-west-services .ew-services-title { display: grid; gap: 12px; }
east-west-services .ew-services-hero .ew-eyebrow { font-size: 11px; letter-spacing: 1.5px; }
east-west-services .ew-services-hero h1 { font-size: 36px; font-weight: 200; line-height: .96; letter-spacing: 2px; }
east-west-services .ew-services-hero .ew-lead { max-width: 600px; font-size: 14px; line-height: 21px; }
east-west-services .ew-services-hero h1, .ew-services-first-screen .ew-service-copy h2, .ew-services-first-screen .ew-selector-title { text-transform: none; }
.ew-desktop-only { display: none; }

/* ---------- Shared service display ---------- */
.ew-service-short { color: #6e6a66; max-width: 640px; }
.ew-panel-label { margin: 0 0 10px !important; font: 400 11px/1.5 var(--font-plex-mono), monospace !important; letter-spacing: 2px !important; text-transform: uppercase; color: #6e6a66; }
/* Columns take their natural width and wrap when space runs out: no stretched gap. */
.ew-panel-details { display: flex; flex-wrap: wrap; align-items: flex-start; gap: 18px 48px; padding-top: 16px; border-top: 1px solid #d5d1ca; }
.ew-panel-details .ew-steps { gap: 6px; }
.ew-offer-list { list-style: none; padding: 0; display: grid; gap: 6px; }
.ew-offer-list li { position: relative; padding-left: 18px; }
.ew-offer-list li::before { content: ""; position: absolute; left: 0; top: .8em; width: 8px; border-top: 1px solid #222120; }

@media (max-width: 767px) {
  .ew-service-copy { gap: 14px; }
  .ew-panel-details { font-size: 14px; }
}

@media (min-width: 768px) {
  .ew-desktop-only { display: inline; }
  east-west-services .ew-services-hero { padding-block: 40px 28px; }
  east-west-services .ew-services-hero .ew-eyebrow { font-size: 12px; }
  east-west-services .ew-services-title { gap: 16px; }
  east-west-services .ew-services-hero h1 { font-size: clamp(48px, 4.4vw, 64px); letter-spacing: 4px; }
  east-west-services .ew-services-hero .ew-lead { max-width: 1040px; font-size: 17px; line-height: 27px; }

  /* The first desktop screen ends just below the four service choices. */
  .ew-services-first-screen { min-height: calc(100svh - var(--header-h-top, 64px) - 1px); display: flex; flex-direction: column; }
  .ew-services-first-screen .ew-service-section { flex: 1; display: flex; }
  .ew-services-first-screen .ew-service-section > .ew-wrap { display: flex; flex-direction: column; }
  .ew-services-first-screen [data-service-panel] { flex: 1; display: flex; }
  .ew-services-first-screen .ew-service-panel {
    width: 100%; padding-block: 28px; align-items: stretch;
    grid-template-columns: minmax(0, 1.12fr) minmax(0, .88fr); gap: 48px;
  }
  .ew-services-first-screen .ew-service-copy { min-height: 0; gap: 14px; align-content: center; }
  /* The image follows the copy's height instead of leaving gaps around it. */
  .ew-services-first-screen .ew-service-image { aspect-ratio: auto; min-height: 280px; }
  .ew-services-first-screen .ew-service-image img { position: absolute; inset: 0; }
  .ew-services-first-screen .ew-selectors { padding-bottom: 24px; }
}

@media (min-width: 1024px) {
  .ew-services-first-screen .ew-service-panel { gap: 64px; }
}

/* Mid-height desktops (1440x900 and similar): trim padding only. */
@media (min-width: 768px) and (min-height: 861px) and (max-height: 960px) {
  east-west-services .ew-services-hero { padding-block: 22px 16px; gap: 10px; }
  east-west-services .ew-services-title { gap: 12px; }
  .ew-services-first-screen .ew-service-panel { padding-block: 22px; }
  .ew-services-first-screen .ew-selectors { padding-bottom: 20px; }
  .ew-services-first-screen .ew-selector { min-height: 148px; }
}

/* Shorter desktop windows (1366x768 and similar): tighten space, not type. */
@media (min-width: 768px) and (max-height: 860px) {
  east-west-services .ew-services-hero { padding-block: 16px 14px; gap: 8px; }
  east-west-services .ew-services-title { gap: 8px; }
  east-west-services .ew-services-hero .ew-lead { font-size: 15px; line-height: 23px; }
  east-west-services .ew-services-hero h1 { font-size: clamp(44px, 3.8vw, 56px); }
  .ew-services-first-screen .ew-service-panel { padding-block: 20px; }
  .ew-services-first-screen .ew-service-copy { gap: 10px; }
  .ew-services-first-screen .ew-service-copy h2 { font-size: clamp(32px, 2.9vw, 42px); }
  .ew-services-first-screen .ew-service-short { font-size: 14px; line-height: 1.55; }
  .ew-services-first-screen .ew-panel-details { font-size: 14px; line-height: 1.5; padding-top: 12px; }
  .ew-services-first-screen .ew-panel-details .ew-steps, .ew-services-first-screen .ew-offer-list { gap: 3px; }
  .ew-services-first-screen .ew-text-link { min-height: 40px; }
  .ew-services-first-screen .ew-selectors { padding-bottom: 18px; }
  .ew-services-first-screen .ew-selector { min-height: 118px; padding: 16px; gap: 10px; }
  .ew-services-first-screen .ew-selector-title { font-size: 26px; }
}

/* ---------- Membership: the ongoing practice ---------- */
.ew-member-band { display: grid; gap: 24px; padding-top: 28px; border-top: 1px solid #dedbd5; }
.ew-member-overview { display: grid; grid-template-columns: minmax(220px, .85fr) minmax(0, 2fr); grid-template-areas: "photo intro" "photo benefits"; gap: 22px 36px; align-items: start; }
.ew-member-intro { grid-area: intro; display: grid; gap: 14px; }
.ew-member-overview > .ew-member-photo { grid-area: photo; }
.ew-benefit-highlights { grid-area: benefits; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 28px; }
east-west-services .ew-member-band h2 { font: 400 clamp(28px, 2.4vw, 34px)/1.18 var(--font-inter), Inter, sans-serif; letter-spacing: -.8px; text-transform: none; }
.ew-member-lead { color: #6e6a66; font-size: 15px; line-height: 1.65; max-width: 72ch; }
.ew-benefit-highlights article { display: grid; gap: 7px; align-content: start; border-top: 1px solid #dedbd5; padding-block: 16px; }
east-west-services .ew-benefit-highlights h3 { font: 600 12px/1.45 var(--font-inter), Inter, sans-serif; text-transform: uppercase; letter-spacing: .15px; }
.ew-benefit-highlights p { color: #6e6a66; font-size: 14px; line-height: 1.6; }
.ew-member-index { font: 10px/1.5 var(--font-plex-mono), monospace; color: #6e6a66; }
.ew-member-photo { margin: 0; min-width: 0; }
.ew-member-photo img { display: block; width: 100%; object-fit: cover; aspect-ratio: 1 / 1; }
.ew-member-photo figcaption { padding-top: 9px; color: #6e6a66; font: 9px/1.5 var(--font-plex-mono), monospace; letter-spacing: 1px; text-transform: uppercase; }
.ew-member-plan { display: grid; grid-template-columns: minmax(170px, .65fr) minmax(0, 1.65fr) minmax(180px, .7fr); gap: 24px; align-items: center; padding: 22px; background: #e9e6e1; }
.ew-member-plan-price, .ew-member-plan-description, .ew-member-plan-actions { display: grid; gap: 8px; min-width: 0; }
.ew-member-plan .ew-eyebrow { font-size: 9px; letter-spacing: 1.1px; }
.ew-member-price { display: flex; flex-wrap: wrap; gap: 5px 8px; align-items: baseline; }
.ew-member-price strong { font: 400 28px/1.2 var(--font-inter), Inter, sans-serif; letter-spacing: -.7px; }
.ew-member-price span { font-size: 12px; color: #6e6a66; }
.ew-member-plan .ew-member-price { display: grid; gap: 4px; }
.ew-member-plan-description > p { font-size: 13px; line-height: 1.55; }
.ew-member-plan-description strong { font-weight: 600; }
.ew-member-note { font-size: 12px; line-height: 1.6; color: #6e6a66; }
.ew-member-note a { text-decoration: underline; color: #222120; }
.ew-member-plan .ew-button { width: 100%; min-height: 44px; padding: 10px 16px; font-size: 12px !important; font-weight: 600 !important; text-transform: none; letter-spacing: 0; }
.ew-member-plan .ew-button.secondary { background: #fafaf8; border-color: #9e9991; }
.ew-member-support-note { padding-top: 2px; }

/* Existing service detail pages keep their connected membership callout. */
.ew-member-callout { display: grid; gap: 20px; padding-block: 24px; border-top: 1px solid #222120; border-bottom: 1px solid #dedbd5; }
.ew-member-callout > div:first-child { display: grid; gap: 10px; }
.ew-member-callout p:not(.ew-eyebrow) { max-width: 640px; color: #6e6a66; }
.ew-member-callout-actions { display: grid; gap: 12px; align-content: end; }

/* The full membership page is an editorial reading layout. */
east-west-services .ew-member-page { max-width: 1280px; padding-bottom: 0; }
east-west-services .ew-member-page :is(h1,h2,h3) { font-family: var(--font-inter), Inter, sans-serif; text-transform: none; font-weight: 500; letter-spacing: -.4px; line-height: 1.3; }
east-west-services .ew-member-page h1 { font-size: clamp(30px, 3vw, 42px); font-weight: 400; line-height: 1.12; letter-spacing: -1px; }
east-west-services .ew-member-page h2 { font-size: 24px; }
east-west-services .ew-member-page h3 { font-size: 16px; letter-spacing: -.2px; }
.ew-member-page .ew-breadcrumb { font: 12px/1.6 var(--font-inter), Inter, sans-serif; text-transform: none; letter-spacing: 0; padding-top: 24px; }
.ew-member-hero { display: grid; grid-template-columns: minmax(0, 1.9fr) minmax(240px, 1fr); gap: 48px; padding-block: 38px; }
.ew-member-hero-copy { display: grid; align-content: start; gap: 16px; padding-top: 4px; }
.ew-member-hero-copy > p:last-child { font-size: 14px; }
.ew-member-hero .ew-eyebrow { font-size: 10px; letter-spacing: 1.4px; }
.ew-member-hero .ew-member-photo img { aspect-ratio: 3 / 2; }
.ew-member-benefits { display: grid; gap: 10px; margin-block: 40px; }
.ew-member-section-heading { display: grid; gap: 4px; padding-bottom: 8px; }
.ew-member-section-heading p { color: #6e6a66; font-size: 14px; }
.ew-benefit-detail article { display: grid; grid-template-columns: 40px minmax(200px, .9fr) minmax(0, 2fr); gap: 24px; align-items: baseline; padding-block: 19px; border-bottom: 1px solid #dedbd5; }
.ew-benefit-detail article p { color: #6e6a66; font-size: 14px; line-height: 1.6; }
.ew-member-proposal { display: inline-flex; align-items: center; gap: 8px; width: fit-content; min-height: 44px; font-size: 13px !important; font-weight: 600 !important; text-decoration: none; }
.ew-member-proposal:hover { text-decoration: underline; }
.ew-member-allowance { display: grid; gap: 18px; padding: 28px; background: #222120; color: #fafaf8; }
east-west-services .ew-member-allowance .ew-eyebrow { font: 400 10px/1.5 var(--font-plex-mono), monospace; letter-spacing: 1.3px; text-transform: uppercase; color: #d4d0ca; }
.ew-member-allowance .ew-member-note { color: #bab6b1; }
.ew-member-metrics { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px; margin: 0; }
.ew-member-metrics > div { display: flex; flex-direction: column; gap: 2px; }
.ew-member-metrics dt { order: 2; font-size: 14px; color: #d4d0ca; }
.ew-member-metrics dd { margin: 0; font: 400 42px/1.2 var(--font-barlow), Barlow, sans-serif; }
.ew-member-rules { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 28px; padding-top: 18px; border-top: 1px solid #5a5651; }
.ew-member-rules article { display: grid; align-content: start; gap: 6px; }
east-west-services .ew-member-rules h3 { font-size: 14px; }
.ew-member-rules p { font-size: 13px; line-height: 1.6; color: #bab6b1; }
.ew-member-extras { display: grid; grid-template-columns: minmax(220px, 1fr) minmax(0, 2.5fr); gap: 32px; padding-block: 26px; border-bottom: 1px solid #dedbd5; }
east-west-services .ew-member-extras h2 { font-size: 17px; }
.ew-member-extras p { font-size: 14px; color: #6e6a66; }
.ew-member-use-cases { display: grid; grid-template-columns: minmax(200px, 1fr) minmax(0, 2.7fr); gap: 36px; padding-block: 36px; }
.ew-member-use-photo img { aspect-ratio: 6 / 5; object-position: center; }
.ew-member-use-cases ol { padding: 0; list-style: none; margin-block: 0 12px; }
.ew-member-use-cases li { display: grid; grid-template-columns: 22px minmax(0, 1fr); gap: 12px; border-bottom: 1px solid #dedbd5; padding-block: 14px; }
east-west-services .ew-member-use-cases h3 { font-size: 14px; }
.ew-member-use-cases li p { color: #6e6a66; font-size: 14px; margin-top: 5px; }
.ew-member-faq { display: grid; gap: 16px; margin-bottom: 32px; }
.ew-member-faq > div { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 28px; }
.ew-member-faq article { display: grid; align-content: start; gap: 7px; padding-block: 18px; border-top: 1px solid #dedbd5; }
east-west-services .ew-member-faq h3 { font-size: 15px; }
.ew-member-faq p { color: #6e6a66; font-size: 14px; line-height: 1.6; }
.ew-member-faq-wide { grid-column: 1 / -1; }
.ew-member-published-terms { border-top: 1px solid #dedbd5; padding-block: 24px; display: grid; gap: 12px; }
.ew-member-published-terms p { white-space: pre-wrap; overflow-wrap: anywhere; color: #6e6a66; font-size: 14px; }
.ew-member-ready { display: grid; grid-template-columns: minmax(190px, 1fr) minmax(0, 3fr); gap: 28px; background: #e9e6e1; padding: 22px; margin-bottom: 36px; }
east-west-services .ew-member-ready h2 { font-size: 17px; }
.ew-member-ready > div { display: grid; gap: 6px; }
.ew-member-ready p:not(.ew-member-note) { font-size: 14px; }
.ew-member-footer { display: flex; justify-content: space-between; align-items: center; gap: 20px; background: #222120; color: #fafaf8; padding: 18px 24px; }
.ew-member-footer a { min-height: 44px; display: inline-flex; align-items: center; gap: 6px; font-size: 12px !important; text-decoration: none; }
.ew-member-footer a:first-child { font-weight: 600; text-transform: uppercase; }
.ew-member-footer a:hover { text-decoration: underline; }

@media (min-width: 1024px) {
  .ew-member-callout { grid-template-columns: minmax(0, 1fr) minmax(280px, auto); gap: 48px; align-items: end; }
}
@media (min-width: 768px) and (max-width: 1023px) {
  .ew-member-overview { grid-template-columns: 240px minmax(0, 1fr); gap: 20px 28px; }
  .ew-benefit-highlights { grid-template-columns: 1fr; }
  .ew-member-plan { grid-template-columns: minmax(140px, .7fr) minmax(0, 1.2fr) 170px; gap: 16px; padding: 18px; }
  .ew-member-hero { gap: 28px; grid-template-columns: minmax(0, 1.5fr) minmax(200px, 1fr); }
  .ew-benefit-detail article { grid-template-columns: 22px minmax(150px, .9fr) minmax(0, 1.7fr); gap: 16px; }
}
@media (max-width: 767px) {
  .ew-member-band { gap: 24px; padding-top: 24px; }
  .ew-member-overview { grid-template-columns: minmax(0, 1fr); grid-template-areas: "intro" "photo" "benefits"; gap: 24px; }
  .ew-benefit-highlights { grid-template-columns: 1fr; }
  .ew-member-photo img { aspect-ratio: 3 / 2; }
  .ew-member-plan { grid-template-columns: minmax(0, 1fr); gap: 16px; padding: 20px; align-items: start; }
  .ew-member-price strong { font-size: 26px; }
  .ew-member-plan-actions { gap: 10px; }
  .ew-member-plan-actions .ew-member-note { margin-top: 2px; }
  .ew-member-plan-price .ew-eyebrow { font-size: 10px; }
  .ew-member-hero { grid-template-columns: minmax(0, 1fr); gap: 24px; padding-block: 28px; }
  .ew-member-hero-copy { gap: 14px; }
  .ew-member-hero-copy > p:last-child { font-size: 14px; }
  east-west-services .ew-member-page h1 { font-size: 30px; }
  east-west-services .ew-member-page h2 { font-size: 22px; }
  .ew-member-benefits { margin-block: 30px; }
  .ew-benefit-detail article { grid-template-columns: minmax(0, 1fr); gap: 7px; padding-block: 18px; }
  .ew-benefit-detail article > .ew-member-index { display: none; }
  .ew-member-allowance { padding: 22px; gap: 18px; }
  .ew-member-rules { grid-template-columns: minmax(0, 1fr); gap: 18px; }
  .ew-member-extras { grid-template-columns: minmax(0, 1fr); gap: 10px; padding-block: 24px; }
  .ew-member-use-cases { grid-template-columns: minmax(0, 1fr); gap: 24px; padding-block: 28px; }
  .ew-member-use-photo img { aspect-ratio: 3 / 2; }
  .ew-member-use-cases li { padding-block: 16px; }
  .ew-member-faq > div { grid-template-columns: minmax(0, 1fr); }
  .ew-member-faq-wide { grid-column: auto; }
  .ew-member-ready { grid-template-columns: minmax(0, 1fr); gap: 12px; padding: 20px; margin-bottom: 28px; }
  east-west-services .ew-member-extras h2, east-west-services .ew-member-ready h2 { font-size: 17px; }
  .ew-member-footer { padding: 12px 16px; }
}
/* Very short desktop windows (1280x720): compact the selector cards and intro. */
@media (min-width: 768px) and (max-height: 740px) {
  east-west-services .ew-services-hero { padding-block: 16px 14px; }
  .ew-services-first-screen .ew-service-panel { padding-block: 16px; }
  .ew-services-first-screen .ew-selectors { padding-bottom: 14px; }
  .ew-services-first-screen .ew-selector { min-height: 100px; padding: 14px 16px; gap: 6px; }
  .ew-services-first-screen .ew-selector-title { font-size: 24px; }
}
.ew-member-note a { text-decoration: underline; color: #222120; }

/* Long offer lists (Photography) flow into two short columns on desktop so the
   description can stay under the title without pushing the cards below the fold. */
@media (min-width: 1024px) {
  .ew-services-first-screen .ew-offer-list-long { grid-template-columns: repeat(2, max-content); column-gap: 28px; }
}


/* Service detail guidance, shared by the live page and staff preview. */
.ew-service-guidance{display:grid;grid-template-columns:minmax(0,.83fr) minmax(0,1fr);gap:clamp(32px,6.3vw,78px);background:#e9e6e1;padding:clamp(24px,5.8vw,72px);margin-inline:calc(-1 * var(--gutter,clamp(20px,4.5vw,64px)))}
east-west-services .ew-guidance-label{font:400 13px/1.5 var(--font-plex-mono),monospace;letter-spacing:2px;color:#6e6a66;text-transform:uppercase;padding-bottom:24px;border-bottom:1px solid #cfcbc5}
.ew-guidance-help article{padding:22px 0 26px;border-bottom:1px solid #cfcbc5}.ew-guidance-help article:last-child{border-bottom:0}
east-west-services .ew-guidance-help h3{font:400 28px/1.3 var(--font-barlow),sans-serif;letter-spacing:0;text-transform:none;margin-bottom:8px}
.ew-service-guidance p{font-size:18px;line-height:1.65;color:#6e6a66}
.ew-guidance-process{list-style:none;padding:0;display:grid}.ew-guidance-process li{display:grid;grid-template-columns:54px minmax(0,1fr);gap:24px;padding:19px 0 22px;border-bottom:1px solid #cfcbc5}.ew-guidance-process li:last-child{border-bottom:0}.ew-guidance-process .ew-number{font-size:13px;line-height:1.8;padding-top:3px}
east-west-services .ew-guidance-process h3{font:500 20px/1.4 var(--font-inter),Inter,sans-serif;letter-spacing:0;text-transform:none}
@media(max-width:767px){.ew-service-guidance{grid-template-columns:1fr;gap:32px;padding:28px 20px}.ew-service-guidance p{font-size:15px}.ew-guidance-process li{grid-template-columns:28px minmax(0,1fr);gap:14px}.ew-guidance-process h3{font-size:17px}.ew-guidance-help h3{font-size:24px}.ew-guidance-label{font-size:11px;padding-bottom:16px}}

.ew-action-arrow{display:inline-block;vertical-align:middle;flex-shrink:0}
