:root {
  --font-main: "Trebuchet MS", "Segoe UI", Arial, sans-serif;
  --font-text: "Segoe UI", Arial, sans-serif;

  --ink: #24323a;
  --ink-soft: #52636b;
  --muted: #74858c;
  --paper: #ffffff;
  --transparent: transparent;
  --mist: #f5fbfb;
  --mist-strong: #edf8f8;
  --line: #dcebec;

  --aqua: #48d8d1;
  --aqua-dark: #15aaa7;
  --aqua-deep: #079290;
  --aqua-soft: #cdf8f4;
  --aqua-pale: #e8fffc;
  --orange: #f36f2d;
  --orange-dark: #d95a1d;
  --gold: #f4b300;

  --facebook: #4267b2;
  --twitter: #1da1f2;
  --instagram: #262626;
  --tiktok: #4b5563;
  --linkedin: #167ab5;
  --pinterest: #cf2036;

  --color-focus: var(--orange);
  --color-link-hover: var(--orange);
  --color-nav-active-underline: var(--gold);

  --shadow-header: 0 1px 0 rgb(0 0 0 / 4%);
  --shadow-card: 0 10px 28px rgb(33 78 88 / 10%);
  --shadow-soft: 0 18px 45px rgb(20 151 148 / 16%);

  --site-min-width: 320px;
  --shell: 1120px;
  --shell-wide: 1340px;
  --shell-narrow: 700px;
  --shell-gutter: 2rem;
  --shell-100-pourcent: 100%;

  --radius-sm: 4px;
  --radius-md: 7px;
  --radius-pill: 999px;
  --radius-round: 50%;

  --border-size-sm: 1px;
  --border-size-md: 3px;
  --border-size-lg: 4px;

  --space-2xs: 0.25rem;
  --space-xs: 0.5rem;
  --space-sm: 0.75rem;
  --space-md: 1rem;
  --space-lg: 1.5rem;
  --space-xl: 2rem;
  --space-2xl: 3rem;
  --space-3xl: 4.5rem;
  --space-4xl: 6rem;

  --line-height-body: 1.55;
  --line-height-heading: 1.18;
  --line-height-relaxed: 1.75;

  --text-xs: clamp(0.72rem, 0.69rem + 0.1vw, 0.78rem);
  --text-sm: clamp(0.82rem, 0.8rem + 0.12vw, 0.9rem);
  --text-md: clamp(0.96rem, 0.92rem + 0.2vw, 1.06rem);
  --text-lg: clamp(1.15rem, 1.05rem + 0.35vw, 1.35rem);
  --text-xl: clamp(1.55rem, 1.32rem + 0.72vw, 2rem);
  --text-2xl: clamp(2rem, 1.58rem + 1.2vw, 2.75rem);
  --text-nav: clamp(1rem, 0.9rem + 0.22vw, 1.18rem);
  --text-intro-title: clamp(2.25rem, 1.72rem + 1.55vw, 3.35rem);
  --text-intro-copy: clamp(1.03rem, 0.95rem + 0.22vw, 1.2rem);
  --text-social-mini: 0.68rem;

  --z-skip-link: 30;
  --z-header: 10;

  --focus-outline-width: 3px;
  --focus-outline-offset: 3px;
  --skip-link-hidden-transform: translateY(-150%);
  --skip-link-visible-transform: translateY(0);

  --header-min-height: 165px;
  --header-logo-width: clamp(135px, 9vw, 170px);
  --header-layout-gap: clamp(5rem, 11vw, 12rem);
  --header-mobile-min-height: 150px;
  --header-mobile-logo-width: 118px;
  --social-mini-size: 25px;
  --social-mini-radius: 3px;
  --social-mini-gap: 0.42rem;
  --nav-gap: clamp(1.65rem, 3.2vw, 3.4rem);
  --nav-underline-height: 3px;
  --nav-link-padding-bottom: 0.35rem;
  --transition-fast: 160ms ease;

  --hero-height: clamp(420px, 39vw, 560px);
  --hero-image-position: center 56%;
  --hero-overlay-start: rgb(255 255 255 / 4%);
  --hero-overlay-end: rgb(255 255 255 / 8%);

  --wave-height: clamp(44px, 7vw, 92px);
  --wave-fill: var(--aqua);
  --wave-fill-soft-opacity: 0.33;
  --wave-fill-mid-opacity: 0.66;
  --wave-after-hero-height: 52px;
  --wave-break-height: clamp(72px, 11vw, 125px);

  --intro-copy-max-width: 760px;
  --intro-paw-width: 42px;
  --intro-paw-height: 39px;
  --intro-paw-body-right: 9px;
  --intro-paw-body-bottom: 2px;
  --intro-paw-body-width: 21px;
  --intro-paw-body-height: 20px;
  --intro-paw-toe-size: 6px;
  --intro-paw-toe-edge: 6.7px;

  --parallax-image-height: clamp(250px, 34vw, 520px);
  --parallax-image-position: center 42%;

  --gallery-column-min-width: 180px;
  --gallery-image-height: clamp(180px, 18vw, 250px);
  --gallery-carousel-height: clamp(260px, 22vw, 410px);
  --gallery-carousel-margin-top: clamp(2.5rem, 5vw, 5rem);
  --gallery-carousel-arrow-size: clamp(34px, 2.7vw, 46px);
  --gallery-carousel-dot-size: 7px;
  --gallery-carousel-dot-active-size: 8px;

  --team-section-padding: clamp(3rem, 5vw, 5.5rem);
  --team-title-size: clamp(2.4rem, 1.9rem + 1.5vw, 3.8rem);
  --team-grid-gap-row: clamp(5rem, 8vw, 7.5rem);
  --team-grid-gap-column: clamp(1rem, 1.8vw, 1.8rem);
  --team-card-padding: clamp(4.8rem, 6vw, 6.2rem) clamp(1.25rem, 2vw, 2rem) clamp(2rem, 3vw, 3rem);
  --team-card-border: var(--border-size-sm) solid var(--line);
  --team-avatar-size: clamp(125px, 9vw, 165px);
  --team-member-name-size: clamp(1.45rem, 1.22rem + 0.65vw, 2rem);
  --team-member-role-size: clamp(0.72rem, 0.68rem + 0.12vw, 0.82rem);
  --team-member-copy-size: clamp(0.82rem, 0.78rem + 0.12vw, 0.94rem);
  --team-icon-size: clamp(1.1rem, 0.95rem + 0.35vw, 1.35rem);

  --blog-home-max-width: 1920px;
  --blog-home-gutter: clamp(1.5rem, 2.2vw, 3rem);
  --blog-layout-gap: clamp(2rem, 2.6vw, 3.25rem);
  --blog-sidebar-width: clamp(360px, 24vw, 470px);
  --blog-title-margin-bottom: var(--space-2xl);
  --post-column-gap: clamp(1.35rem, 1.7vw, 2rem);
  --post-card-margin-bottom: clamp(1.35rem, 1.7vw, 2rem);
  --post-card-min-height: 0;
  --post-card-image-height: clamp(310px, 20vw, 420px);
  --post-card-image-height-short: clamp(280px, 17vw, 360px);
  --post-card-image-height-tall: clamp(390px, 26vw, 560px);
  --post-card-home-image-height: auto;
  --post-card-home-image-object-fit: contain;
  --post-card-archive-image-height: auto;
  --post-card-archive-image-object-fit: contain;
  --post-card-body-padding: clamp(1.35rem, 1.6vw, 1.9rem);
  --post-card-title-size: clamp(1.02rem, 0.95rem + 0.2vw, 1.18rem);
  --post-card-copy-size: clamp(0.9rem, 0.86rem + 0.12vw, 0.98rem);
  --post-card-link-size: var(--text-xs);
  --post-card-border: var(--border-size-sm) solid var(--line);
  --post-card-bg: var(--mist);
  --post-card-image-object-position: center;
  --sidebar-gap: clamp(2.15rem, 2.6vw, 3rem);
  --sidebar-rule: var(--border-size-sm) solid var(--line);
  --sidebar-widget-padding-top: var(--space-xl);
  --sidebar-thumb-size: 68px;
  --sidebar-thumb-radius: var(--radius-md);
  --sidebar-recent-gap: var(--space-md);
  --sidebar-category-columns: 1;
  --sidebar-gallery-height: clamp(230px, 17vw, 320px);
  --sidebar-chip-gap: var(--space-xs);
  --sidebar-chip-padding-y: 0.22rem;
  --sidebar-chip-padding-x: var(--space-sm);
  --sidebar-category-chip-bg: var(--aqua-pale);
  --sidebar-category-chip-border: var(--aqua-soft);
  --sidebar-category-chip-color: var(--aqua-deep);
  --sidebar-tag-chip-bg: var(--mist);
  --sidebar-tag-chip-border: var(--orange);
  --sidebar-tag-chip-color: var(--orange-dark);

  --single-hero-padding-top: clamp(3.5rem, 6vw, 6.5rem);
  --single-hero-padding-bottom: clamp(4rem, 7vw, 7rem);
  --single-hero-title-size: clamp(2.35rem, 1.75rem + 1.8vw, 4rem);
  --single-featured-width: min(880px, calc(100% - (var(--shell-gutter) * 2)));
  --single-featured-height: clamp(260px, 32vw, 520px);
  --single-shell-width: min(1420px, calc(100% - (var(--shell-gutter) * 2)));
  --single-main-width: minmax(0, 860px);
  --single-sidebar-width: minmax(340px, 430px);
  --single-content-gap: clamp(2rem, 3vw, 3.5rem);
  --single-content-font-size: clamp(1rem, 0.96rem + 0.14vw, 1.08rem);
  --single-content-image-width: min(100%, 560px);
  --single-content-image-height: auto;
  --single-post-carousel-width: 560px;
  --single-post-carousel-height: clamp(520px, 48vw, 760px);
  --single-post-carousel-height-mobile: clamp(390px, 118vw, 620px);
  --single-post-nav-height: clamp(74px, 7vw, 105px);
  --single-post-nav-inner-width: var(--single-shell-width);
  --single-post-nav-label-size: clamp(0.78rem, 0.72rem + 0.18vw, 0.92rem);
  --single-post-nav-title-size: clamp(1rem, 0.92rem + 0.28vw, 1.25rem);
  --single-related-width: min(880px, calc(100% - (var(--shell-gutter) * 2)));
  --single-related-card-image-height: clamp(105px, 9vw, 150px);
  --single-related-card-image-object-fit: contain;

  --footer-wave-height: clamp(115px, 14vw, 185px);
  --footer-wave-overlap-top: clamp(28px, 4vw, 62px);
  --footer-wave-overlap-bottom: clamp(52px, 7vw, 95px);
  --footer-content-width: 1120px;
  --footer-logo-column-width: 220px;
  --footer-logo-width: clamp(190px, 12vw, 245px);
  --footer-logo-mobile-width: 165px;
  --footer-content-gap: clamp(2.25rem, 4vw, 4rem);
  --footer-padding-top: clamp(5rem, 8vw, 8rem);
  --footer-padding-bottom: clamp(6rem, 9vw, 9rem);
  --footer-about-title-size: clamp(1.35rem, 1.18rem + 0.45vw, 1.7rem);
  --footer-about-copy-size: clamp(1rem, 0.94rem + 0.18vw, 1.12rem);
  --footer-social-size: 22px;
  --footer-social-gap: 0.28rem;
  --footer-social-radius: 2px;
  --footer-social-font-size: 0.78rem;
  --footer-bottom-gap: var(--space-xs);
  --footer-bottom-menu-gap: clamp(0.85rem, 1.4vw, 1.45rem);

  --share-button-background-color: var(--aqua-deep);
  --share-button-color: var(--color-white, #fff);
}
