/* ==========================================================================
   Hawthorne Psychiatry  |  Hawthorne Mental Health LLC
   Every class is prefixed haw-. Every selector is scoped to a root we own:
   .haw-page (page body), .haw-hd (header), .haw-ft (footer), .haw-drawer.
   Never add a bare element selector to this file.
   ========================================================================== */

/* --------------------------------------------------------------------------
   0. FONTS, self-hosted
   Cormorant Garamond and Inter from the brand board, served from this site
   rather than from Google. A Google Fonts link hands every visitor's IP
   address to a third party on every page view, which is the same reason
   there is no embedded map. Both are variable fonts, so one file per style
   covers every weight. SIL Open Font License, see fonts/OFL.txt.
   -------------------------------------------------------------------------- */
@font-face{font-family:'Cormorant Garamond';font-style:italic;font-weight:400 700;font-display:swap;
  src:url(../fonts/cormorant-garamond-italic-latin-ext.woff2?v=d4b577745e) format('woff2');
  unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Cormorant Garamond';font-style:italic;font-weight:400 700;font-display:swap;
  src:url(../fonts/cormorant-garamond-italic-latin.woff2?v=b0fa095eb2) format('woff2');
  unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Cormorant Garamond';font-style:normal;font-weight:400 700;font-display:swap;
  src:url(../fonts/cormorant-garamond-normal-latin-ext.woff2?v=e1f7cd8203) format('woff2');
  unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Cormorant Garamond';font-style:normal;font-weight:400 700;font-display:swap;
  src:url(../fonts/cormorant-garamond-normal-latin.woff2?v=ec4225ec16) format('woff2');
  unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Inter';font-style:normal;font-weight:400 700;font-display:swap;
  src:url(../fonts/inter-normal-latin-ext.woff2?v=01ba6c2a18) format('woff2');
  unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Inter';font-style:normal;font-weight:400 700;font-display:swap;
  src:url(../fonts/inter-normal-latin.woff2?v=65850a373e) format('woff2');
  unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}

/* --------------------------------------------------------------------------
   1. TOKENS
   Contrast measured against every background each colour actually sits on.
   Do not hardcode a hex below this block.
   -------------------------------------------------------------------------- */
:root{
  /* ----------------------------------------------------------------------
     Taken from the client's brand board, then gated. The six board colours
     are used exactly as supplied. Three extra tokens are DERIVED from them,
     not invented, because two of the six fail as text and the brand colour
     is not the thing to change: the text on it is.
     ---------------------------------------------------------------------- */

  /* board, unchanged */
  --haw-green:#153B2E;    /* FOREST GREEN  12.38:1 on white   headings, links, buttons */
  --haw-sage:#8FAE98;     /* SAGE GREEN    2.42:1 on white = FAILS as text.
                             Background and decoration only. Charcoal on sage
                             is 5.34:1, so sage may back a tile with dark text. */
  --haw-gold:#BA9839;     /* GOLD          2.75:1 on white = FAILS as text, and
                             2.75:1 as a hairline = FAILS as a UI edge.
                             BACKGROUND AND DECORATION ONLY. White on this gold
                             is 2.75:1; labels on it must be --haw-onGold. */
  --haw-cream:#F6F5F2;    /* IVORY         warm page tint */
  --haw-stone:#E7E2DA;    /* STONE         neutral, borders and panels */
  --haw-ink:#24352F;      /* CHARCOAL      12.92:1 on white   strong text */

  /* derived, each one for a job a board colour could not do legibly */
  --haw-green-d:#0E281F;  /* forest -32%   white on it is 15.65:1   deep panel */
  --haw-green-m:#647A6A;  /* sage -30%     4.63:1 on white   large text, icons */
  --haw-green-l:#E9EFEA;  /* sage +80%     body on it is 5.90:1   section tint */
  --haw-gold-l:#CDB570;   /* gold +28%     6.15:1 on forest   text on dark */
  --haw-gold-d:#866D29;   /* gold -28%     4.96:1 white, 4.55:1 ivory  small text */
  --haw-text:#505D59;     /* charcoal +20% 6.88:1 on white   comfortable body */
  --haw-onGold:#24352F;   /* charcoal      4.70:1 on gold. The ONLY label colour
                             allowed on a gold background. */
  --haw-line:#EBE6E0;     /* stone +15%    hairline on white, decorative */
  --haw-line-d:#3F5E54;   /* forest +18%   hairline on the dark panel */

  /* Small radii on purpose: large rounded corners on every box were a big
     part of what made the site read as a template. */
  --haw-r-lg:6px;
  --haw-r-md:4px;
  --haw-r-sm:3px;
  --haw-sh:0 2px 4px rgba(21,59,46,.04),0 12px 30px rgba(21,59,46,.07);
  --haw-sh-lift:0 4px 8px rgba(21,59,46,.05),0 22px 48px rgba(21,59,46,.11);
  /* Board typography: Cormorant Garamond for headings, Inter for body and UI. */
  --haw-ff-head:'Cormorant Garamond',Garamond,Georgia,'Times New Roman',serif;
  --haw-ff-body:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Helvetica,Arial,sans-serif;
}

/* --------------------------------------------------------------------------
   2. SHARED RESET
   Repeated across every root we own. The page root alone is not enough:
   the header, the footer and the drawer sit outside .haw-page.
   -------------------------------------------------------------------------- */
.haw-page,.haw-hd,.haw-ft,.haw-drawer{box-sizing:border-box}
.haw-page *,.haw-hd *,.haw-ft *,.haw-drawer *,
.haw-page *::before,.haw-hd *::before,.haw-ft *::before,.haw-drawer *::before,
.haw-page *::after,.haw-hd *::after,.haw-ft *::after,.haw-drawer *::after{box-sizing:border-box}

.haw-page ul,.haw-page ol,.haw-hd ul,.haw-ft ul,.haw-drawer ul{margin:0;padding:0;list-style:none}
.haw-page a,.haw-hd a,.haw-ft a,.haw-drawer a{text-decoration:none}
.haw-page img,.haw-hd img,.haw-ft img,.haw-drawer img{max-width:100%;display:block;height:auto}
.haw-page svg,.haw-hd svg,.haw-ft svg,.haw-drawer svg{display:block}
/* This reset is element+class, so it scores 0,1,1 and OUT-RANKS any single
   class that styles a button. `font:inherit` is a shorthand, so it resets the
   family, the size and the weight together. Every component rule below that
   sets type on a <button> therefore DOUBLES ITS CLASS to reach 0,2,0. Miss
   that and the control silently renders in the body face at the inherited
   size, which looks almost right and is very easy to ship. */
.haw-page button,.haw-hd button,.haw-ft button,.haw-drawer button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}

/* [hidden] only gets display:none from the user agent stylesheet, which any
   author display value outranks. Without these guards a hidden overlay stays
   at inset:0 with live pointer events and silently swallows every click. */
.haw-page [hidden],.haw-hd [hidden],.haw-ft [hidden],
.haw-drawer[hidden],.haw-drawer [hidden]{display:none !important}

.haw-page:focus-visible,.haw-page a:focus-visible,.haw-page button:focus-visible,
.haw-page input:focus-visible,.haw-page select:focus-visible,.haw-page textarea:focus-visible,
.haw-hd a:focus-visible,.haw-hd button:focus-visible,
.haw-ft a:focus-visible,.haw-ft button:focus-visible,
.haw-drawer a:focus-visible,.haw-drawer button:focus-visible{
  outline:3px solid var(--haw-gold-d);outline-offset:3px;border-radius:4px}

.haw-sr{position:absolute !important;width:1px;height:1px;padding:0;margin:-1px;
  overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}

.haw-skip{position:absolute;left:-9999px;top:0;z-index:2000;background:var(--haw-green-d);
  color:#fff;padding:12px 20px;border-radius:0 0 var(--haw-r-sm) 0;font:600 15px/1 var(--haw-ff-body)}
.haw-skip:focus{left:0}

/* --------------------------------------------------------------------------
   3. PAGE BASE
   -------------------------------------------------------------------------- */
.haw-page{font-family:var(--haw-ff-body);font-size:17px;line-height:1.75;
  color:var(--haw-text);background:#fff;
  /* `overflow-x:hidden` would make this a scroll container: the spec computes
     the other axis from `visible` to `auto`, so the page grew a SECOND vertical
     scrollbar inside the real one and became hard to scroll. `clip` contains
     horizontal overflow the same way WITHOUT creating a scroll container.
     Every decorative overflow is also contained by its own section, so a
     browser that drops `clip` still behaves. */
  overflow-x:clip;
  -webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}

.haw-page h1,.haw-page h2,.haw-page h3,.haw-page h4,
.haw-ft h2,.haw-ft h3{
  font-family:var(--haw-ff-head);color:var(--haw-green);font-weight:600;
  letter-spacing:0;line-height:1.14;margin:0 0 .55em;text-wrap:balance}
.haw-page h1{font-size:clamp(2.65rem,5.4vw,4.2rem);letter-spacing:-.5px;line-height:1.04}
.haw-page h2{font-size:clamp(2.05rem,3.7vw,3.05rem);letter-spacing:-.3px}
.haw-page h3{font-size:clamp(1.32rem,2.1vw,1.6rem);letter-spacing:-.1px;font-weight:600}
.haw-page h4{font-size:1.18rem}
.haw-page p{margin:0 0 1.05rem}
.haw-page p:last-child{margin-bottom:0}
.haw-page strong{color:var(--haw-ink);font-weight:600}
.haw-page .haw-prose p{max-width:68ch}
.haw-page a{color:var(--haw-green)}
.haw-page .haw-prose a{text-decoration:underline;text-underline-offset:3px;
  text-decoration-thickness:1px;text-decoration-color:var(--haw-gold)}
.haw-page .haw-prose a:hover{text-decoration-color:var(--haw-green)}

.haw-wrap{max-width:1180px;margin:0 auto;padding:0 24px;width:100%}
.haw-wrap-n{max-width:900px;margin:0 auto;padding:0 24px;width:100%}
.haw-sec{padding:96px 0}
.haw-sec-t{padding:96px 0 0}
.haw-tint{background:var(--haw-green-l)}
.haw-warm{background:var(--haw-cream)}

.haw-eyebrow{display:inline-flex;align-items:center;gap:10px;font:600 12.5px/1 var(--haw-ff-body);
  letter-spacing:.16em;text-transform:uppercase;color:var(--haw-gold-d);margin:0 0 18px}
.haw-eyebrow::before{content:"";width:26px;height:2px;background:var(--haw-gold);border-radius:2px;flex:none}
.haw-eyebrow-c{justify-content:center}
.haw-lede{font-size:clamp(1.06rem,1.5vw,1.2rem);line-height:1.72;color:var(--haw-text);max-width:62ch}
.haw-center{text-align:center}
.haw-center .haw-lede{margin-left:auto;margin-right:auto}
.haw-head{max-width:720px;margin:0 0 54px}
.haw-head.haw-center{margin-left:auto;margin-right:auto}

/* --------------------------------------------------------------------------
   4. BUTTONS
   Every variant doubles its class so it reaches 0,2,0 and beats .haw-page a
   (0,1,1). Without that the base link colour wins and the label disappears.
   -------------------------------------------------------------------------- */
.haw-btn.haw-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;
  font:600 15.5px/1 var(--haw-ff-body);letter-spacing:.01em;padding:16px 28px;
  border-radius:999px;border:2px solid transparent;cursor:pointer;text-align:center;
  transition:transform .18s ease,box-shadow .18s ease,background .18s ease,color .18s ease,border-color .18s ease}
.haw-btn svg{width:17px;height:17px;flex:none;color:currentColor}
.haw-btn:hover{transform:translateY(-2px)}

.haw-btn.haw-btn-gold{background:var(--haw-gold);color:var(--haw-onGold);
  box-shadow:0 8px 20px rgba(201,162,39,.32)}
