/* Shared design tokens. Change brand colors and typography here. */
:root {
  --site-search-result-title-size: 1.2em;
  --result-image-column-width: 80px;
  --result-text-column-width: 300px;
  --result-table-row-background: #eee;
  --result-table-border: var(--color-footer-link);
  --payment-copy-color: #444444;
  --payment-phone-color: #336600;
  --profile-address-width: var(--brand-location-width);
  --profile-optional-details-width: 565.390625px;
  --template-input-border: #d8d8d8;
  --template-apply-width: 80px;
  --template-green-width: 257px;
  --template-input-width: 157px;
  --color-white: #fff;
  --color-black: #000;
  --color-forest: #003300;
  --color-footer: var(--color-forest);
  --color-olive: #a4a375;
  --color-sage: #bdbd9c;
  --color-hero: #c8c8ac;
  --color-ink: #333;
  --color-footer-link: #ccc;
  --font-body: Calibri, 'Trebuchet MS', Tahoma, Arial, Helvetica, sans-serif;
  --font-utility: Arial, Helvetica, sans-serif;
  --font-about-nav: Helvetica, Arial, sans-serif;
  --font-breadcrumb: Tahoma, Arial, Helvetic, sans-serif;
  --font-control: var(--font-utility);
  --font-size-body: 16px;
  --font-size-small: 12px;
  --site-width: 860px;
  --content-width: calc(var(--site-width) - 2 * var(--site-gutter));
  --page-content-width: var(--content-width);   /* alias for the plugin: Elementor containers redefine --content-width */
  --site-gutter: 40px;
  /* Shared section dimensions; retain the original fixed desktop geometry. */
  --header-top-height: 14px;
  --header-min-height: 434px;
  --brand-width: 293px;
  --brand-height: 68px;
  --brand-top-gap: 20px;
  --brand-bottom-gap: 12px;
  --hero-height: 314px;
  --hero-image-width: 423px;
  --hero-image-height: 290px;
  --hero-frame-width: 433px;
  --hero-frame-height: 300px;
  --hero-copy-width: 330px;
  --hero-copy-top-gap: 30px;
  --hero-copy-left-gap: 15px;
  --hero-copy-font-size: var(--font-size-control);
  --hero-copy-line-height: var(--line-height-compact);
  --hero-heading-font-size: var(--font-size-body);
  --hero-heading-line-height: 20px;
  --navigation-height: 43px;
  --navigation-cap-width: 10px;
  --navigation-inner-width: calc(var(--content-width) - 2 * var(--navigation-cap-width));
  --main-min-height: 450px;
  --main-footer-gap: 153px;
  --sidebar-width: 261px;
  --home-content-width: 509px;
  --footer-height: 137px;
  --footer-content-height: 120px;
  --footer-right-gap: 98px;
  --footer-content-width: calc(var(--site-width) - var(--footer-right-gap));
  --about-nav-column-width: 29.7443%;
  --about-content-column-width: 69.2557%;
  --about-column-padding: 8px;
  --about-region-width: 99%;
  --about-nav-content-height: 697px;
  --about-nav-font-size: var(--font-size-control);
  --article-font-size: var(--font-size-content);
  --article-heading-font-size: var(--font-size-heading);
  --testimonial-content-width: 480px;
  --testimonial-content-height: 278px;

  /* Type scale: component aliases refer here instead of duplicating values. */
  --font-size-micro: 10px;
  --font-size-tiny: 11px;
  --font-size-control: 13px;
  --font-size-native-control: 13.3333px;
  --site-search-input-width: 317px;
  --payment-input-width: 100px;
  --payment-input-height: 21px;
  --payment-cc-field-offset: 34px; /* PayMyBillCC: two empty <br> lines of the 14px bold h2 */
  --font-size-content: 14px;
  --font-size-label: 15px;
  --font-size-heading: 18px;
  --font-size-empty-result: 24px; /* /search/procedures and /search/doc/2 "Sorry, but your search didn't return any results." */
  --font-size-dialog: 17.6px;
  --font-weight-normal: 400;
  --font-weight-strong: 700;
  --font-dialog: Verdana, Arial, sans-serif;
  --line-height-compact: 18px;

  /* jQuery UI appearance retained from the reference. */
  --color-dialog-border: #aaa;
  --color-dialog-text: #222;
  --color-dialog-header: var(--color-footer-link);
  --color-dialog-button-border: #d3d3d3;
  --color-dialog-button-background: #e6e6e6;
  --color-dialog-button-text: #555;
  --color-dialog-button-active-border: #999;
  --color-dialog-button-active-text: #212121;

  /* Shared branding, navigation, form and footer dimensions. */
  --brand-lockup-width: 497px;
  --brand-lockup-height: 74px;
  --navigation-font-size: var(--font-size-content);
  --navigation-line-height: 17px;
  --navigation-divider-width: var(--space-4);
  --navigation-divider-height: 34px;
  --navigation-list-left-gap: 47px;
  --skip-link-hidden-top: -50px;
  --focus-border-width: 2px;
  --search-content-width: 197px;
  --search-input-width: 171px;
  --search-input-height: 19px;
  --search-row-height: 22px;
  --search-label-height: 14px;
  --search-title-height: 21px;
  --search-select-width: 194px;
  --search-select-height: 23px;
  --search-submit-left: 199px;
  --search-submit-width: 25px;
  --border-width: 1px;
  --social-group-width: 70px;
  --social-icon-size: 27px;
  --footer-links-width: 600px;

  /* Component geometry kept explicit; equal numbers need not mean the same role. */
  --testimonial-heading-height: 52px;
  --testimonial-stage-height: 304px;
  --testimonial-photo-width: 130px;
  --testimonial-photo-height: 95px;
  --testimonial-photo-radius: 17px;
  --testimonial-art-left: -21px;
  --location-min-height: 142px;
  --location-text-width: 345px;
  --location-address-width: 330px;
  --location-image-column-width: 158px;
  --dialog-content-width: 600px;
  --dialog-outer-width: 609.03125px;
  --dialog-outer-height: 812.09375px;
  --dialog-padding: 3.52px;
  --dialog-radius: 4px;
  --dialog-space-small: 1.76px;
  --dialog-space-medium: 5.28px;
  --dialog-space-button: 7.04px;
  --dialog-space-large: 8.8px;
  --dialog-close-width: 19px;
  --dialog-close-height: 18px;
  --dialog-icon-size: 16px;
  --dialog-icon-offset-x: -96px;
  --dialog-icon-offset-y: -128px;
  --dialog-scrollbar-width: 15px;
  --dialog-button-line-height: 1.4;
  --procedure-dialog-outer-width: 569.03125px;
  --dialog-grip-size: 14px;
  --dialog-grip-inset: 3px;
  --dialog-grip-offset-x: -80px;
  --dialog-grip-offset-y: -224px;
  /* jquery.ui.resizable hit widths left visible by .ui-dialog {overflow:hidden} (edge 7px, corner 9px handles at -5px) and the dialog() options */
  --dialog-resize-hit-edge: 3px;
  --dialog-resize-hit-corner: 5px;
  --dialog-min-size: 150px;
  --dialog-max-width: 900px;
  --procedure-dialog-max-width: 840px;
  --color-dialog-button-focus-background: #dadada;

  /* Original spacing scale, reused by all component styles. */
  --space-1: 1px;
  --space-2: 2px;
  --space-3: 3px;
  --space-4: 4px;
  --space-5: 5px;
  --space-6: 6px;
  --space-7: 7px;
  --space-8: 8px;
  --space-9: 9px;
  --space-10: 10px;
  --space-12: 12px;
  --space-13: 13px;
  --space-14: 14px;
  --space-15: 15px;
  --space-16: 16px;
  --space-18: 18px;
  --space-19: 19px;
  --space-20: 20px;
  --space-24: 24px;
  --space-26: 26px;
  --space-30: 30px;
  --space-32: 32px;
  --space-40: 40px;
  --space-45: 45px;

  /* Intrinsic media dimensions are fallback HTML attributes, not a second design source. */
  --brand-location-width: 200px;
  --brand-location-height: 50px;
  --hero-native-image-width: 424px;
  --hero-native-image-height: 286px;
  --footer-wordmark-width: 290px;
  --footer-wordmark-height: 27px;
  --search-go-width: 26px;
  --search-go-height: var(--search-row-height);
  --location-image-width: 149px;
  --location-image-height: 125px;
  --testimonial-wordmark-width: 300px;
  --testimonial-wordmark-height: 50px;

  /* Procedure category and original article photo. */
  --procedure-category-font-size: 32px;
  --procedure-image-width: var(--hero-native-image-width);
  --procedure-image-height: var(--hero-native-image-height);
  /* Editorial text, contact tables and embedded map. */
  --editorial-heading-font-size: var(--procedure-category-font-size);
  --font-contact: Tahoma, Arial, Helvetica, sans-serif;
  --font-contact-heading: Arial, Tahoma, Helvetica, sans-serif;
  --color-contact-divider: #b5b5b5;
  --color-legacy-table-border: #ccc; /* Drupal system.theme.css tbody border-top in legacy editorial tables */
  --color-map-link: #0000ff;
  /* Drupal system.messages.css .messages.error and form .error (invalid filter value on the search views). */
  --color-message-error-background: #fef5f1;
  --color-message-error-border: #ed541d;
  --color-message-error-text: #8c2e0b;
  --color-form-error-border: #f00;
  --message-error-icon-offset: 8px;
  --message-error-icon-padding: 50px;
  --form-error-border-width: 2px;
  --contact-rule-width: 800px;
  --contact-width: 810px;
  --contact-copy-width: 530px;
  --contact-line-height: 24px;
  --contact-photo-column-width: 260px;
  --contact-image-width: 257px;
  --contact-image-height: 220px;
  --editorial-map-width: 760px;
  --editorial-map-height: 600px;
  --staff-card-photo-column-width: 190px;
  --landing-keyword-label-gap: 42px;
  --landing-view-all-gap: 44px;
  --payment-panel-column-width: 510px;
  --payment-submit-offset: 215px;
  --payment-submit-content-width: 115px;
  --payment-thanks-line-height: 1.538;
  --landing-specialty-row-offset: -26px;
  --template-media-width-424: 424px;
  --template-media-height-286: 286px;
  --template-media-width-280: 280px;
  --template-media-height-420: 420px;
  --template-media-width-200: 200px;
  --template-media-height-126: 126px;
  --template-media-width-430: 430px;
  --template-media-height-287: 287px;
  --template-media-width-165: 165px;
  --template-media-height-165: 165px;
  --template-media-width-130: 130px;
  --template-media-height-95: 95px;
  --template-media-width-178: 178px;
  --template-media-height-258: 258px;
  --template-media-height-257: 257px;
  --template-media-width-300: 300px;
  --template-media-height-50: 50px;
  --template-media-width-69: 69px;
  --template-media-height-100: 100px;
  --template-media-width-71: 71px;
}
