  html { scroll-behavior: smooth; }
  body { margin: 0; background: #F5F0E6; color: #12293D; font-family: "Inter","Helvetica Neue",Arial,sans-serif; -webkit-font-smoothing: antialiased; }
  a { color: #12293D; text-decoration: none; }
  a:hover { color: #8A6512; }
  *:focus-visible { outline: 2px solid #8A6512; outline-offset: 3px; }
  #contact-form button:disabled { opacity: .7; cursor: wait; }
  #contact-form-status[data-status="error"] { color: #F2A79B !important; }
  #contact-form-status[data-status="success"] { color: #B8D8B5 !important; }
  #contact-form input, #contact-form select, #contact-form textarea { scroll-margin-top: 120px; }

  /* Submit button spinner */
  .hdt-submit { gap: 10px; }
  .hdt-btn-spinner { display: none; width: 14px; height: 14px; border: 2px solid currentColor; border-right-color: transparent; border-radius: 50%; box-sizing: border-box; }
  .hdt-submit[data-status="sending"] .hdt-btn-spinner { display: inline-block; animation: hdtSpin 700ms linear infinite; }
  @keyframes hdtSpin { to { transform: rotate(360deg); } }

  /* Inline status: fades in on each state change; errors get a visible box */
  .hdt-form-status[data-status="sending"] { animation: hdtStatusSending 260ms ease both; }
  .hdt-form-status[data-status="success"] { animation: hdtStatusSuccess 320ms cubic-bezier(.22,1,.36,1) both; }
  .hdt-form-status[data-status="error"] { display: inline-block; padding: 10px 14px; background: rgba(242,167,155,.10); border-left: 2px solid #F2A79B; animation: hdtStatusError 420ms cubic-bezier(.22,1,.36,1) both; }
  @keyframes hdtStatusSending { from { opacity: 0; } to { opacity: 1; } }
  @keyframes hdtStatusSuccess { from { opacity: 0; transform: translateY(4px); } to { opacity: 1; transform: none; } }
  @keyframes hdtStatusError { 0% { opacity: 0; transform: translateX(0); } 20% { opacity: 1; transform: translateX(-6px); } 40% { transform: translateX(5px); } 60% { transform: translateX(-3px); } 80% { transform: translateX(2px); } 100% { opacity: 1; transform: none; } }

  @media (prefers-reduced-motion: reduce) {
    .hdt-form-status { animation: none !important; }
    .hdt-submit[data-status="sending"] .hdt-btn-spinner { animation-duration: 1.6s; }
  }
  #contact-form input:focus-visible, #contact-form select:focus-visible, #contact-form textarea:focus-visible { outline-color: #C0902F; }
  @media(max-width:520px) { #contact-form > div[style*="grid-template-columns"] { grid-template-columns:minmax(0,1fr) !important; } }
  ::selection { background: rgba(192,144,47,.25); }
  @keyframes hdtLine { from { transform: scaleX(0); } to { transform: scaleX(1); } }
  @keyframes hdtPanel { from { transform: translateY(-8px); } to { transform: none; } }
  section[id], form[id] { scroll-margin-top: 96px; }
  .hdt-page {
    --section-title-size: clamp(34px, 4.4vw, 72px);
    --section-body-size: clamp(16px, 1.15vw, 18px);
    --section-service-size: var(--section-body-size);
    --section-leading: 1.55;
    --section-grid-columns: minmax(0, 5fr) minmax(0, 7fr);
    --section-grid-gap: clamp(32px, 6vw, 90px);
  }
  .hdt-container { box-sizing: border-box; width: 100%; max-width: 1320px; margin-inline: auto; padding-inline: clamp(20px,4vw,48px); }
  [data-topbar] { border-bottom: 1px solid transparent; transition: background 280ms, backdrop-filter 280ms, border-color 280ms; }
  [data-topbar] [data-topbar-inner] { height: clamp(64px,7vw,88px); transition: height 280ms cubic-bezier(.22,1,.36,1); }
  [data-topbar] [data-topbar-logo] { height: clamp(38px,4.6vw,54px); transition: height 280ms cubic-bezier(.22,1,.36,1); }
  [data-topbar] [data-topbar-cta] { height: 48px; transition: height 280ms, background 280ms, transform 280ms; }
  [data-topbar] [data-topbar-toggle] { height: 48px; transition: height 280ms; }
  [data-topbar][data-condensed] { background: rgba(245,240,230,.9); backdrop-filter: blur(14px); -webkit-backdrop-filter: blur(14px); border-bottom-color: rgba(18,41,61,.08); }
  [data-topbar][data-condensed] [data-topbar-inner] { height: 60px; }
  [data-topbar][data-condensed] [data-topbar-logo] { height: 38px; }
  [data-topbar][data-condensed] [data-topbar-cta], [data-topbar][data-condensed] [data-topbar-toggle] { height: 40px; }
  .nav-dropdown { position: relative; }
  .nav-dropdown > summary { list-style: none; cursor: pointer; display: inline-flex; align-items: center; gap: 7px; font-size: 11px; font-weight: 500; letter-spacing: .14em; text-transform: uppercase; }
  .nav-direct-link { display: inline-flex; align-items: center; font-size: 11px; font-weight: 500; letter-spacing: .14em; text-transform: uppercase; transition: color 180ms; }
  .nav-dropdown > summary::-webkit-details-marker, .mobile-nav-dropdown > summary::-webkit-details-marker { display: none; }
  .nav-dropdown > summary span { color: #8A6512; font-size: 14px; transition: transform 220ms; }
  .nav-dropdown[open] > summary span, .nav-dropdown:hover > summary span, .nav-dropdown:focus-within > summary span { transform: rotate(180deg); }
  .nav-submenu { position: absolute; top: 100%; left: -20px; z-index: 65; display: none; min-width: 260px; max-width: 340px; padding: 10px; flex-direction: column; gap: 2px; background: #FBF7EF; border: 1px solid rgba(18,41,61,.12); box-shadow: 0 16px 40px rgba(18,41,61,.14); }
  .nav-dropdown[open] > .nav-submenu, .nav-dropdown:hover > .nav-submenu, .nav-dropdown:focus-within > .nav-submenu { display: flex; animation: hdtDropdownIn 200ms cubic-bezier(.22,1,.36,1) both; }
  .nav-submenu a { padding: 11px 12px; color: #12293D; font-size: 12px; line-height: 1.4; letter-spacing: .02em; text-transform: none; transition: background 180ms,color 180ms; }
  .nav-submenu a:hover, .nav-submenu a:focus-visible { background: rgba(192,144,47,.10); color: #8A6512; }
  @keyframes hdtDropdownIn { from { opacity: 0; transform: translateY(-6px); } to { opacity: 1; transform: translateY(0); } }
  .mobile-nav-groups { display: flex; flex: 1; min-height: 0; flex-direction: column; gap: 12px; }
  .mobile-nav-dropdown { color: #F5F0E6; }
  .mobile-nav-dropdown > summary { list-style: none; cursor: pointer; display: flex; align-items: baseline; gap: 16px; font-family: 'Cormorant Garamond',serif; font-size: 34px; line-height: 1.18; }
  .mobile-nav-direct-link { display: flex; align-items: baseline; gap: 16px; color: #F5F0E6; font-family: 'Cormorant Garamond',serif; font-size: 34px; line-height: 1.18; }
  .mobile-nav-direct-link:hover, .mobile-nav-direct-link:focus-visible { color: #C0902F; }
  .mobile-nav-number { flex: 0 0 24px; font: 11px Inter,Arial,sans-serif; letter-spacing: .14em; color: #C0902F; }
  .mobile-nav-chevron { margin-left: auto; font: 18px Inter,Arial,sans-serif; color: #C0902F; transition: transform 220ms; }
  .mobile-nav-dropdown[open] > summary .mobile-nav-chevron { transform: rotate(180deg); }
  .mobile-nav-submenu { display: none; flex-direction: column; gap: 4px; padding: 14px 0 4px 40px; }
  .mobile-nav-dropdown[open] > .mobile-nav-submenu { display: flex; animation: hdtDropdownIn 240ms cubic-bezier(.22,1,.36,1) both; }
  .mobile-nav-submenu a { color: rgba(245,240,230,.78); font-size: 15px; line-height: 1.35; padding: 8px 0; }
  .mobile-nav-submenu a:hover, .mobile-nav-submenu a:focus-visible { color: #C0902F; }
  .mobile-nav-contact { display: inline-flex; align-items: center; justify-content: center; width: auto; height: 48px; min-height: 0; margin: auto auto 0; padding: 0 24px; border: 1px solid #14304A; border-radius: 2px; background: #14304A; color: #FBF7EF; font: 500 12px Inter,Arial,sans-serif; letter-spacing: .08em; text-transform: uppercase; text-align: center; cursor: pointer; transition: background 220ms,border-color 220ms,transform 220ms; }
  .mobile-nav-contact:hover { background: #091A2C; border-color: #091A2C; color: #FBF7EF; transform: translateY(-1px); }
  [data-stack] { isolation: isolate; }
  [data-stack-item] { box-sizing: border-box; width: 100%; height: 100svh; min-height: 100svh; overflow: hidden; }
  [data-stack-item] > [data-grid="split"] { box-sizing: border-box; max-height: 100%; min-height: 0; }
  #administrative [data-admin-choices] { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); border-bottom: 1px solid rgba(18,41,61,.12); }
  #administrative [data-admin-choice] { min-width: 0; min-height: clamp(52px,7vh,70px); display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 10px 16px 10px 0; background: transparent; border: 0; border-top: 1px solid rgba(18,41,61,.12); cursor: pointer; text-align: left; color: #4A5A6B; font-family: 'Cormorant Garamond',serif; font-size: clamp(18px,1.65vw,24px); line-height: 1.15; }
  #administrative [data-admin-choice]:nth-child(odd) { margin-right: 16px; }
  #administrative [data-admin-choice][aria-pressed="true"] { color: #8A6512; }
  #administrative [data-admin-list] { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: clamp(8px,1.4vh,16px) clamp(20px,3vw,48px); }
  #administrative [data-admin-list] li { min-width: 0; }
  #administrative { z-index: 1; }
  #advisory { z-index: 2; }
  #litigation { z-index: 3; }
  #media-highlight { z-index: 4; }
  #litigation [data-litigation-heading] { grid-column: 1; min-width: 0; }
  #litigation [data-litigation-list] { grid-column: 2; min-width: 0; }
  #litigation [data-litigation-art] { display: block; width: 100%; max-width: 520px; max-height: 37svh; margin: clamp(20px,3vh,36px) 0 0; object-fit: contain; object-position: left center; filter: drop-shadow(0 12px 20px rgba(0,0,0,.28)); }
  .hdt-page[data-stack-motion-ready] [data-stack-item] [data-reveal] {
    will-change: opacity, transform;
    transition: opacity 520ms cubic-bezier(.22,1,.36,1) var(--reveal-delay,0ms), transform 520ms cubic-bezier(.22,1,.36,1) var(--reveal-delay,0ms) !important;
  }
  .hdt-page[data-stack-motion-ready] [data-stack-item] [data-motion-visual] { transition-duration: 680ms !important; }
  .hdt-page[data-stack-motion-ready] [data-stack-item]:not([data-entered]) [data-reveal] { opacity: 0; transform: translateY(16px); }
  .hdt-page[data-stack-motion-ready] [data-stack-item]:not([data-entered]) [data-motion-visual] { transform: translateY(24px) scale(.985); }
  .hdt-page[data-stack-motion-ready] [data-stack-item][data-entered] [data-reveal] { opacity: 1; transform: none; }
  .hdt-page[data-stack-motion-ready] [data-stack-item][data-entered] [data-reveal] { will-change: auto; }
  .hdt-page[data-stack-motion-ready] [data-stack-item] [data-motion-number],
  .hdt-page[data-stack-motion-ready] [data-stack-item] [data-motion-eyebrow] { transition-duration: 400ms !important; }
  .hdt-page[data-stack-motion-ready] [data-stack-item] [data-motion-heading] { transition-duration: 600ms !important; }
  .hdt-page[data-stack-motion-ready] [data-stack-item] [data-motion-support] { transition-duration: 480ms !important; }
  .hdt-page[data-stack-motion-ready] [data-stack-item] [data-motion-cta] { transition-duration: 420ms !important; }
  .hdt-page[data-stack-motion-ready] [data-stack-item]:not([data-entered]) [data-motion-number],
  .hdt-page[data-stack-motion-ready] [data-stack-item]:not([data-entered]) [data-motion-eyebrow] { transform: translateY(8px); }
  .hdt-page[data-stack-motion-ready] [data-stack-item]:not([data-entered]) [data-motion-heading] { transform: translateY(20px); }
  .hdt-page[data-stack-motion-ready] [data-stack-item]:not([data-entered]) [data-motion-support] { transform: translateY(12px); }
  .hdt-page[data-stack-motion-ready] [data-stack-item]:not([data-entered]) [data-motion-cta] { transform: translateY(10px); }
  .hdt-page[data-stack-motion-ready] [data-stack-item]:not([data-entered]) [data-motion-ornament] { transform: scaleX(0); }
  @media (max-width: 899px) {
    [data-stack] { --section-title-size: clamp(29px,7.5vw,42px); --section-body-size: clamp(12px,3.4vw,15px); --section-service-size: var(--section-body-size); --section-leading: 1.35; --section-grid-gap: clamp(12px,2vh,22px); }
    [data-stack-item] { padding-top: clamp(64px,9vh,88px) !important; padding-bottom: clamp(18px,4vh,36px) !important; }
    [data-stack-item] > [data-grid="split"] { align-content: start; }
    #administrative figure { max-width: 150px !important; margin-top: 12px !important; }
    #advisory figure, #media-highlight [data-motion-visual] { display: none !important; }
    #administrative [data-admin-choice] { min-height: 44px; padding: 6px 8px 6px 0; font-size: clamp(15px,4.2vw,19px); }
    #administrative [data-admin-list] { column-gap: 12px; row-gap: 7px; }
    #administrative [data-admin-list] li { gap: 7px !important; }
    #litigation [data-litigation-heading], #litigation [data-litigation-list] { grid-column: auto; }
    #litigation [data-litigation-art] { max-height: 16svh; max-width: 250px; margin-top: 10px; }
    #advisory ol li, #litigation ul li { padding: 7px 0 !important; }
    #media-highlight ul { gap: 6px !important; margin-bottom: 14px !important; }
    #media-highlight [data-media-copy] > p { margin-bottom: 12px !important; }
    .hdt-page[data-stack-motion-ready] [data-stack-item]:not([data-entered]) [data-reveal] { transform: translateY(12px); }
    .hdt-page[data-stack-motion-ready] [data-stack-item]:not([data-entered]) [data-motion-visual] { transform: translateY(18px) scale(.995); }
    .hdt-page[data-stack-motion-ready] [data-stack-item]:not([data-entered]) [data-motion-ornament] { transform: scaleX(0); }
  }
  @media (max-width: 699px) {
    #who-we-serve { padding-top: 48px !important; padding-bottom: 48px !important; }
    #who-we-serve #audience-title { margin-bottom: 28px !important; }
    #who-we-serve [data-grid="audience"] > div { min-height: 0 !important; padding: 20px !important; justify-content: flex-start !important; gap: 20px !important; }
    #administrative figure { display: none !important; }
    [data-stack-item] [data-motion-number] { display: none; }
    [data-stack-item] [data-motion-eyebrow] { margin-top: 0 !important; margin-bottom: 10px !important; }
    [data-stack-item] [data-motion-heading] { line-height: 1.05 !important; }
    #administrative [data-admin-choice] { min-height: 38px; font-size: clamp(14px,4vw,17px); }
    #administrative [data-panel] { margin-top: 12px !important; }
    #administrative [data-panel] h3 { display: none; }
    #media-highlight ul { display: grid !important; grid-template-columns: repeat(2,minmax(0,1fr)); column-gap: 12px; }
    #media-highlight ul li { gap: 6px !important; }
    #media-highlight [data-media-copy] > a { height: 42px !important; }
  }
  @media (max-height: 700px) {
    [data-stack] { --section-title-size: clamp(28px,3.6vw,56px); --section-body-size: clamp(12px,1vw,16px); --section-service-size: var(--section-body-size); --section-grid-gap: clamp(16px,3vw,46px); }
    [data-stack-item] { padding-top: 60px !important; padding-bottom: 16px !important; }
    #administrative figure { max-width: 180px !important; margin-top: 12px !important; }
    #administrative [data-admin-choice] { min-height: 44px; }
    #advisory figure { max-width: 250px !important; margin-top: 12px !important; }
    #litigation [data-litigation-art] { max-height: 24svh; margin-top: 12px; }
    #media-highlight [data-motion-visual] { max-height: 24svh !important; }
  }
  @media (max-width: 359px) {
    [data-stack] { --section-title-size: 28px; --section-grid-gap: 8px; }
    [data-stack-item] { padding-top: 52px !important; padding-bottom: 10px !important; }
    [data-stack-item] [data-motion-ornament] { display: none; }
    #administrative [data-admin-choice] { min-height: 34px; font-size: 14px; }
    #administrative [data-admin-list] { row-gap: 4px; }
    #administrative [data-panel] { margin-top: 8px !important; }
    #litigation [data-litigation-art] { max-height: 12svh; }
  }
  @media (prefers-reduced-motion: reduce) {
    html { scroll-behavior: auto; }
    *, *::before, *::after { animation: none !important; transition: none !important; }
  }

/* Advisory service rows link to their matching detail pages. */
#advisory .advisory-service-link:hover,
#advisory .advisory-service-link:focus-visible { text-decoration: underline !important; text-decoration-color: #8A6512 !important; text-underline-offset: 5px; }

#litigation .litigation-detail-link:hover,
#litigation .litigation-detail-link:focus-visible,
#media-highlight .media-detail-link:hover,
#media-highlight .media-detail-link:focus-visible { text-decoration: underline !important; text-decoration-color: #C0902F !important; text-underline-offset: 4px; }

/* Direct contact channels (contact section) */
.hdt-contact-channels{list-style:none;margin:clamp(32px,4vw,48px) 0 0;padding:clamp(24px,3vw,32px) 0 0;border-top:1px solid rgba(245,240,230,.16);display:flex;flex-direction:column;gap:16px;font-family:"Inter","Helvetica Neue",Arial,sans-serif}
.hdt-contact-channels li{display:grid;grid-template-columns:22px minmax(0,1fr);column-gap:14px;row-gap:2px;align-items:baseline}
.hdt-contact-channels i{grid-row:span 2;font-size:20px;line-height:1;color:#C0902F;align-self:start;margin-top:1px}
.hdt-contact-channels-label{font-size:11px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:#C6CFD8}
.hdt-contact-channels-label a{color:inherit;text-decoration:none}
.hdt-contact-channels li>a{color:#F5F0E6;font-size:16px;line-height:1.5;text-decoration:none;overflow-wrap:anywhere;transition:color 180ms}
.hdt-contact-channels a:hover,.hdt-contact-channels a:focus-visible{color:#C0902F;text-decoration:underline;text-underline-offset:4px}