.haw-btn.haw-btn-gold:hover{background:#D8B03A;box-shadow:0 12px 26px rgba(201,162,39,.4)}

.haw-btn.haw-btn-green{background:var(--haw-green);color:#fff;
  box-shadow:0 8px 20px rgba(27,75,58,.24)}
.haw-btn.haw-btn-green:hover{background:var(--haw-green-d);box-shadow:0 12px 26px rgba(27,75,58,.3)}

.haw-btn.haw-btn-ghost{background:transparent;color:var(--haw-green);border-color:var(--haw-line)}
.haw-btn.haw-btn-ghost:hover{border-color:var(--haw-green);background:var(--haw-green-l)}

.haw-btn.haw-btn-onDark{background:#fff;color:var(--haw-green-d)}
.haw-btn.haw-btn-onDark:hover{background:var(--haw-gold-l);color:var(--haw-onGold)}

.haw-btn.haw-btn-ghostDark{background:transparent;color:#fff;border-color:rgba(255,255,255,.34)}
.haw-btn.haw-btn-ghostDark:hover{border-color:var(--haw-gold-l);color:var(--haw-gold-l)}

.haw-btns{display:flex;flex-wrap:wrap;gap:14px;margin-top:32px}
.haw-center .haw-btns{justify-content:center}

.haw-tlink{display:inline-flex;align-items:center;gap:9px;font:600 15px/1 var(--haw-ff-body);
  color:var(--haw-green);transition:gap .18s ease}
.haw-tlink svg{width:15px;height:15px;color:currentColor;transition:transform .18s ease}
.haw-tlink:hover{gap:13px}
.haw-tlink:hover svg{transform:translateX(3px)}

/* --------------------------------------------------------------------------
   5. LINE ICONS
   pathLength="1" normalises every path, so one dash value fits every icon.
   The DRAWN state is the default. Anything that stops the animation, reduced
   motion, print, a screenshot harness, then leaves the icon visible rather
   than leaving the page covered in empty circles.
   -------------------------------------------------------------------------- */
/* A default size matters here. Without one .haw-ico is a grid box with no
   intrinsic width, so inside a flex parent it stretches and the glyph becomes
   enormous. Every sized context below overrides this; nothing relies on the
   stretch. */
/* The size lives on a single class so that .haw-ico-round and every sized
   context below can still override it. Only `display` is doubled to 0,2,0,
   because that is the declaration a bare element selector was stealing, and
   losing it silently un-centres the glyph inside its circle. */
.haw-ico{flex:none;width:22px;height:22px}
.haw-ico.haw-ico{display:grid;place-items:center}
.haw-ico svg{width:100%;height:100%}
.haw-btn .haw-ico{width:17px;height:17px}
.haw-crisis-l .haw-ico{width:19px;height:19px;margin-top:2px}
.haw-tlink .haw-ico{width:15px;height:15px}
.haw-ico svg > *{
  stroke:var(--haw-gold-d);stroke-width:1.6;fill:none;
  stroke-linecap:round;stroke-linejoin:round;
  stroke-dasharray:1;stroke-dashoffset:0}
.haw-rv:not(.haw-vis) .haw-ico svg > *{stroke-dashoffset:1}
.haw-vis .haw-ico svg > *{animation:haw-draw 1.1s cubic-bezier(.6,.05,.2,1) forwards}
@keyframes haw-draw{to{stroke-dashoffset:0}}

.haw-ico-round{width:54px;height:54px;border-radius:50%;background:#fff;
  border:1px solid var(--haw-line);box-shadow:0 3px 10px rgba(19,51,42,.06)}
.haw-ico-round svg{width:26px;height:26px}
.haw-ico-dark svg > *{stroke:var(--haw-gold-l)}

/* --------------------------------------------------------------------------
   6. REVEAL ON SCROLL
   -------------------------------------------------------------------------- */
.haw-rv{opacity:0;transform:translateY(22px);
  transition:opacity .72s cubic-bezier(.22,.61,.36,1),transform .72s cubic-bezier(.22,.61,.36,1)}
.haw-rv.haw-vis{opacity:1;transform:none}
.haw-d1{transition-delay:.08s}.haw-d2{transition-delay:.16s}.haw-d3{transition-delay:.24s}
.haw-d4{transition-delay:.32s}.haw-d5{transition-delay:.4s}.haw-d6{transition-delay:.48s}

/* --------------------------------------------------------------------------
   7. HEADER
   -------------------------------------------------------------------------- */
.haw-hd{position:sticky;top:0;z-index:900;font-family:var(--haw-ff-body);
  background:rgba(255,255,255,.94);backdrop-filter:saturate(1.6) blur(14px);
  -webkit-backdrop-filter:saturate(1.6) blur(14px);
  border-bottom:1px solid var(--haw-line);transition:box-shadow .25s ease}
.haw-hd.haw-hd-stuck{box-shadow:0 6px 26px rgba(19,51,42,.09)}

.haw-topbar{background:var(--haw-green-d);color:#fff;font-size:13.5px;line-height:1.5}
.haw-topbar-in{max-width:1180px;margin:0 auto;padding:9px 24px;display:flex;
  align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap}
.haw-topbar a{color:var(--haw-gold-l);font-weight:600}
.haw-topbar a:hover{color:#fff}
.haw-topbar-l,.haw-topbar-r{display:flex;align-items:center;gap:8px;min-width:0}
.haw-topbar svg{width:15px;height:15px;stroke:var(--haw-gold-l);stroke-width:1.7;fill:none;
  stroke-linecap:round;stroke-linejoin:round;flex:none}
.haw-topbar-sep{opacity:.4;padding:0 2px}

.haw-hd-in{max-width:1180px;margin:0 auto;padding:0 24px;height:82px;
  display:flex;align-items:center;justify-content:space-between;gap:24px}

.haw-logo{display:flex;align-items:center;gap:13px;flex:none}
.haw-logo-mk{width:44px;height:44px;flex:none}
.haw-logo-tx{display:flex;flex-direction:column;line-height:1.1}
.haw-logo-tx b{font:600 25px/1 var(--haw-ff-head);color:var(--haw-green);letter-spacing:-.2px}
.haw-logo-tx span{font:600 9.5px/1 var(--haw-ff-body);letter-spacing:.3em;
  text-transform:uppercase;color:var(--haw-gold-d);margin-top:5px}

.haw-nav{display:flex;align-items:center;gap:4px}
.haw-nav a{position:relative;display:block;white-space:nowrap;padding:10px 13px;border-radius:var(--haw-r-sm);
  font:500 15px/1 var(--haw-ff-body);color:var(--haw-ink);transition:color .18s ease,background .18s ease}
.haw-nav a::after{content:"";position:absolute;left:13px;right:13px;bottom:4px;height:2px;
  background:var(--haw-gold);border-radius:2px;transform:scaleX(0);transform-origin:left;
  transition:transform .22s ease}
.haw-nav a:hover{color:var(--haw-green)}
.haw-nav a:hover::after{transform:scaleX(1)}
.haw-nav a.haw-on{color:var(--haw-green);font-weight:600}
.haw-nav a.haw-on::after{transform:scaleX(1)}

.haw-hd-cta{display:flex;align-items:center;gap:10px;flex:none}
.haw-hd-cta .haw-btn.haw-btn{padding:13px 22px;font-size:14.5px}

.haw-burger{display:none;width:46px;height:46px;border-radius:var(--haw-r-sm);
  border:1px solid var(--haw-line);place-items:center;flex:none;background:#fff}
.haw-burger span{display:block;width:20px;height:2px;background:var(--haw-ink);border-radius:2px;
  position:relative;transition:background .2s ease}
.haw-burger span::before,.haw-burger span::after{content:"";position:absolute;left:0;width:20px;
  height:2px;background:var(--haw-ink);border-radius:2px;transition:transform .24s ease,top .2s ease}
.haw-burger span::before{top:-6px}
.haw-burger span::after{top:6px}
.haw-burger.haw-open span{background:transparent}
.haw-burger.haw-open span::before{top:0;transform:rotate(45deg)}
.haw-burger.haw-open span::after{top:0;transform:rotate(-45deg)}

/* Drawer. Note the [hidden] guard in the reset block above: this element is
   fixed and full height, so without it an invisible panel would cover the page. */
.haw-drawer{position:fixed;inset:0;z-index:1200;font-family:var(--haw-ff-body)}
.haw-drawer-bd{position:absolute;inset:0;background:rgba(14,46,36,.5);opacity:0;
  transition:opacity .3s ease}
.haw-drawer-pn{position:absolute;top:0;right:0;bottom:0;width:min(370px,86vw);background:#fff;
  box-shadow:-18px 0 50px rgba(19,51,42,.22);transform:translateX(100%);
  transition:transform .34s cubic-bezier(.4,0,.2,1);display:flex;flex-direction:column;
  overflow-y:auto;-webkit-overflow-scrolling:touch}
.haw-drawer.haw-open .haw-drawer-bd{opacity:1}
.haw-drawer.haw-open .haw-drawer-pn{transform:none}
.haw-drawer-hd{display:flex;align-items:center;justify-content:space-between;
  padding:20px 22px;border-bottom:1px solid var(--haw-line)}
.haw-drawer-x{width:42px;height:42px;border-radius:50%;border:1px solid var(--haw-line);
  display:grid;place-items:center}
.haw-drawer-x svg{width:17px;height:17px;stroke:var(--haw-ink);stroke-width:1.9;fill:none;stroke-linecap:round}
.haw-drawer-nav{padding:14px 12px;flex:1}
.haw-drawer-nav a{display:flex;align-items:center;justify-content:space-between;
  padding:15px 14px;border-radius:var(--haw-r-md);font:500 17px/1.2 var(--haw-ff-body);
  color:var(--haw-ink);border-bottom:1px solid var(--haw-line)}
.haw-drawer-nav a:last-child{border-bottom:0}
.haw-drawer-nav a.haw-on{color:var(--haw-green);font-weight:600;background:var(--haw-green-l)}
.haw-drawer-nav a svg{width:14px;height:14px;stroke:var(--haw-gold-d);stroke-width:1.8;fill:none;
  stroke-linecap:round;stroke-linejoin:round;opacity:.65}
.haw-drawer-ft{padding:18px 22px 26px;border-top:1px solid var(--haw-line);
  background:var(--haw-cream);display:grid;gap:10px}
.haw-drawer-ft .haw-btn{width:100%}
.haw-drawer-ft small{display:block;text-align:center;color:var(--haw-text);font-size:12.5px;margin-top:4px}

/* --------------------------------------------------------------------------
   8. HERO  (split: copy one side, name plate the other)
   -------------------------------------------------------------------------- */
.haw-hero{position:relative;overflow:hidden;background:
  radial-gradient(900px 520px at 88% -10%,rgba(201,162,39,.16),transparent 62%),
  radial-gradient(760px 620px at 6% 106%,rgba(27,75,58,.09),transparent 60%),
  linear-gradient(180deg,var(--haw-cream) 0%,#fff 78%)}
.haw-hero-bg{position:absolute;inset:0;pointer-events:none;opacity:.34;overflow:hidden}
.haw-hero-bg img,.haw-hero-bg svg{position:absolute;right:-120px;top:-80px;width:520px;height:520px}
.haw-hero-in{position:relative;display:grid;grid-template-columns:1.06fr .94fr;
  gap:66px;align-items:center;padding:86px 0 96px}
.haw-hero-copy h1{margin-bottom:22px}
.haw-hero-copy h1 em{font-style:normal;color:var(--haw-green);position:relative;white-space:nowrap}
.haw-hero-copy h1 em::after{content:"";position:absolute;left:0;right:0;bottom:.07em;height:.26em;
  background:var(--haw-gold);opacity:.3;border-radius:3px;z-index:-1}
.haw-hero-note{display:flex;align-items:flex-start;gap:11px;margin-top:34px;
  padding:14px 18px;background:#fff;border:1px solid var(--haw-line);border-radius:var(--haw-r-md);
  font-size:14.5px;line-height:1.6;max-width:470px;box-shadow:var(--haw-sh)}
.haw-hero-note .haw-ico{width:20px;height:20px;margin-top:2px}
.haw-hero-note .haw-ico svg{width:20px;height:20px}

/* name plate: an honest stand-in until a real photograph exists */
.haw-plate{position:relative;border-radius:var(--haw-r-lg);overflow:hidden;
  background:linear-gradient(158deg,var(--haw-green) 0%,var(--haw-green-d) 100%);
  padding:46px 38px 34px;color:#fff;box-shadow:var(--haw-sh-lift)}
.haw-plate-bg{position:absolute;inset:0;opacity:.2;pointer-events:none}
.haw-plate-bg img,.haw-plate-bg svg{position:absolute;right:-70px;bottom:-80px;width:330px;height:330px}
.haw-plate-in{position:relative}
/* Real portrait. The source is a true 4:5 portrait, so a circular frame has to
   crop height rather than width: object-position pulls the crop up to the face
   instead of centring on the chest. Tune the percentage against a screenshot,
   never by eye in the markup. */
.haw-portrait{width:172px;height:172px;border-radius:50%;margin:0 auto 22px;position:relative;
  overflow:hidden;border:2px solid rgba(232,199,102,.55);
  box-shadow:0 14px 34px rgba(0,0,0,.3)}
.haw-portrait img{width:100%;height:100%;object-fit:cover;object-position:center 16%}
.haw-portrait-lg{width:100%;max-width:none;height:auto;aspect-ratio:4/5;border-radius:var(--haw-r-lg);
  margin:0;border:0;box-shadow:var(--haw-sh-lift)}
.haw-portrait-lg img{object-position:center 14%}
.haw-plate h2{color:#fff;font-size:1.62rem;margin:0 0 6px;text-align:center;letter-spacing:-.5px}
.haw-plate-role{text-align:center;font:600 11.5px/1.5 var(--haw-ff-body);letter-spacing:.17em;
  text-transform:uppercase;color:var(--haw-gold-l);margin:0 0 22px}
.haw-plate-l{list-style:none;margin:0;padding:22px 0 0;border-top:1px solid var(--haw-line-d);display:grid;gap:13px}
.haw-plate-l li{display:flex;align-items:flex-start;gap:11px;font-size:14.8px;line-height:1.55;
  color:rgba(255,255,255,.9)}
.haw-plate-l .haw-ico{width:19px;height:19px;margin-top:2px}
.haw-plate-l .haw-ico svg{width:19px;height:19px}
.haw-plate-l .haw-ico svg > *{stroke:var(--haw-gold-l)}

/* compact hero for inner pages */
.haw-phero{position:relative;overflow:hidden;padding:74px 0 66px;background:
  radial-gradient(720px 420px at 84% -20%,rgba(201,162,39,.15),transparent 62%),
  linear-gradient(180deg,var(--haw-cream) 0%,#fff 100%);
  border-bottom:1px solid var(--haw-line)}
.haw-phero-in{position:relative;max-width:760px}
.haw-phero h1{margin-bottom:18px}
.haw-crumb{display:flex;align-items:center;gap:9px;font-size:13.5px;color:var(--haw-text);margin:0 0 20px}
.haw-crumb a{color:var(--haw-green);font-weight:500}
.haw-crumb a:hover{text-decoration:underline;text-underline-offset:3px}
.haw-crumb span{opacity:.5}

/* --------------------------------------------------------------------------
   9. QUICK FACTS STRIP  (hairline dividers, no boxes)
   -------------------------------------------------------------------------- */
.haw-facts{border-top:1px solid var(--haw-line);border-bottom:1px solid var(--haw-line);
  background:#fff}
.haw-facts-g{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}
.haw-facts-g > div{padding:32px 26px;border-right:1px solid var(--haw-line);
  display:flex;align-items:flex-start;gap:14px}
.haw-facts-g > div:last-child{border-right:0}
.haw-facts-g .haw-ico{width:28px;height:28px;margin-top:3px}
.haw-facts-g .haw-ico svg{width:28px;height:28px}
.haw-facts-g b{display:block;font:600 15.5px/1.35 var(--haw-ff-body);color:var(--haw-ink);margin-bottom:3px}
.haw-fact-v{display:block;font-size:14px;line-height:1.55;color:var(--haw-text)}

/* --------------------------------------------------------------------------
   10. EDITORIAL TWO COLUMN  (heading left, unboxed prose right)
   -------------------------------------------------------------------------- */
.haw-ed{display:grid;grid-template-columns:.86fr 1.14fr;gap:70px;align-items:start}
.haw-ed-l{position:sticky;top:120px}
.haw-ed-l h2{margin-bottom:18px}
.haw-ed-r > p{font-size:1.06rem}
.haw-sig{margin-top:30px;padding-top:26px;border-top:1px solid var(--haw-line)}
.haw-sig b{display:block;font:600 19px/1.25 var(--haw-ff-head);color:var(--haw-ink);letter-spacing:-.3px}
.haw-sig span{display:block;font-size:13.5px;color:var(--haw-gold-d);font-weight:600;
  letter-spacing:.1em;text-transform:uppercase;margin-top:5px}

/* --------------------------------------------------------------------------
   11. STATEMENT / QUOTE BAND  (full width, once per page)
   -------------------------------------------------------------------------- */
.haw-quote{position:relative;overflow:hidden;background:var(--haw-green-d);color:#fff;
  padding:92px 0;text-align:center}
.haw-quote-bg{position:absolute;inset:0;opacity:.16;pointer-events:none}
.haw-quote-bg img,.haw-quote-bg svg{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);
  width:620px;height:620px}
.haw-quote-in{position:relative;max-width:860px;margin:0 auto;padding:0 24px}
.haw-quote-mk{width:44px;height:44px;margin:0 auto 26px}
.haw-quote-mk svg > *{stroke:var(--haw-gold-l);stroke-width:1.4}
.haw-quote blockquote{margin:0;font-family:var(--haw-ff-head);font-weight:400;font-style:italic;
  font-size:clamp(1.42rem,3vw,2.1rem);line-height:1.42;letter-spacing:-.5px;color:#fff;
  text-wrap:balance}
.haw-quote cite{display:block;font-style:normal;margin-top:26px;font:600 12.5px/1.5 var(--haw-ff-body);
  letter-spacing:.17em;text-transform:uppercase;color:var(--haw-gold-l)}

/* --------------------------------------------------------------------------
   12. SOFT TINTED TILES  (no borders, round icons)
   -------------------------------------------------------------------------- */
.haw-tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.haw-tiles-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.haw-tile{background:var(--haw-green-l);border-radius:var(--haw-r-lg);padding:34px 30px;
  transition:transform .26s ease,box-shadow .26s ease,background .26s ease}
.haw-tile:hover{transform:translateY(-4px);background:#fff;box-shadow:var(--haw-sh-lift)}
.haw-tile .haw-ico-round{margin-bottom:20px}
.haw-tile h3{margin-bottom:10px}
.haw-tile p{font-size:15.3px;line-height:1.68;margin:0}
.haw-tile-gold{background:var(--haw-cream)}

/* --------------------------------------------------------------------------
   13. JOURNEY  (icon dots joined by a line; vertical spine on phones)
   -------------------------------------------------------------------------- */
.haw-jny{position:relative;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:26px}
.haw-jny::before{content:"";position:absolute;left:8%;right:8%;top:33px;height:2px;
  background:linear-gradient(90deg,transparent,rgba(21,59,46,.18) 12%,rgba(21,59,46,.18) 88%,transparent)}
.haw-jny-s{position:relative;text-align:center}
.haw-jny-dot{width:66px;height:66px;border-radius:50%;background:#fff;margin:0 auto 22px;
  display:grid;place-items:center;border:2px solid var(--haw-line);position:relative;
  transition:border-color .3s ease,box-shadow .3s ease}
.haw-jny-dot svg{width:27px;height:27px;color:var(--haw-gold-d)}
.haw-jny-s:hover .haw-jny-dot{border-color:var(--haw-gold);box-shadow:0 8px 22px rgba(201,162,39,.24)}
.haw-jny-n{position:absolute;top:-6px;right:-6px;width:25px;height:25px;border-radius:50%;
  background:var(--haw-green);color:#fff;display:grid;place-items:center;
  font:600 12px/1 var(--haw-ff-body)}
.haw-jny-s h3{font-size:1.26rem;margin-bottom:8px;line-height:1.25}
.haw-jny-s p{font-size:14.8px;line-height:1.65;margin:0}

/* --------------------------------------------------------------------------
   14. SPLIT FEATURE  (art one side, copy the other, alternating)
   -------------------------------------------------------------------------- */
.haw-split{display:grid;grid-template-columns:1fr 1fr;gap:66px;align-items:center}
.haw-split-flip .haw-split-art{order:2}
.haw-split-art{position:relative;border-radius:var(--haw-r-lg);overflow:hidden;
  aspect-ratio:5/4;background:linear-gradient(150deg,var(--haw-green-l),var(--haw-cream));
  box-shadow:var(--haw-sh)}
.haw-split-art svg{position:absolute;inset:0;width:100%;height:100%}
.haw-split-copy h2{margin-bottom:20px}
.haw-ticks{list-style:none;margin:28px 0 0;padding:0;display:grid;gap:15px}
.haw-ticks li{display:flex;align-items:flex-start;gap:13px;font-size:15.8px;line-height:1.62}
.haw-ticks .haw-ico{width:22px;height:22px;margin-top:2px;border-radius:50%;
  background:var(--haw-green-l);flex:none}
.haw-ticks .haw-ico svg{width:13px;height:13px}
.haw-ticks b{display:block;color:var(--haw-ink);font-weight:600;margin-bottom:1px}

/* --------------------------------------------------------------------------
   15. UNBOXED LIST WITH HAIRLINE DIVIDERS
   -------------------------------------------------------------------------- */
.haw-rows{display:grid;gap:0;border-top:1px solid var(--haw-line)}
.haw-row{display:grid;grid-template-columns:54px 1fr;gap:22px;padding:28px 0;
  border-bottom:1px solid var(--haw-line);align-items:start}
.haw-row-tx h3{margin-bottom:7px}
.haw-row-tx p{font-size:15.6px;margin:0}
.haw-row .haw-ico-round{width:52px;height:52px}

/* --------------------------------------------------------------------------
   16. VERTICAL NUMBERED RAIL
   -------------------------------------------------------------------------- */
.haw-rail{display:grid;gap:0;counter-reset:haw-r}
.haw-rail-i{display:grid;grid-template-columns:96px 1fr;gap:30px;padding:34px 0;
  border-bottom:1px solid var(--haw-line);align-items:start}
.haw-rail-i:first-child{border-top:1px solid var(--haw-line)}
.haw-rail-n{font:400 clamp(2.4rem,5vw,3.4rem)/1 var(--haw-ff-head);color:var(--haw-gold);
  letter-spacing:-2px;opacity:.85}
.haw-rail-tx h3{font-size:clamp(1.42rem,2.2vw,1.66rem);margin-bottom:10px;line-height:1.24}
.haw-rail-tx p{margin:0;max-width:66ch}
.haw-rail-tx .haw-ticks{margin-top:18px}

/* --------------------------------------------------------------------------
   17. AREAS OF SUPPORT  (filter pills + grid)
   -------------------------------------------------------------------------- */
.haw-pills{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 38px}
.haw-pill.haw-pill{padding:11px 20px;border-radius:999px;border:1px solid var(--haw-line);
  background:#fff;font:500 14.5px/1 var(--haw-ff-body);color:var(--haw-ink);
  transition:background .18s ease,border-color .18s ease,color .18s ease}
.haw-pill:hover{border-color:var(--haw-green-m)}
.haw-pill.haw-on{background:var(--haw-green);border-color:var(--haw-green);color:#fff}

.haw-areas{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.haw-area{background:#fff;border:1px solid var(--haw-line);border-radius:var(--haw-r-md);
  padding:24px 24px 22px;display:flex;flex-direction:column;
  transition:transform .24s ease,box-shadow .24s ease,border-color .24s ease}
.haw-area:hover{transform:translateY(-3px);box-shadow:var(--haw-sh);border-color:var(--haw-green-l)}
.haw-area-hd{display:flex;align-items:center;gap:13px;margin-bottom:12px}
.haw-area-hd .haw-ico-round{width:44px;height:44px;background:var(--haw-green-l);border-color:transparent}
.haw-area-hd .haw-ico-round svg{width:21px;height:21px}
.haw-area h3{font-size:1.26rem;margin:0;letter-spacing:0;line-height:1.25}
.haw-area p{font-size:14.8px;line-height:1.66;margin:0 0 14px;color:var(--haw-text)}
.haw-area-tag{display:inline-block;align-self:flex-start;margin-top:auto;padding-top:0;font:600 11px/1 var(--haw-ff-body);
  letter-spacing:.13em;text-transform:uppercase;color:var(--haw-gold-d);
  background:var(--haw-cream);padding:6px 11px;border-radius:999px}
.haw-empty{padding:46px 0;text-align:center;color:var(--haw-text);font-size:16px}

/* --------------------------------------------------------------------------
   18. ACCORDION
   -------------------------------------------------------------------------- */
.haw-acc{border-top:1px solid var(--haw-line)}
.haw-acc-i{border-bottom:1px solid var(--haw-line)}
.haw-acc-q.haw-acc-q{width:100%;display:flex;align-items:flex-start;justify-content:space-between;gap:20px;
  padding:25px 0;text-align:left;font:600 19.5px/1.4 var(--haw-ff-head);color:var(--haw-green);
  letter-spacing:0;cursor:pointer}
.haw-acc-q::after{content:"";flex:none;width:26px;height:26px;margin-top:2px;border-radius:50%;
  border:1px solid var(--haw-line);
  background-image:linear-gradient(var(--haw-green),var(--haw-green)),linear-gradient(var(--haw-green),var(--haw-green));
  background-size:11px 1.8px,1.8px 11px;background-position:center,center;background-repeat:no-repeat;
  transition:transform .3s ease,border-color .3s ease}
.haw-acc-i.haw-open .haw-acc-q::after{transform:rotate(135deg);border-color:var(--haw-gold)}
.haw-acc-i.haw-open .haw-acc-q{color:var(--haw-green)}
.haw-acc-a{max-height:0;overflow:hidden;transition:max-height .38s cubic-bezier(.4,0,.2,1)}
.haw-acc-a-in{padding:0 46px 27px 0;font-size:15.8px;line-height:1.75}
.haw-acc-a-in p:last-child{margin-bottom:0}

/* Desktop-open collapse group: fully expanded above 575px, collapsible below,
   so nothing is hidden from readers or search engines on a large screen. */
.haw-collapse .haw-acc-a{max-height:none}
.haw-collapse .haw-acc-q{cursor:default}
.haw-collapse .haw-acc-q::after{display:none}

/* --------------------------------------------------------------------------
   19. DARK CTA PANEL  (once per page)
   -------------------------------------------------------------------------- */
.haw-cta{position:relative;overflow:hidden;background:
  radial-gradient(660px 420px at 12% 0%,rgba(201,162,39,.2),transparent 60%),
  linear-gradient(140deg,var(--haw-green) 0%,var(--haw-green-d) 72%);color:#fff}
.haw-cta-bg{position:absolute;inset:0;opacity:.14;pointer-events:none}
.haw-cta-bg img,.haw-cta-bg svg{position:absolute;right:-60px;bottom:-110px;width:480px;height:480px}
.haw-cta-in{position:relative;display:grid;grid-template-columns:1.2fr .8fr;gap:56px;
  align-items:center;padding:82px 0}
.haw-cta h2{color:#fff;margin-bottom:16px}
.haw-cta p{color:rgba(255,255,255,.88);max-width:54ch;margin:0}
.haw-cta-acts{display:grid;gap:12px}
.haw-cta-acts .haw-btn{width:100%}
.haw-cta-acts small{display:block;text-align:center;color:rgba(255,255,255,.7);
  font-size:12.8px;line-height:1.6;margin-top:6px}

/* --------------------------------------------------------------------------
   20. NOTICES  (crisis, medical disclaimer)
   -------------------------------------------------------------------------- */
.haw-notice{border:1px solid var(--haw-line);border-left:4px solid var(--haw-gold);
  background:var(--haw-cream);border-radius:var(--haw-r-md);padding:26px 28px}
.haw-notice-hd{display:flex;align-items:center;gap:12px;margin-bottom:12px}
.haw-notice-hd .haw-ico{width:24px;height:24px}
.haw-notice-hd .haw-ico svg{width:24px;height:24px}
.haw-notice h3{margin:0;font-family:var(--haw-ff-body);font-size:17px;font-weight:600;
  letter-spacing:-.1px;line-height:1.4;color:var(--haw-ink)}
.haw-notice-urgent h3{color:#8C2F21}
.haw-notice p{font-size:15.2px;line-height:1.72}
.haw-notice a{color:var(--haw-green);font-weight:600;text-decoration:underline;text-underline-offset:3px}
.haw-notice-urgent{border-left-color:#9A3324;background:#FDF5F3}
.haw-notice-urgent .haw-ico svg > *{stroke:#9A3324}
.haw-crisis-l{list-style:none;margin:14px 0 0;padding:0;display:grid;gap:9px}
.haw-crisis-l li{display:flex;align-items:flex-start;gap:10px;font-size:15px;line-height:1.6}
.haw-crisis-l b{color:var(--haw-ink)}

/* --------------------------------------------------------------------------
   21. CONTACT
   -------------------------------------------------------------------------- */
.haw-ct{display:grid;grid-template-columns:.92fr 1.08fr;gap:60px;align-items:start}
.haw-ct-cards{display:grid;gap:16px}
.haw-ct-card{display:flex;align-items:flex-start;gap:17px;padding:26px;background:#fff;
  border:1px solid var(--haw-line);border-radius:var(--haw-r-md);transition:box-shadow .24s ease}
.haw-ct-card:hover{box-shadow:var(--haw-sh)}
.haw-ct-card .haw-ico-round{background:var(--haw-green-l);border-color:transparent}
.haw-ct-card b{display:block;font:600 12px/1 var(--haw-ff-body);letter-spacing:.14em;
  text-transform:uppercase;color:var(--haw-gold-d);margin-bottom:8px}
/* This used to be `.haw-ct-card span`, which is element+class at 0,1,1 and
   therefore out-ranked `.haw-ico{display:grid}` at 0,1,0. The icon inside the
   card is a <span>, so it lost `display:grid`, `place-items:center` stopped
   doing anything, and every glyph sat flush to the top of its circle instead
   of centred. Match a real prefixed class, never a bare element. */
.haw-ct-val{display:block;font-size:16.5px;line-height:1.55;color:var(--haw-ink);
  font-weight:500}
.haw-ct-card a:hover{color:var(--haw-green);text-decoration:underline;text-underline-offset:3px}
.haw-ct-card small{display:block;margin-top:7px;font-size:13.6px;color:var(--haw-text);font-weight:400}

.haw-form{background:#fff;border:1px solid var(--haw-line);border-radius:var(--haw-r-lg);
  padding:38px;box-shadow:var(--haw-sh)}
.haw-form h2{font-size:1.68rem;margin-bottom:8px}
.haw-form > p{font-size:15.2px;margin-bottom:26px}
.haw-fg{display:grid;gap:18px}
.haw-f2{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.haw-fl{display:block;font:600 13.6px/1.4 var(--haw-ff-body);color:var(--haw-ink);margin-bottom:7px}
.haw-fl i{font-style:normal;color:var(--haw-gold-d)}
.haw-page input[type=text],.haw-page input[type=email],.haw-page input[type=tel],
.haw-page select,.haw-page textarea{
  width:100%;padding:14px 16px;border:1px solid var(--haw-line);border-radius:var(--haw-r-sm);
  font:400 15.6px/1.5 var(--haw-ff-body);color:var(--haw-ink);background:#fff;
  transition:border-color .18s ease,box-shadow .18s ease}
.haw-page textarea{min-height:130px;resize:vertical}
.haw-page select{appearance:none;-webkit-appearance:none;cursor:pointer;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%2346554F' stroke-width='1.6' stroke-linecap='round'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:right 16px center;background-size:12px;padding-right:42px}
.haw-page input:focus,.haw-page select:focus,.haw-page textarea:focus{
  outline:none;border-color:var(--haw-green-m);box-shadow:0 0 0 3px rgba(46,107,84,.14)}
.haw-page .haw-invalid{border-color:#9A3324;box-shadow:0 0 0 3px rgba(154,51,36,.12)}
.haw-fhelp{display:block;margin-top:7px;font-size:13.2px;line-height:1.6;color:var(--haw-text)}
.haw-consent{display:flex;align-items:flex-start;gap:12px;font-size:14.2px;line-height:1.62}
.haw-consent input{margin-top:4px;width:18px;height:18px;flex:none;accent-color:var(--haw-green)}
.haw-form .haw-btn{width:100%;margin-top:4px}
.haw-fnote{margin-top:16px;padding:13px 16px;border-radius:var(--haw-r-sm);font-size:14.2px;
  line-height:1.6;background:var(--haw-green-l);color:var(--haw-ink)}
.haw-fnote.haw-form-err{background:#FDF5F3;color:#7A2A1D}
.haw-fnote.haw-form-ok{background:var(--haw-green-l);color:var(--haw-green)}
/* honeypot: moved off screen rather than display:none, so it is still a field
   a bot will fill, and still skipped by screen readers and the keyboard */
.haw-hp{position:absolute !important;left:-9999px !important;width:1px !important;
  height:1px !important;overflow:hidden !important}

.haw-map{border-radius:var(--haw-r-lg);overflow:hidden;border:1px solid var(--haw-line);
  aspect-ratio:16/7;background:var(--haw-green-l);position:relative}
.haw-map iframe{width:100%;height:100%;border:0;display:block}

/* --------------------------------------------------------------------------
   22. LEGAL PAGES  (sticky contents rail + numbered blocks)
   -------------------------------------------------------------------------- */
.haw-legal{display:grid;grid-template-columns:262px 1fr;gap:56px;align-items:start}
.haw-toc{position:sticky;top:118px;border:1px solid var(--haw-line);border-radius:var(--haw-r-md);
  padding:24px;background:var(--haw-cream)}
.haw-toc b{display:block;font:600 11.6px/1 var(--haw-ff-body);letter-spacing:.15em;
  text-transform:uppercase;color:var(--haw-gold-d);margin-bottom:15px}
.haw-toc ol{list-style:none;margin:0;padding:0;counter-reset:haw-t;display:grid;gap:3px}
.haw-toc a{display:block;padding:8px 10px;border-radius:var(--haw-r-sm);font-size:14.2px;
  line-height:1.45;color:var(--haw-text);transition:background .16s ease,color .16s ease}
.haw-toc a:hover{background:#fff;color:var(--haw-green)}
.haw-toc a.haw-on{background:#fff;color:var(--haw-green);font-weight:600}
.haw-lg-b{padding:0 0 42px;scroll-margin-top:130px}
.haw-lg-b h2{font-size:clamp(1.34rem,2.2vw,1.72rem);margin-bottom:14px}
.haw-lg-b h3{font-family:var(--haw-ff-body);font-size:18px;font-weight:600;
  letter-spacing:-.1px;color:var(--haw-ink);margin:26px 0 10px;line-height:1.45}
.haw-lg-b ul{margin:0 0 1rem;padding:0;display:grid;gap:9px}
.haw-lg-b ul li{position:relative;padding-left:24px;font-size:15.8px;line-height:1.72}
.haw-lg-b ul li::before{content:"";position:absolute;left:4px;top:11px;width:7px;height:7px;
  border-radius:50%;background:var(--haw-gold)}
.haw-updated{font-size:13.8px;color:var(--haw-text);padding:14px 18px;background:var(--haw-green-l);
  border-radius:var(--haw-r-sm);margin-bottom:38px}

/* --------------------------------------------------------------------------
   23. 404
   -------------------------------------------------------------------------- */
.haw-404{display:grid;place-items:center;text-align:center;padding:110px 0 120px}
.haw-404-n{font:400 clamp(5rem,16vw,9rem)/1 var(--haw-ff-head);color:var(--haw-green-l);
  letter-spacing:-6px;margin-bottom:-12px}
.haw-404 .haw-tiles{margin-top:48px;text-align:left;width:100%}

/* --------------------------------------------------------------------------
   24. FOOTER
   -------------------------------------------------------------------------- */
.haw-ft{background:var(--haw-green-d);color:rgba(255,255,255,.76);
  font-family:var(--haw-ff-body);font-size:15px;line-height:1.7;position:relative;overflow:hidden}
.haw-ft-bg{position:absolute;inset:0;opacity:.09;pointer-events:none}
.haw-ft-bg img,.haw-ft-bg svg{position:absolute;left:-110px;bottom:-140px;width:460px;height:460px}
.haw-ft-in{position:relative;max-width:1180px;margin:0 auto;padding:70px 24px 0}
.haw-ft-grid{display:grid;grid-template-columns:1.6fr .9fr .9fr 1.25fr;gap:44px;
  padding-bottom:52px;border-bottom:1px solid var(--haw-line-d)}
.haw-ft h3{color:#fff;font-family:var(--haw-ff-body);font-size:12px;font-weight:600;
  letter-spacing:.16em;text-transform:uppercase;margin:0 0 18px}
.haw-ft a{color:rgba(255,255,255,.76);transition:color .16s ease}
.haw-ft a:hover{color:var(--haw-gold-l)}
.haw-ft-brand .haw-logo-tx b{color:#fff}
.haw-ft-brand .haw-logo-tx span{color:var(--haw-gold-l)}
.haw-ft-brand p{margin:20px 0 0;max-width:34ch;font-size:14.6px}
.haw-ft-links{display:grid;gap:11px;font-size:14.6px}
.haw-ft-ct{display:grid;gap:14px}
.haw-ft-ct li{display:flex;align-items:flex-start;gap:11px;font-size:14.6px}
.haw-ft-ct .haw-ico{width:18px;height:18px;margin-top:3px}
.haw-ft-ct .haw-ico svg{width:18px;height:18px}
.haw-ft-ct .haw-ico svg > *{stroke:var(--haw-gold-l);stroke-dashoffset:0}
.haw-ft-ct a{color:#fff;font-weight:500}
.haw-ft-crisis{margin-top:20px;padding:15px 17px;border:1px solid var(--haw-line-d);
  border-radius:var(--haw-r-sm);background:rgba(255,255,255,.04);font-size:13.8px;line-height:1.65}
.haw-ft-crisis b{color:var(--haw-gold-l);display:block;margin-bottom:4px}
.haw-ft-dis{padding:30px 0;border-bottom:1px solid var(--haw-line-d);font-size:13.4px;
  line-height:1.72;color:rgba(255,255,255,.62);max-width:95ch}
.haw-ft-bar{display:flex;align-items:center;justify-content:space-between;gap:22px;
  flex-wrap:wrap;padding:24px 0 30px;font-size:13.4px;color:rgba(255,255,255,.62)}
.haw-ft-bar nav{display:flex;flex-wrap:wrap;gap:8px 20px}

/* --------------------------------------------------------------------------
   25. LAPTOP AND TABLET
   -------------------------------------------------------------------------- */
@media(max-width:1100px){
  .haw-nav a{padding:10px 10px;font-size:14.3px}
  .haw-nav a::after{left:10px;right:10px}
  .haw-hd-cta .haw-btn.haw-btn{padding:12px 17px;font-size:13.8px}
  .haw-hero-in{gap:44px}
  .haw-ed,.haw-split,.haw-ct{gap:44px}
  .haw-legal{grid-template-columns:225px 1fr;gap:38px}
}

@media(max-width:991px){
  .haw-nav,.haw-hd-cta{display:none}
  .haw-burger{display:grid}
  .haw-sec,.haw-sec-t{padding:70px 0}
  .haw-sec-t{padding-bottom:0}

  .haw-hero-in{grid-template-columns:1fr;gap:46px;padding:62px 0 70px}
  .haw-hero-copy{max-width:640px}
  .haw-plate{max-width:460px}
  .haw-hero-bg img,.haw-hero-bg svg{width:420px;height:420px;right:-130px}

  .haw-facts-g{grid-template-columns:1fr 1fr}
  .haw-facts-g > div{border-bottom:1px solid var(--haw-line)}
  .haw-facts-g > div:nth-child(2n){border-right:0}
  .haw-facts-g > div:nth-last-child(-n+2){border-bottom:0}

  .haw-ed{grid-template-columns:1fr;gap:34px}
  .haw-ed-l{position:static}

  .haw-tiles{grid-template-columns:1fr 1fr}
  .haw-areas{grid-template-columns:1fr 1fr}

  .haw-jny{grid-template-columns:1fr 1fr;gap:38px 26px}
  .haw-jny::before{display:none}

  .haw-split{grid-template-columns:1fr;gap:36px}
  .haw-split-flip .haw-split-art{order:0}
  .haw-split-art{aspect-ratio:16/9}

  .haw-cta-in{grid-template-columns:1fr;gap:34px;padding:64px 0}
  .haw-cta-acts{max-width:420px}

  .haw-ct{grid-template-columns:1fr;gap:38px}
  .haw-legal{grid-template-columns:1fr;gap:28px}
  .haw-toc{position:static}
  .haw-toc ol{display:flex;flex-wrap:wrap;gap:6px}
  .haw-toc a{background:#fff;border:1px solid var(--haw-line)}

  .haw-ft-grid{grid-template-columns:1fr 1fr;gap:38px}
  .haw-ft-brand,.haw-ft-contact{grid-column:1/-1}
}

/* --------------------------------------------------------------------------
   26. MOBILE
   Every phone rule lives in this one block, at the end of the file.
   Targets: no section over ~1.5 screens, whole page under ~9, footer under 1.5.
   -------------------------------------------------------------------------- */
@media(max-width:575px){
  .haw-page{font-size:16.2px;line-height:1.72}
  .haw-wrap,.haw-wrap-n{padding:0 18px}
  .haw-sec{padding:40px 0}
  .haw-sec-t{padding:40px 0 0}
  .haw-head{margin-bottom:26px}
  .haw-page h1{font-size:2.02rem;letter-spacing:-.8px}
  .haw-page h2{font-size:1.58rem;letter-spacing:-.5px}
  .haw-page h3{font-size:1.3rem;line-height:1.24}
  .haw-eyebrow{margin-bottom:13px;font-size:11.6px}
  .haw-btns{gap:10px;margin-top:24px}
  .haw-btn.haw-btn{padding:15px 22px;font-size:15px}
  .haw-btns .haw-btn{flex:1 1 100%}

  /* header */
  .haw-topbar{font-size:12.4px}
  .haw-topbar-in{padding:8px 18px;justify-content:center;gap:10px}
  .haw-topbar-r{display:none}
  .haw-hd-in{height:66px;padding:0 18px}
  .haw-logo-mk{width:36px;height:36px}
  .haw-logo-tx b{font-size:17.6px}
  .haw-logo-tx span{font-size:8.6px;letter-spacing:.18em}

  /* hero */
  .haw-hero-in{padding:28px 0 34px;gap:24px}
  .haw-hero-note{margin-top:22px;padding:12px 14px;font-size:13.6px}
  .haw-hero-bg{display:none}
  .haw-plate{padding:24px 20px 22px;max-width:none}
  .haw-mono{width:92px;height:92px;margin-bottom:18px}
  .haw-mono b{font-size:31px}
  .haw-plate h2{font-size:1.36rem}
  .haw-plate-l{gap:9px;padding-top:15px}
  .haw-plate-l li{font-size:13.6px;line-height:1.45}
  .haw-phero{padding:44px 0 40px}
  .haw-crumb{margin-bottom:14px;font-size:12.8px}

  /* facts: 2 up, not stacked */
  .haw-facts-g > div{padding:20px 14px;gap:11px;flex-direction:column}
  .haw-facts-g .haw-ico{width:24px;height:24px;margin-top:0}
  .haw-facts-g .haw-ico svg{width:24px;height:24px}
  .haw-facts-g b{font-size:14.4px}
  .haw-fact-v{font-size:13px;line-height:1.5}

  /* editorial */
  .haw-ed{gap:24px}
  .haw-ed-r > p{font-size:16.2px}
  .haw-sig{margin-top:22px;padding-top:20px}

  /* quote */
  .haw-quote{padding:46px 0}
  .haw-quote-in{padding:0 18px}
  .haw-quote-mk{width:34px;height:34px;margin-bottom:18px}
  .haw-quote blockquote{font-size:1.36rem;line-height:1.46}
  .haw-quote cite{margin-top:18px;font-size:11.4px}
  .haw-quote-bg img,.haw-quote-bg svg{width:420px;height:420px}

  /* tiles: 2 up, short copy hidden so the pair stays scannable */
  .haw-tiles{gap:11px}
  .haw-tile{padding:15px 13px;border-radius:var(--haw-r-md)}
  .haw-tile .haw-ico-round{width:40px;height:40px;margin-bottom:11px}
  .haw-tile .haw-ico-round svg{width:21px;height:21px}
  .haw-tile h3{font-size:1.16rem;margin-bottom:7px;line-height:1.24}
  .haw-tile p{font-size:13.6px;line-height:1.55}

  /* journey: 2 up with a compact dot */
  .haw-jny{gap:22px 12px}
  .haw-jny-dot{width:54px;height:54px;margin-bottom:14px}
  .haw-jny-dot svg{width:23px;height:23px;color:var(--haw-gold-d)}
  .haw-jny-n{width:22px;height:22px;font-size:11px}
  .haw-jny-s h3{font-size:1.1rem;margin-bottom:6px}
  .haw-jny-s p{font-size:13.8px;line-height:1.55}

  /* split. On the home page only, the whole-person panel is dropped: its three
     labels are repeated word for word in the tick list directly below it, so on
     a phone it costs a third of a screen and says nothing new. The panels on
     About and Services are NOT duplicated by copy, so they stay. */
  .haw-home-page .haw-split-art{display:none}
  .haw-split{gap:26px}
  .haw-split-art{aspect-ratio:3/2;border-radius:var(--haw-r-md)}
  .haw-ticks{margin-top:20px;gap:12px}
  .haw-ticks li{font-size:15px}

  /* rows: the icon column and the text column are exactly two children */
  .haw-row{grid-template-columns:40px 1fr;gap:13px;padding:14px 0}
  .haw-row .haw-ico-round{width:40px;height:40px}
  .haw-row .haw-ico-round svg{width:19px;height:19px}
  .haw-row-tx p{font-size:14.4px;line-height:1.6}

  /* rail */
  .haw-rail-i{grid-template-columns:1fr;gap:10px;padding:24px 0}
  .haw-rail-n{font-size:2.1rem;letter-spacing:-1px}
  .haw-rail-tx h3{font-size:1.3rem}

  /* areas: 2 up, description hidden, name and tag carry it */
  .haw-pills{gap:7px;margin-bottom:24px;flex-wrap:nowrap;overflow-x:auto;
    padding-bottom:8px;-webkit-overflow-scrolling:touch;scrollbar-width:none}
  .haw-pills::-webkit-scrollbar{display:none}
  .haw-pill.haw-pill{padding:9px 15px;font-size:13.4px;white-space:nowrap;flex:none}
  .haw-areas{grid-template-columns:1fr 1fr;gap:10px}
  .haw-area{padding:15px 14px;border-radius:var(--haw-r-md)}
  .haw-area-hd{flex-direction:column;align-items:flex-start;gap:10px;margin-bottom:8px}
  .haw-area-hd .haw-ico-round{width:38px;height:38px}
  .haw-area-hd .haw-ico-round svg{width:18px;height:18px}
  .haw-area h3{font-size:1.06rem;line-height:1.25}
  .haw-area p{font-size:13.2px;line-height:1.55}
  .haw-area-tag{margin-top:10px;font-size:10px;padding:5px 9px}

  /* accordion, and the desktop-open groups become collapsible here */
  .haw-acc-q.haw-acc-q{padding:19px 0;font-size:17px;gap:14px}
  .haw-acc-a-in{padding:0 30px 21px 0;font-size:15px}
  .haw-collapse .haw-acc-a{max-height:0}
  .haw-collapse .haw-acc-q{cursor:pointer}
  .haw-collapse .haw-acc-q::after{display:block}

  /* cta */
  .haw-cta-in{padding:42px 0;gap:22px}
  .haw-cta-acts{max-width:none}

  /* notices */
  .haw-notice{padding:20px 18px;border-radius:var(--haw-r-md)}
  .haw-notice h3{font-size:16px}
  .haw-notice p{font-size:14.6px}
  .haw-crisis-l li{font-size:14.2px}

  /* contact */
  .haw-ct-card{padding:18px 16px;gap:13px}
  .haw-ct-card .haw-ico-round{width:44px;height:44px}
  .haw-ct-card .haw-ico-round svg{width:21px;height:21px}
  .haw-ct-val{font-size:15.6px}
  .haw-form{padding:24px 18px;border-radius:var(--haw-r-md)}
  .haw-form h2{font-size:1.4rem}
  .haw-f2{grid-template-columns:1fr;gap:18px}
  .haw-map{aspect-ratio:4/3}

  /* legal: nothing is hidden, so the contents rail becomes a sticky
     horizontal jumper and any section is one tap away */
  .haw-toc{position:sticky;top:66px;z-index:60;padding:10px 0;border-radius:0;
    border-left:0;border-right:0;margin:0 -18px 22px;
    background:rgba(250,247,239,.96);backdrop-filter:blur(10px);
    -webkit-backdrop-filter:blur(10px)}
  .haw-toc b{display:none}
  .haw-toc ol{flex-wrap:nowrap;overflow-x:auto;gap:7px;padding:0 18px;
    -webkit-overflow-scrolling:touch;scrollbar-width:none}
  .haw-toc ol::-webkit-scrollbar{display:none}
  .haw-toc a{font-size:13px;padding:8px 13px;white-space:nowrap;border-radius:999px}
  .haw-toc li{flex:none}
  .haw-lg-b{scroll-margin-top:118px}
  .haw-lg-b{padding-bottom:30px}
  .haw-lg-b ul li{font-size:15px}

  /* 404 */
  .haw-404{padding:60px 0 66px}
  .haw-404 .haw-tiles{margin-top:30px}

  /* footer: brand full width, two short link lists side by side, contact full
     width. This is the highest-leverage edit on the site because it repeats
     on every page. */
  .haw-ft-in{padding:38px 18px 0}
  .haw-ft-grid{grid-template-columns:1fr 1fr;gap:18px 14px;padding-bottom:20px}
  .haw-ft h3{margin-bottom:12px;font-size:11px}
  .haw-ft-brand p{margin-top:13px;font-size:13.8px;max-width:none}
  .haw-ft-links{gap:8px;font-size:13.8px}
  .haw-ft-ct{gap:11px}
  .haw-ft-ct li{font-size:13.8px}
  .haw-ft-crisis{margin-top:13px;padding:11px 13px;font-size:12.6px;line-height:1.55}
  .haw-ft-dis{padding:14px 0;font-size:12px;line-height:1.55}
  .haw-ft-bar{padding:15px 0 22px;gap:10px;font-size:12.4px}
  .haw-ft-bar nav{gap:6px 15px}
}

@media(max-width:380px){
  .haw-tile h3{font-size:1.1rem}
  .haw-area h3{font-size:1rem}
  .haw-logo-tx span{letter-spacing:.14em}
}

/* --------------------------------------------------------------------------
   27. REDUCED MOTION AND PRINT
   Both repeat the SAME icon selector as section 5. If these drift out of sync
   the icons vanish for exactly the users who cannot see them break.
   -------------------------------------------------------------------------- */
@media(prefers-reduced-motion:reduce){
  .haw-page *,.haw-hd *,.haw-ft *,.haw-drawer *{
    animation-duration:.01ms !important;animation-iteration-count:1 !important;
    transition-duration:.01ms !important;scroll-behavior:auto !important}
  .haw-rv{opacity:1 !important;transform:none !important}
  .haw-ico svg > *,.haw-rv:not(.haw-vis) .haw-ico svg > *{stroke-dashoffset:0}
  .haw-btn:hover,.haw-tile:hover,.haw-area:hover{transform:none}
}

@media print{
  .haw-hd,.haw-drawer,.haw-ft-bg,.haw-hero-bg,.haw-quote-bg,.haw-cta-bg,
  .haw-btns,.haw-burger,.haw-skip{display:none !important}
  .haw-page{font-size:11.5pt;color:#000;background:#fff}
  .haw-rv{opacity:1 !important;transform:none !important}
  .haw-ico svg > *,.haw-rv:not(.haw-vis) .haw-ico svg > *{stroke-dashoffset:0 !important}
  .haw-sec,.haw-sec-t{padding:18pt 0}
  .haw-acc-a{max-height:none !important}
  .haw-quote,.haw-cta,.haw-ft{background:#fff !important;color:#000 !important}
  .haw-quote blockquote,.haw-quote cite,.haw-cta h2,.haw-cta p{color:#000 !important}
}

/* --------------------------------------------------------------------------
   28. LIGHT QUOTE BAND
   The dark contrast panel is a moment, not a habit, so a page that already
   ends on .haw-cta uses this warm variant for its statement band instead.
   Appended after the mobile block on purpose: it is a variant override, and
   its own phone rules sit with it rather than being scattered upward.
   -------------------------------------------------------------------------- */
.haw-quote.haw-quote-lt{background:var(--haw-cream);color:var(--haw-ink);
  border-top:1px solid var(--haw-line);border-bottom:1px solid var(--haw-line)}
.haw-quote.haw-quote-lt .haw-quote-bg{opacity:.11}
.haw-quote.haw-quote-lt .haw-quote-mk svg > *{stroke:var(--haw-gold)}
.haw-quote.haw-quote-lt blockquote{color:var(--haw-ink)}
.haw-quote.haw-quote-lt cite{color:var(--haw-gold-d)}
@media(max-width:575px){
  .haw-quote.haw-quote-lt{padding:48px 0}
}

/* --------------------------------------------------------------------------
   29. PULL QUOTE  (inside prose, not a full band)
   -------------------------------------------------------------------------- */
.haw-pull{margin:30px 0;padding:24px 0 24px 28px;border-left:3px solid var(--haw-gold);
  font-family:var(--haw-ff-head);font-style:italic;font-weight:400;
  font-size:clamp(1.14rem,2vw,1.42rem);line-height:1.5;color:var(--haw-ink);text-wrap:balance}
.haw-pull cite{display:block;font-style:normal;font-family:var(--haw-ff-body);
  font-size:12.5px;font-weight:600;letter-spacing:.15em;text-transform:uppercase;
  color:var(--haw-gold-d);margin-top:14px}

/* --------------------------------------------------------------------------
   30. BAND  (warm editorial strip, an alternative to a second dark panel)
   -------------------------------------------------------------------------- */
.haw-band{background:var(--haw-cream);border-top:1px solid var(--haw-line);
  border-bottom:1px solid var(--haw-line)}
.haw-band-in{display:grid;grid-template-columns:auto 1fr;gap:34px;align-items:center;padding:64px 0}
.haw-band-mk{width:88px;height:88px;border-radius:50%;background:#fff;display:grid;place-items:center;
  border:1px solid var(--haw-line);box-shadow:var(--haw-sh);flex:none}
.haw-band-mk svg{width:38px;height:38px}
.haw-band h2{margin-bottom:12px}
.haw-band p{max-width:70ch;margin:0}

@media(max-width:575px){
  .haw-pull{margin:22px 0;padding:16px 0 16px 18px;font-size:1.1rem}
  .haw-band-in{grid-template-columns:1fr;gap:20px;padding:44px 0}
  .haw-band-mk{width:66px;height:66px}
  .haw-band-mk svg{width:30px;height:30px}
}

/* --------------------------------------------------------------------------
   31. FEATURE CARDS  (bordered, gold top rule)
   Deliberately not the soft tinted tile from section 12: the two forms sit on
   different pages so no visitor meets the same card twice in a row.
   -------------------------------------------------------------------------- */
.haw-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.haw-card{position:relative;background:#fff;border:1px solid var(--haw-line);
  border-radius:var(--haw-r-lg);padding:38px 34px 34px;overflow:hidden;
  transition:transform .26s ease,box-shadow .26s ease,border-color .26s ease}
.haw-card::before{content:"";position:absolute;left:0;right:0;top:0;height:4px;
  background:linear-gradient(90deg,var(--haw-gold),var(--haw-green-m))}
.haw-card:hover{transform:translateY(-4px);box-shadow:var(--haw-sh-lift);border-color:transparent}
.haw-card-hd{display:flex;align-items:center;gap:16px;margin-bottom:16px}
.haw-card-n{font:400 1.5rem/1 var(--haw-ff-head);color:var(--haw-gold);letter-spacing:-1px}
.haw-card h3{margin:0;flex:1}
.haw-card > p{font-size:15.6px;margin:0}
.haw-card .haw-ticks{margin-top:20px;padding-top:20px;border-top:1px solid var(--haw-line)}
.haw-card .haw-ticks li{font-size:14.9px;gap:11px}
.haw-card .haw-ticks .haw-ico{width:19px;height:19px}
.haw-card .haw-ticks .haw-ico svg{width:11px;height:11px}

@media(max-width:991px){ .haw-cards{grid-template-columns:1fr} }
@media(max-width:575px){
  .haw-cards{gap:13px}
  .haw-card{padding:24px 18px 22px;border-radius:var(--haw-r-md)}
  .haw-card-hd{gap:12px;margin-bottom:12px}
  .haw-card-n{font-size:1.25rem}
  .haw-card > p{font-size:14.8px}
  .haw-card .haw-ticks{margin-top:15px;padding-top:15px;gap:10px}
  .haw-card .haw-ticks li{font-size:14.2px}
}

/* --------------------------------------------------------------------------
   32. FAQ GROUPS
   -------------------------------------------------------------------------- */
.haw-faqg{margin-bottom:56px}
.haw-faqg:last-child{margin-bottom:0}
.haw-faqg-hd{display:flex;align-items:center;gap:15px;margin:0 0 20px}
.haw-faqg-hd .haw-ico-round{width:46px;height:46px;background:var(--haw-green-l);border-color:transparent}
.haw-faqg-hd .haw-ico-round svg{width:22px;height:22px}
.haw-faqg-hd h2{margin:0;font-size:clamp(1.3rem,2.2vw,1.66rem)}
@media(max-width:575px){
  .haw-faqg{margin-bottom:38px}
  .haw-faqg-hd{gap:12px;margin-bottom:14px}
  .haw-faqg-hd .haw-ico-round{width:40px;height:40px}
  .haw-faqg-hd .haw-ico-round svg{width:19px;height:19px}
}

/* --------------------------------------------------------------------------
   33. DIRECTIONS PANEL
   Address and map-app buttons on one side, an embedded Google Map on the
   other. The embed was added at the practice's request in October 2026. It
   hands each visitor's IP address to Google when the contact page loads, so
   the privacy policy says so (build.py gates on that), and the address is
   always also given as text and links, so the map is never the only route.
   -------------------------------------------------------------------------- */
.haw-dir{display:grid;grid-template-columns:1fr 1fr;gap:0;border:1px solid var(--haw-line);
  border-radius:var(--haw-r-lg);overflow:hidden;background:#fff}
.haw-dir-a{padding:38px 34px}
.haw-dir-a h3{margin-bottom:14px}
.haw-dir-a address{font-style:normal;font-size:17px;line-height:1.7;color:var(--haw-ink);
  font-weight:500;margin-bottom:20px}
.haw-dir-b{position:relative;background:linear-gradient(150deg,var(--haw-green-l),var(--haw-cream));
  min-height:270px;display:grid;place-items:center;padding:30px}
.haw-dir-b img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0;opacity:.9}
.haw-dir-pin{position:relative;text-align:center}
.haw-dir-pin .haw-ico{width:56px;height:56px;margin:0 auto 12px;border-radius:50%;background:#fff;
  box-shadow:var(--haw-sh-lift)}
.haw-dir-pin .haw-ico svg{width:26px;height:26px}
.haw-dir-pin b{display:block;font:600 14.5px/1.4 var(--haw-ff-body);color:var(--haw-ink)}
/* The map fills its half of the panel edge to edge. */
.haw-dir-b.haw-dir-map{padding:0;min-height:420px;background:var(--haw-green-l)}
.haw-dir-map iframe{position:absolute;inset:0;width:100%;height:100%;border:0;display:block}
@media(max-width:991px){ .haw-dir{grid-template-columns:1fr} .haw-dir-b{min-height:210px;order:-1}
  .haw-dir-b.haw-dir-map{min-height:340px} }
@media(max-width:575px){
  .haw-dir-a{padding:22px 18px}
  .haw-dir-a address{font-size:15.8px;margin-bottom:16px}
  .haw-dir-b{min-height:160px}
  .haw-dir-b.haw-dir-map{min-height:300px}
}


/* --------------------------------------------------------------------------
   34. VERIFIED BY PSYCHOLOGY TODAY
   A plain factual badge linking to the profile, deliberately NOT a copy of
   Psychology Today's own logo or brand mark. If the practice would rather use
   the official badge, Psychology Today supplies the code for it and it drops
   into the same place.
   -------------------------------------------------------------------------- */
.haw-pt{display:inline-flex;align-items:center;gap:11px;padding:9px 17px 9px 12px;
  border-radius:999px;background:#fff;border:1px solid var(--haw-line);
  box-shadow:0 3px 12px rgba(19,51,42,.07);
  transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
.haw-pt:hover{transform:translateY(-2px);border-color:var(--haw-gold);
  box-shadow:0 8px 20px rgba(19,51,42,.11)}
.haw-pt .haw-ico{width:22px;height:22px}
.haw-pt .haw-ico svg > *{stroke:var(--haw-green);stroke-width:1.8}
.haw-pt-tx{display:flex;flex-direction:column;line-height:1.15;min-width:0}
.haw-pt-tx small{font:600 10px/1.3 var(--haw-ff-body);letter-spacing:.14em;
  text-transform:uppercase;color:var(--haw-gold-d)}
.haw-pt-tx b{font:600 13.6px/1.3 var(--haw-ff-body);color:var(--haw-ink);
  letter-spacing:-.1px;margin-top:2px;white-space:nowrap}

/* on the dark name plate */
.haw-pt.haw-pt-dark{background:rgba(255,255,255,.07);border-color:var(--haw-line-d);
  box-shadow:none}
.haw-pt.haw-pt-dark:hover{background:rgba(255,255,255,.12);border-color:var(--haw-gold-l)}
.haw-pt.haw-pt-dark .haw-ico svg > *{stroke:var(--haw-gold-l)}
.haw-pt.haw-pt-dark .haw-pt-tx small{color:var(--haw-gold-l)}
.haw-pt.haw-pt-dark .haw-pt-tx b{color:#fff}
.haw-plate .haw-pt{margin:20px auto 0;display:inline-flex}
.haw-plate-cta{text-align:center}

/* in the footer */
.haw-ft-pt{margin-top:18px}

@media(max-width:575px){
  .haw-pt{padding:8px 14px 8px 10px;gap:9px}
  .haw-pt .haw-ico{width:19px;height:19px}
  .haw-pt-tx b{font-size:12.8px}
  .haw-pt-tx small{font-size:9.4px}
}

/* --------------------------------------------------------------------------
   35. PHOTOGRAPHS
   Stock photography sits in the same frames the illustrations used, so the two
   can be swapped for real photographs of the practice without touching layout.
   -------------------------------------------------------------------------- */
.haw-split-art img,.haw-dir-b img{width:100%;height:100%;object-fit:cover;display:block}
.haw-split-art.haw-photo{background:var(--haw-green-l)}
.haw-split-art.haw-photo::after{content:"";position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(170deg,rgba(27,75,58,.06),rgba(201,162,39,.09));
  mix-blend-mode:multiply}

/* --------------------------------------------------------------------------
   36. PORTRAIT CARD  (About page: photograph beside the letter)
   -------------------------------------------------------------------------- */
.haw-pcard{position:relative;border-radius:var(--haw-r-lg);overflow:hidden;
  background:linear-gradient(158deg,var(--haw-green) 0%,var(--haw-green-d) 100%);
  box-shadow:var(--haw-sh-lift)}
.haw-pcard-img{position:relative;aspect-ratio:4/5;overflow:hidden;background:var(--haw-green-d)}
.haw-pcard-img img{width:100%;height:100%;object-fit:cover;object-position:center 14%}
.haw-pcard-body{position:relative;padding:28px 30px 30px;color:#fff}
.haw-pcard-bg{position:absolute;inset:0;opacity:.16;pointer-events:none;overflow:hidden}
.haw-pcard-bg img{position:absolute;right:-90px;bottom:-110px;width:300px;height:300px}
.haw-pcard-in{position:relative}
.haw-pcard h2{color:#fff;font-size:1.56rem;margin:0 0 5px;letter-spacing:-.5px}
.haw-pcard-role{font:600 11.5px/1.5 var(--haw-ff-body);letter-spacing:.17em;
  text-transform:uppercase;color:var(--haw-gold-l);margin:0}
.haw-pcard-pron{font-size:13.4px;color:rgba(255,255,255,.66);margin:6px 0 0}
.haw-pcard .haw-plate-l{margin-top:20px}
.haw-pcard .haw-pt{margin-top:20px}

@media(max-width:575px){
  .haw-portrait{width:140px;height:140px;margin-bottom:18px}
  .haw-pcard-body{padding:20px 18px 22px}
  .haw-pcard h2{font-size:1.32rem}
  .haw-pcard-img{aspect-ratio:1/1}
}


/* --------------------------------------------------------------------------
   37. WIDE FEATURE CARD
   A fifth card in a two column grid would otherwise sit alone in the last row
   and read as an accident. Spanning it is the deliberate version.
   -------------------------------------------------------------------------- */
.haw-card.haw-card-wide{grid-column:1/-1}
.haw-card.haw-card-wide .haw-ticks{grid-template-columns:1fr 1fr;display:grid;gap:14px 30px}
@media(max-width:767px){
  .haw-card.haw-card-wide .haw-ticks{grid-template-columns:1fr}
}

/* --------------------------------------------------------------------------
   38. CONTACT COLUMNS
   Both columns now sit under one section heading, so the form card no longer
   has to line its own heading up with a much larger one beside it.
   -------------------------------------------------------------------------- */
.haw-contact-page .haw-form h2{font-size:1.5rem;margin-bottom:8px}
.haw-contact-page .haw-form .haw-eyebrow{margin-bottom:12px}
@media(max-width:575px){
  .haw-contact-page .haw-form h2{font-size:1.3rem}
}


/* --------------------------------------------------------------------------
   39. ABOUT: the letter beside the portrait
   Centring a tall portrait card against shorter prose leaves the heading
   floating halfway down the photograph. Both columns start at the same top
   edge instead, and the prose gets the wider share, which also means the
   portrait renders smaller and therefore sharper.
   -------------------------------------------------------------------------- */
.haw-about-page .haw-split{align-items:start;grid-template-columns:.86fr 1.14fr}
@media(max-width:991px){
  .haw-about-page .haw-split{grid-template-columns:1fr}
  .haw-about-page .haw-pcard{max-width:430px}
}


/* --------------------------------------------------------------------------
   40. PHONE: the portrait and the verification badge
   Paying for the real photograph and the badge out of spacing, not out of copy.
   -------------------------------------------------------------------------- */
@media(max-width:575px){
  .haw-portrait{width:124px;height:124px;margin-bottom:15px;border-width:1.5px}
  .haw-plate .haw-pt{margin-top:15px}
  .haw-ft-pt{margin-top:14px}
  .haw-pcard-body{padding:18px 16px 20px}
  .haw-pcard .haw-plate-l{margin-top:16px}
  .haw-pcard .haw-pt{margin-top:16px}
  .haw-pcard-pron{font-size:12.8px;margin-top:5px}
}


/* --------------------------------------------------------------------------
   41. BRAND TAGLINE
   From the board. Set in the heading face, italic, so it reads as the brand
   line rather than as another sentence of body copy.
   -------------------------------------------------------------------------- */
.haw-ft-tag{font-family:var(--haw-ff-head);font-style:italic;font-weight:500;
  font-size:19px;line-height:1.35;color:var(--haw-gold-l);margin:18px 0 10px !important;
  max-width:24ch}
.haw-tagline{display:block;font-family:var(--haw-ff-head);font-style:italic;font-weight:500;
  font-size:clamp(1.2rem,2vw,1.45rem);line-height:1.35;color:var(--haw-gold-d);
  margin:0 0 20px}

/* Cormorant Garamond is a light, small x-height face. At UI sizes it needs a
   little more weight and size than a workhorse serif to hold the same presence,
   and the italic is genuinely italic rather than a slant, so it is safe to use. */
.haw-plate h2,.haw-pcard h2{font-weight:600;letter-spacing:-.2px}
.haw-quote blockquote{font-weight:500}
.haw-rail-n{font-weight:500}
.haw-404-n{font-weight:500}
.haw-sig b{font-size:21px;letter-spacing:-.2px}
.haw-card-n{font-weight:500}

@media(max-width:575px){
  .haw-ft-tag{font-size:17px;margin:14px 0 9px !important}
  .haw-tagline{font-size:1.12rem;margin-bottom:16px}
  .haw-logo-tx b{font-size:21px}
  .haw-logo-mk{width:38px;height:38px}
}


/* --------------------------------------------------------------------------
   42. DOCUMENT AND WORDPRESS
   The body class is added by the static <head> and by the theme, so the reset
   never needs a bare element selector. The WordPress admin bar is fixed at
   the top for a logged-in editor; the sticky header has to sit below it or it
   slides underneath. Below 600px the admin bar scrolls away, so it does not.
   -------------------------------------------------------------------------- */
.haw-body{margin:0;background:#fff}
.admin-bar .haw-hd{top:32px}
@media(max-width:782px){ .admin-bar .haw-hd{top:46px} }
@media(max-width:600px){ .admin-bar .haw-hd{top:0} }

/* ==========================================================================
   43. EDITORIAL PASS (October 2026)
   The first build read as a template: a dash-and-caps label over every
   heading, pill buttons with drop shadows, an icon in a circle on every card,
   a gradient blob behind the hero, everything fading in, and card grid after
   card grid. This section replaces that with the hawthorn illustration set
   (static/assets/img/art, made by build/art.py), paper texture, flatter
   controls, larger and lighter type, left-aligned asymmetric layouts and
   hairline-separated lists instead of boxes.

   It is appended rather than spliced in so the old rules stay readable as
   history; every rule here wins by order or by a doubled class, never by
   !important. Copy, contact details and legal text are unchanged.
   -------------------------------------------------------------------------- */

/* --- motion: content is simply there. No scroll fade-ins, no icon drawing. */
.haw-rv,.haw-rv.haw-vis{opacity:1;transform:none;transition:none}
.haw-rv:not(.haw-vis) .haw-ico svg > *,.haw-ico svg > *{stroke-dashoffset:0}
.haw-vis .haw-ico svg > *{animation:none}

/* --- illustrations */
.haw-art{display:block;height:auto;max-width:100%}

/* --- paper. Ivory sections read as printed paper rather than flat colour. */
.haw-hero,.haw-phero,.haw-warm,.haw-band,.haw-quote.haw-quote-lt{
  background-color:var(--haw-cream);
  background-image:url(../img/art/paper.webp?v=c82c99dcbc);background-size:320px 320px;background-repeat:repeat}

/* --- type: larger, lighter, more editorial. Cormorant at 500 holds up at
   display sizes; the body face is unchanged. */
.haw-page h1{font-size:clamp(2.8rem,6.2vw,5.4rem);font-weight:500;line-height:1.02;letter-spacing:-.012em}
.haw-page h2{font-size:clamp(2.1rem,4.2vw,3.5rem);font-weight:500;line-height:1.08;letter-spacing:-.008em}
.haw-page h3{font-weight:600}
.haw-lede{font-size:clamp(1.08rem,1.6vw,1.26rem)}

/* --- the label above a heading: kept on page heroes only, without the dash */
.haw-eyebrow::before{display:none}
.haw-eyebrow{letter-spacing:.2em;font-size:12px;margin-bottom:20px}

/* --- headings sit left, not centred: asymmetric reads as composed */
.haw-head.haw-center{text-align:left;margin-left:0;margin-right:0}
.haw-center .haw-lede{margin-left:0}
.haw-btns.haw-center,.haw-center .haw-btns{justify-content:flex-start}
.haw-head{max-width:760px;margin-bottom:64px}

/* --- more air between sections on large screens */
.haw-sec{padding:120px 0}
.haw-sec-t{padding:120px 0 0}

/* --- buttons: flat, square-cornered, one weight of border, no lift */
.haw-btn.haw-btn{border-radius:var(--haw-r-sm);border-width:1px;box-shadow:none;letter-spacing:.02em;padding:16px 26px}
.haw-btn:hover{transform:none}
.haw-btn.haw-btn-gold,.haw-btn.haw-btn-gold:hover,.haw-btn.haw-btn-green,.haw-btn.haw-btn-green:hover{box-shadow:none}
.haw-btn.haw-btn-ghost{border-color:var(--haw-green-m)}
.haw-btn.haw-btn-ghost:hover{border-color:var(--haw-green);background:transparent;color:var(--haw-green-d)}
.haw-hd-cta .haw-btn.haw-btn{padding:12px 20px}
.haw-pill.haw-pill{border-radius:var(--haw-r-sm)}
.haw-pt{border-radius:var(--haw-r-sm);box-shadow:none}
.haw-pt:hover{transform:none;box-shadow:none}

/* --- icons that remain (FAQ groups, contact routes): plain glyph, no disc */
.haw-ico.haw-ico-round{width:30px;height:30px;background:none;border:0;border-radius:0;box-shadow:none}
.haw-ico.haw-ico-round svg{width:26px;height:26px}

/* --- HERO: the hawthorn branch replaces the gradient blob and watermark,
   and the provider sits in it as a plate, not a dark card. */
.haw-hero-bg{opacity:1}
.haw-hero-bg .haw-art-hero{position:absolute;top:0;right:-7%;left:auto;width:auto;height:100%;max-width:none}
.haw-hero-in{grid-template-columns:1.12fr .88fr;padding:104px 0 112px;gap:72px}
.haw-hero-copy h1 em{font-style:italic;color:var(--haw-gold-d);white-space:normal}
.haw-hero-copy h1 em::after{display:none}
.haw-hero-note{background:none;border:0;border-left:2px solid var(--haw-gold);border-radius:0;
  box-shadow:none;padding:2px 0 2px 16px;max-width:430px;margin-top:36px}
.haw-hero .haw-plate{background:none;box-shadow:none;color:var(--haw-ink);padding:0;border-radius:0;
  overflow:visible;max-width:330px;justify-self:start;width:100%;position:relative;z-index:1}
.haw-hero .haw-portrait{width:100%;height:auto;aspect-ratio:4/5;border-radius:var(--haw-r-sm);
  border:0;margin:0 0 22px;box-shadow:0 1px 2px rgba(21,59,46,.12)}
.haw-hero .haw-portrait img{object-position:center 18%}
.haw-hero .haw-plate h2{color:var(--haw-green);text-align:left;font-size:1.9rem;margin-bottom:4px}
.haw-hero .haw-plate-role{text-align:left;color:var(--haw-gold-d);margin-bottom:18px}
.haw-hero .haw-plate-l{border-top:1px solid var(--haw-line);padding-top:16px;gap:8px}
.haw-hero .haw-plate-l li{color:var(--haw-text);font-size:14.6px}
.haw-hero .haw-plate-cta{text-align:left}
.haw-hero .haw-plate .haw-pt{margin:18px 0 0}

/* --- facts strip: typographic, no icons */
.haw-facts-g > div{padding:34px 28px}
.haw-facts-g b{font:500 1.42rem/1.2 var(--haw-ff-head);color:var(--haw-green);margin-bottom:6px}

/* --- statement band: a sprig in place of the quote mark */
.haw-quote .haw-quote-art{width:96px;margin:0 auto 22px}
.haw-quote blockquote{font-size:clamp(1.6rem,3.4vw,2.5rem)}

/* --- tiles become hairline-separated text, not tinted boxes */
.haw-tiles{gap:44px 48px}
.haw-tile{background:none;border-radius:0;padding:26px 0 0;border-top:1px solid var(--haw-line)}
.haw-tile:hover{transform:none;background:none;box-shadow:none}
.haw-tile h3{font-size:1.5rem;margin-bottom:10px}
.haw-tile .haw-tile-art{width:auto;height:72px;margin:0 0 16px}
/* check marks: a plain tick, no tinted disc */
.haw-ticks .haw-ico{background:none}
.haw-tile-gold{background:none}

/* --- journey: the four still lifes, numbered in the heading face */
.haw-jny{gap:40px 36px}
.haw-jny::before{display:none}
.haw-jny-s{text-align:left}
.haw-jny-dot{width:auto;height:190px;border:0;border-radius:0;background:none;display:flex;
  align-items:flex-end;justify-content:flex-start;margin:0 0 14px;box-shadow:none}
.haw-jny-s:hover .haw-jny-dot{box-shadow:none}
.haw-jny-dot .haw-jny-art{width:auto;height:auto;max-width:100%;max-height:100%;margin:0}
.haw-jny-s > .haw-jny-n{margin:0 0 8px}
.haw-jny-n.haw-jny-n{position:static;width:auto;height:auto;border-radius:0;background:none;
  color:var(--haw-gold-d);display:block;font:500 1.15rem/1 var(--haw-ff-head);letter-spacing:.04em}

/* --- "what you can expect" rows: a botanical accent instead of a disc */
.haw-row{grid-template-columns:76px 1fr;gap:26px;padding:30px 0}
.haw-row .haw-row-art{width:auto;height:58px;margin:0 auto}

/* --- split features: illustrations sit on the paper, unframed */
.haw-split-art{box-shadow:none;background:none}
.haw-split-art.haw-split-illus{aspect-ratio:auto;overflow:visible;border-radius:0;display:flex;justify-content:center}
.haw-split-illus .haw-art{position:static;width:100%;max-width:440px;height:auto;object-fit:contain}

/* --- services: an editorial list, not a card grid. Name and accent on the
   left, what is included on the right, hairlines between. */
.haw-cards{grid-template-columns:1fr;gap:0;border-top:1px solid var(--haw-line)}
.haw-card{background:none;border:0;border-bottom:1px solid var(--haw-line);border-radius:0;overflow:visible;
  padding:48px 0;display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);column-gap:64px;align-items:start}
.haw-card::before{display:none}
.haw-card:hover{transform:none;box-shadow:none;border-color:var(--haw-line)}
.haw-card > .haw-card-hd{grid-row:1 / span 2;flex-direction:column;align-items:flex-start;gap:12px;margin:0}
.haw-card > p,.haw-card > .haw-ticks{grid-column:2}
.haw-card .haw-card-art{width:auto;height:68px;order:-2}
.haw-card .haw-card-n{order:-1;font-size:1.1rem;color:var(--haw-gold-d)}
.haw-card h3{font-size:clamp(1.6rem,2.6vw,2.1rem);line-height:1.14}
.haw-card > p{font-size:1.06rem}
.haw-card .haw-ticks{margin-top:22px;padding-top:0;border-top:0}
.haw-card.haw-card-wide{grid-column:auto}

/* --- areas of support: hairline-topped entries, no boxes or icons */
.haw-areas{gap:40px 44px}
.haw-area{background:none;border:0;border-top:1px solid var(--haw-line);border-radius:0;padding:22px 0 0}
.haw-area:hover{transform:none;box-shadow:none;border-color:var(--haw-line)}
.haw-area h3{font-size:1.4rem;margin:0 0 10px}
.haw-area-tag{background:none;padding:0;border-radius:0;letter-spacing:.16em}

/* --- accordion: a plain plus, no ring */
.haw-acc-q::after{border:0;border-radius:0}
.haw-acc-i.haw-open .haw-acc-q::after{border:0}

/* --- dark call to action: flat deep green with the gold branch */
.haw-cta{background:var(--haw-green-d)}
.haw-cta-bg{opacity:1}
.haw-cta-bg .haw-art-dark-cta{position:absolute;right:0;bottom:0;left:auto;top:auto;
  width:min(62%,900px);height:auto}
/* The content keeps to the left so the branch has the right side to
   itself: art behind buttons and small print costs legibility. */
.haw-cta-in{padding:120px 0;max-width:880px;grid-template-columns:1.15fr .85fr}

/* --- bands: the accent sits where the icon disc was */
.haw-band-mk{width:120px;height:auto;border-radius:0;background:none;border:0;box-shadow:none;display:block}
.haw-band-mk .haw-art{width:100%}
.haw-band-mk.haw-ico{width:64px;height:64px;display:grid}
.haw-band-mk.haw-ico svg{width:42px;height:42px;color:var(--haw-gold-d)}
.haw-band-in{padding:84px 0}

/* --- inner page heroes: paper, and one accent on the right */
.haw-phero{padding:96px 0 84px}
.haw-phero .haw-phero-art{position:absolute;right:max(24px,calc((100% - 1180px) / 2 + 24px));bottom:34px;
  width:clamp(140px,15vw,210px);pointer-events:none}

/* --- contact routes: a hairline list, not four boxes */
.haw-ct-cards{gap:0;border-top:1px solid var(--haw-line)}
.haw-ct-card{background:none;border:0;border-bottom:1px solid var(--haw-line);border-radius:0;padding:24px 0}
.haw-ct-card:hover{box-shadow:none}
.haw-form{box-shadow:none}

/* --- footer: the gold branch, low, behind the brand column */
.haw-ft-bg{opacity:.3}
/* Bottom right, mirrored, clear of the brand column and the emergency box. */
.haw-ft-bg .haw-art-dark-footer{position:absolute;right:-60px;bottom:-60px;top:auto;left:auto;
  width:min(40vw,520px);height:auto;transform:scaleX(-1)}

@media(max-width:991px){
  .haw-hero-in{grid-template-columns:1fr;gap:48px;padding:72px 0 80px}
  .haw-hero .haw-plate{justify-self:start;max-width:420px}
  .haw-hero-bg .haw-art-hero{height:auto;width:110%;top:auto;bottom:-6%;right:-38%;opacity:.55}
  .haw-sec{padding:84px 0}
  .haw-sec-t{padding:84px 0 0}
  .haw-cta-in{padding:84px 0}
  .haw-phero .haw-phero-art{display:none}
  .haw-card{grid-template-columns:1fr;column-gap:0}
  .haw-card > .haw-card-hd{grid-row:auto;margin-bottom:14px}
  .haw-card > p,.haw-card > .haw-ticks{grid-column:1}
  .haw-cta-in{max-width:none}
  .haw-cta-bg .haw-art-dark-cta{width:90%;opacity:.4}
}

@media(max-width:575px){
  .haw-page h1{font-size:2.35rem;letter-spacing:-.01em}
  .haw-page h2{font-size:1.8rem;letter-spacing:-.005em}
  .haw-sec{padding:52px 0}
  .haw-sec-t{padding:52px 0 0}
  .haw-head{margin-bottom:30px}
  .haw-hero-in{padding:32px 0 44px;gap:30px}
  .haw-hero-bg{display:block}
  .haw-hero-bg .haw-art-hero{width:150%;right:-62%;bottom:auto;top:-30px;opacity:.28}
  /* the plate becomes a compact row: portrait beside the name */
  .haw-hero .haw-plate{max-width:none}
  .haw-hero .haw-plate-in{display:grid;grid-template-columns:104px 1fr;column-gap:16px;align-items:start}
  .haw-hero .haw-portrait{grid-row:1 / span 2;margin:0}
  .haw-hero .haw-plate h2{font-size:1.4rem;margin-top:4px}
  .haw-hero .haw-plate-role{margin-bottom:0}
  .haw-hero .haw-plate-l,.haw-hero .haw-plate-cta{grid-column:1 / -1;margin-top:14px}
  .haw-facts-g > div{padding:20px 14px}
  .haw-facts-g b{font-size:1.12rem}
  .haw-quote .haw-quote-art{width:70px;margin-bottom:16px}
  .haw-quote blockquote{font-size:1.4rem}
  .haw-tiles{gap:22px 16px}
  .haw-tile{padding:16px 0 0}
  .haw-tile h3{font-size:1.18rem}
  .haw-tile .haw-tile-art{height:50px;margin-bottom:10px}
  .haw-jny{gap:26px 14px}
  .haw-jny-dot{height:120px}
  .haw-row{grid-template-columns:48px 1fr;gap:14px;padding:16px 0}
  .haw-row .haw-row-art{height:42px}
  .haw-split-illus .haw-art{max-width:260px}
  .haw-card{padding:30px 0}
  .haw-card .haw-card-art{height:52px}
  .haw-areas{gap:22px 16px}
  .haw-area{padding:14px 0 0}
  .haw-area h3{font-size:1.08rem}
  .haw-band-mk{width:80px}
  .haw-band-in{padding:46px 0}
  .haw-cta-in{padding:52px 0}
  .haw-cta-bg .haw-art-dark-cta{width:140%;right:-45%;opacity:.35}
  .haw-phero{padding:46px 0 42px}
  .haw-ct-card{padding:18px 0}
  .haw-ft-bg .haw-art-dark-footer{width:90vw}
}
/* Between tablet and wide desktop the CTA content and the branch can meet;
   the branch steps back rather than sitting behind the buttons at full ink. */
@media(min-width:992px) and (max-width:1240px){
  .haw-cta-bg .haw-art-dark-cta{opacity:.45}
}
