@font-face {
  font-family: 'Instrument Serif';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url(./assets/fonts/instrument-serif-italic-400.6ee678c33f38.woff2) 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: 'Instrument Serif';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(./assets/fonts/instrument-serif-normal-400.60c06664b5a9.woff2) 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: italic;
  font-weight: 400;
  font-display: swap;
  src: url(./assets/fonts/inter-italic-400.351ea309178c.woff2) 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: 100 900;
  font-display: swap;
  src: url(./assets/fonts/inter-normal-400.c940764593d0.woff2) 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: 'JetBrains Mono';
  font-style: normal;
  font-weight: 400 800;
  font-display: swap;
  src: url(./assets/fonts/jetbrains-mono-normal-400.2c32b9b3ee35.woff2) 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;
}

/* Copyright 2022 The Instrument Serif Project Authors (https://github.com/Instrument/instrument-serif)

This Font Software is licensed under the SIL Open Font License, Version 1.1.
This license is copied below, and is also available with a FAQ at:
https://scripts.sil.org/OFL


-----------------------------------------------------------
SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007
-----------------------------------------------------------

PREAMBLE
The goals of the Open Font License (OFL) are to stimulate worldwide
development of collaborative font projects, to support the font creation
efforts of academic and linguistic communities, and to provide a free and
open framework in which fonts may be shared and improved in partnership
with others.

The OFL allows the licensed fonts to be used, studied, modified and
redistributed freely as long as they are not sold by themselves. The
fonts, including any derivative works, can be bundled, embedded, 
redistributed and/or sold with any software provided that any reserved
names are not used by derivative works. The fonts and derivatives,
however, cannot be released under any other type of license. The
requirement for fonts to remain under this license does not apply
to any document created using the fonts or their derivatives.

DEFINITIONS
"Font Software" refers to the set of files released by the Copyright
Holder(s) under this license and clearly marked as such. This may
include source files, build scripts and documentation.

"Reserved Font Name" refers to any names specified as such after the
copyright statement(s).

"Original Version" refers to the collection of Font Software components as
distributed by the Copyright Holder(s).

"Modified Version" refers to any derivative made by adding to, deleting,
or substituting -- in part or in whole -- any of the components of the
Original Version, by changing formats or by porting the Font Software to a
new environment.

"Author" refers to any designer, engineer, programmer, technical
writer or other person who contributed to the Font Software.

PERMISSION & CONDITIONS
Permission is hereby granted, free of charge, to any person obtaining
a copy of the Font Software, to use, study, copy, merge, embed, modify,
redistribute, and sell modified and unmodified copies of the Font
Software, subject to the following conditions:

1) Neither the Font Software nor any of its individual components,
in Original or Modified Versions, may be sold by itself.

2) Original or Modified Versions of the Font Software may be bundled,
redistributed and/or sold with any software, provided that each copy
contains the above copyright notice and this license. These can be
included either as stand-alone text files, human-readable headers or
in the appropriate machine-readable metadata fields within text or
binary files as long as those fields can be easily viewed by the user.

3) No Modified Version of the Font Software may use the Reserved Font
Name(s) unless explicit written permission is granted by the corresponding
Copyright Holder. This restriction only applies to the primary font name as
presented to the users.

4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font
Software shall not be used to promote, endorse or advertise any
Modified Version, except to acknowledge the contribution(s) of the
Copyright Holder(s) and the Author(s) or with their explicit written
permission.

5) The Font Software, modified or unmodified, in part or in whole,
must be distributed entirely under this license, and must not be
distributed under any other license. The requirement for fonts to
remain under this license does not apply to any document created
using the Font Software.

TERMINATION
This license becomes null and void if any of the above conditions are
not met.

DISCLAIMER
THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT
OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE
COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL
DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM
OTHER DEALINGS IN THE FONT SOFTWARE.
 */
/* Copyright 2020 The Inter Project Authors (https://github.com/rsms/inter)

This Font Software is licensed under the SIL Open Font License, Version 1.1.
This license is copied below, and is also available with a FAQ at:
https://scripts.sil.org/OFL


-----------------------------------------------------------
SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007
-----------------------------------------------------------

PREAMBLE
The goals of the Open Font License (OFL) are to stimulate worldwide
development of collaborative font projects, to support the font creation
efforts of academic and linguistic communities, and to provide a free and
open framework in which fonts may be shared and improved in partnership
with others.

The OFL allows the licensed fonts to be used, studied, modified and
redistributed freely as long as they are not sold by themselves. The
fonts, including any derivative works, can be bundled, embedded, 
redistributed and/or sold with any software provided that any reserved
names are not used by derivative works. The fonts and derivatives,
however, cannot be released under any other type of license. The
requirement for fonts to remain under this license does not apply
to any document created using the fonts or their derivatives.

DEFINITIONS
"Font Software" refers to the set of files released by the Copyright
Holder(s) under this license and clearly marked as such. This may
include source files, build scripts and documentation.

"Reserved Font Name" refers to any names specified as such after the
copyright statement(s).

"Original Version" refers to the collection of Font Software components as
distributed by the Copyright Holder(s).

"Modified Version" refers to any derivative made by adding to, deleting,
or substituting -- in part or in whole -- any of the components of the
Original Version, by changing formats or by porting the Font Software to a
new environment.

"Author" refers to any designer, engineer, programmer, technical
writer or other person who contributed to the Font Software.

PERMISSION & CONDITIONS
Permission is hereby granted, free of charge, to any person obtaining
a copy of the Font Software, to use, study, copy, merge, embed, modify,
redistribute, and sell modified and unmodified copies of the Font
Software, subject to the following conditions:

1) Neither the Font Software nor any of its individual components,
in Original or Modified Versions, may be sold by itself.

2) Original or Modified Versions of the Font Software may be bundled,
redistributed and/or sold with any software, provided that each copy
contains the above copyright notice and this license. These can be
included either as stand-alone text files, human-readable headers or
in the appropriate machine-readable metadata fields within text or
binary files as long as those fields can be easily viewed by the user.

3) No Modified Version of the Font Software may use the Reserved Font
Name(s) unless explicit written permission is granted by the corresponding
Copyright Holder. This restriction only applies to the primary font name as
presented to the users.

4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font
Software shall not be used to promote, endorse or advertise any
Modified Version, except to acknowledge the contribution(s) of the
Copyright Holder(s) and the Author(s) or with their explicit written
permission.

5) The Font Software, modified or unmodified, in part or in whole,
must be distributed entirely under this license, and must not be
distributed under any other license. The requirement for fonts to
remain under this license does not apply to any document created
using the Font Software.

TERMINATION
This license becomes null and void if any of the above conditions are
not met.

DISCLAIMER
THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT
OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE
COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL
DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM
OTHER DEALINGS IN THE FONT SOFTWARE.
 */
/* Copyright 2020 The JetBrains Mono Project Authors (https://github.com/JetBrains/JetBrainsMono)

This Font Software is licensed under the SIL Open Font License, Version 1.1.

This license is copied below, and is also available with a FAQ at: https://scripts.sil.org/OFL


-----------------------------------------------------------
SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007
-----------------------------------------------------------

PREAMBLE
The goals of the Open Font License (OFL) are to stimulate worldwide
development of collaborative font projects, to support the font creation
efforts of academic and linguistic communities, and to provide a free and
open framework in which fonts may be shared and improved in partnership
with others.

The OFL allows the licensed fonts to be used, studied, modified and
redistributed freely as long as they are not sold by themselves. The
fonts, including any derivative works, can be bundled, embedded,
redistributed and/or sold with any software provided that any reserved
names are not used by derivative works. The fonts and derivatives,
however, cannot be released under any other type of license. The
requirement for fonts to remain under this license does not apply
to any document created using the fonts or their derivatives.

DEFINITIONS
"Font Software" refers to the set of files released by the Copyright
Holder(s) under this license and clearly marked as such. This may
include source files, build scripts and documentation.

"Reserved Font Name" refers to any names specified as such after the
copyright statement(s).

"Original Version" refers to the collection of Font Software components as
distributed by the Copyright Holder(s).

"Modified Version" refers to any derivative made by adding to, deleting,
or substituting -- in part or in whole -- any of the components of the
Original Version, by changing formats or by porting the Font Software to a
new environment.

"Author" refers to any designer, engineer, programmer, technical
writer or other person who contributed to the Font Software.

PERMISSION & CONDITIONS
Permission is hereby granted, free of charge, to any person obtaining
a copy of the Font Software, to use, study, copy, merge, embed, modify,
redistribute, and sell modified and unmodified copies of the Font
Software, subject to the following conditions:

1) Neither the Font Software nor any of its individual components,
in Original or Modified Versions, may be sold by itself.

2) Original or Modified Versions of the Font Software may be bundled,
redistributed and/or sold with any software, provided that each copy
contains the above copyright notice and this license. These can be
included either as stand-alone text files, human-readable headers or
in the appropriate machine-readable metadata fields within text or
binary files as long as those fields can be easily viewed by the user.

3) No Modified Version of the Font Software may use the Reserved Font
Name(s) unless explicit written permission is granted by the corresponding
Copyright Holder. This restriction only applies to the primary font name as
presented to the users.

4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font
Software shall not be used to promote, endorse or advertise any
Modified Version, except to acknowledge the contribution(s) of the
Copyright Holder(s) and the Author(s) or with their explicit written
permission.

5) The Font Software, modified or unmodified, in part or in whole,
must be distributed entirely under this license, and must not be
distributed under any other license. The requirement for fonts to
remain under this license does not apply to any document created
using the Font Software.

TERMINATION
This license becomes null and void if any of the above conditions are
not met.

DISCLAIMER
THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT
OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE
COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL
DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM
OTHER DEALINGS IN THE FONT SOFTWARE.
 */
@font-face{font-family:'Cormorant Garamond';font-style:normal;font-weight: 300 700;font-display:swap;src:url(./assets/fonts/cormorant-garamond-normal.f81fa5d9337e.woff2) 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}
/* Copyright 2015 the Cormorant Project Authors (github.com/CatharsisFonts/Cormorant)

This Font Software is licensed under the SIL Open Font License, Version 1.1.
This license is copied below, and is also available with a FAQ at:
https://scripts.sil.org/OFL


-----------------------------------------------------------
SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007
-----------------------------------------------------------

PREAMBLE
The goals of the Open Font License (OFL) are to stimulate worldwide
development of collaborative font projects, to support the font creation
efforts of academic and linguistic communities, and to provide a free and
open framework in which fonts may be shared and improved in partnership
with others.

The OFL allows the licensed fonts to be used, studied, modified and
redistributed freely as long as they are not sold by themselves. The
fonts, including any derivative works, can be bundled, embedded,
redistributed and/or sold with any software provided that any reserved
names are not used by derivative works. The fonts and derivatives,
however, cannot be released under any other type of license. The
requirement for fonts to remain under this license does not apply
to any document created using the fonts or their derivatives.

DEFINITIONS
"Font Software" refers to the set of files released by the Copyright
Holder(s) under this license and clearly marked as such. This may
include source files, build scripts and documentation.

"Reserved Font Name" refers to any names specified as such after the
copyright statement(s).

"Original Version" refers to the collection of Font Software components as
distributed by the Copyright Holder(s).

"Modified Version" refers to any derivative made by adding to, deleting,
or substituting -- in part or in whole -- any of the components of the
Original Version, by changing formats or by porting the Font Software to a
new environment.

"Author" refers to any designer, engineer, programmer, technical
writer or other person who contributed to the Font Software.

PERMISSION & CONDITIONS
Permission is hereby granted, free of charge, to any person obtaining
a copy of the Font Software, to use, study, copy, merge, embed, modify,
redistribute, and sell modified and unmodified copies of the Font
Software, subject to the following conditions:

1) Neither the Font Software nor any of its individual components,
in Original or Modified Versions, may be sold by itself.

2) Original or Modified Versions of the Font Software may be bundled,
redistributed and/or sold with any software, provided that each copy
contains the above copyright notice and this license. These can be
included either as stand-alone text files, human-readable headers or
in the appropriate machine-readable metadata fields within text or
binary files as long as those fields can be easily viewed by the user.

3) No Modified Version of the Font Software may use the Reserved Font
Name(s) unless explicit written permission is granted by the corresponding
Copyright Holder. This restriction only applies to the primary font name as
presented to the users.

4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font
Software shall not be used to promote, endorse or advertise any
Modified Version, except to acknowledge the contribution(s) of the
Copyright Holder(s) and the Author(s) or with their explicit written
permission.

5) The Font Software, modified or unmodified, in part or in whole,
must be distributed entirely under this license, and must not be
distributed under any other license. The requirement for fonts to
remain under this license does not apply to any document created
using the Font Software.

TERMINATION
This license becomes null and void if any of the above conditions are
not met.

DISCLAIMER
THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT
OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE
COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL
DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM
OTHER DEALINGS IN THE FONT SOFTWARE.
 */

@font-face{font-family:'Cormorant Garamond';font-style:italic;font-weight: 300 700;font-display:swap;src:url(./assets/fonts/cormorant-garamond-italic.ba57bfd649e7.woff2) format('woff2')}


@font-face {
  font-family: 'Inter';
  font-style: italic;
  font-weight: 300;
  font-display: swap;
  src: url(./assets/fonts/inter-italic-300.68eb4b5ddf01.woff2) 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;
}

/* Triple Ivy — prompt-derived design tokens.
 * Companion specification: ./design-tokens.md
 * Applied by site/scripts/build.py.
 */
:root {
  /* Logo pigments, sampled from the supplied quill. Dark companions support readable type. */
  --brand-ivy: #235F2A;
  --brand-cobalt: #1F6FCF;
  --brand-ember: #FC8024;
  --brand-ivy-ink: #214D2B;
  --brand-cobalt-ink: #164A86;
  --brand-ember-ink: #8A3D13;
  --brand-paper: #FAF9F6;
  --client-paper: #EEEAE2;
  --brand-neutral-ink: #282B27;
  --color-cinema: #08090B;
  --color-cinema-fallback: #202628;
  --glass-radius: 24px;
  --glass-edge: color-mix(in srgb, var(--color-white) 86%, transparent);
  --glass-surface: linear-gradient(135deg, color-mix(in srgb, var(--color-white) 82%, transparent), color-mix(in srgb, var(--color-white) 46%, transparent) 55%, color-mix(in srgb, var(--color-white) 66%, transparent));
  --glass-shadow: inset 0 1px 0 var(--color-white), inset 0 -1px 0 color-mix(in srgb, var(--color-white) 44%, transparent), 0 12px 36px color-mix(in srgb, var(--color-ink) 7%, transparent), 0 2px 6px color-mix(in srgb, var(--color-ink) 3%, transparent);

  /* User-revised palette: white, beige, stone and black. */
  --color-cream: #EEEBE5;
  --color-ink: #282B27;
  --color-olive: #485440;
  --color-warm-slate: var(--color-ink);
  --color-amber: var(--color-hairline);
  --color-hairline: #D5D0C6;

  /* Compatibility aliases now resolve to the approved neutral palette. */
  --color-navy: var(--color-ink);
  --color-white: #FAF9F6;
  --color-blue: var(--color-ink);
  --color-list-text: var(--color-ink);
  --color-publisher-tint: var(--color-cream);

  --surface-page: var(--color-white);
  --surface-card: var(--color-white);
  --surface-band: var(--color-warm-slate);
  --surface-nav: var(--color-white);
  --surface-hero-band: var(--color-cream);
  --surface-hero: var(--surface-page);
  --surface-media: var(--surface-page);
  --surface-media-resources: var(--color-cream);
  --surface-contact: var(--color-cream);
  --surface-footer: var(--color-cream);
  --surface-publisher: var(--color-publisher-tint);
  --text-primary: var(--color-ink);
  --text-secondary: var(--color-ink);
  --text-on-dark: var(--color-cream);
  --text-wordmark: var(--color-ink);
  --text-list: var(--color-list-text);
  --text-accent-on-dark: var(--color-amber);
  --border-default: var(--color-hairline);
  --border-control: var(--color-ink);
  --border-cv: var(--color-blue);
  --focus-accent: var(--color-hairline);
  --focus-contrast-light: var(--color-ink);
  --focus-contrast-dark: var(--color-cream);

  --font-display: 'Cormorant Garamond', Georgia, serif;
  --font-body: 'Cormorant Garamond', Georgia, serif;
  --font-mono: 'Cormorant Garamond', Georgia, serif;
  --font-book: 'Cormorant Garamond', Georgia, serif;
  --weight-display: 400;
  --weight-body: 400;
  --weight-label: 500;
  --weight-action: 600;
  --weight-book: 600;
  --type-eyebrow: 0.75rem;
  --type-metadata: 0.875rem;
  --type-list: 0.875rem;
  --type-card-description: 0.9375rem;
  --type-body: 1rem;
  --type-lead: 1.125rem;
  --type-card-title: 1.25rem;
  --type-section-title: clamp(2rem, 1.2rem + 3vw, 3.5rem);
  --type-book-title: clamp(2.5rem, 1.5rem + 3vw, 4.5rem);
  --type-hero-prelude: clamp(1.5rem, 1rem + 2vw, 2.75rem);
  --type-hero-main: clamp(2.5rem, 1.25rem + 5vw, 5.5rem);
  --leading-display: 1.05;
  --leading-heading: 1.15;
  --leading-body: 1.65;
  --leading-label: 1.5;
  --tracking-eyebrow: 0.16em;
  --measure-body: 62ch;
  --numerals-default: lining-nums tabular-nums;
  --numerals-biography: oldstyle-nums proportional-nums;

  --space-0: 0;
  --space-1: 0.5rem;
  --space-2: 1rem;
  --space-3: 1.5rem;
  --space-4: 2rem;
  --space-5: 2.5rem;
  --space-6: 3rem;
  --space-7: 3.5rem;
  --space-8: 4rem;
  --space-10: 5rem;
  --space-12: 6rem;
  --space-16: 8rem;
  --layout-max: 80rem;
  --gutter-mobile: var(--space-3);
  --gutter-tablet: var(--space-4);
  --gutter-desktop: var(--space-6);
  --section-space-mobile: var(--space-8);
  --section-space-desktop: var(--space-12);
  --card-padding: var(--space-3);
  --grid-gap: var(--space-3);
  --nav-height-mobile: 4.5rem;
  --nav-height-desktop: 5rem;
  --cv-year-width: 7rem;
  --cv-year-width-mobile: 5rem;
  --portrait-ratio: 4 / 5;

  --shadow-paper: 0 2px 5px color-mix(in srgb, var(--color-ink) 3%, transparent), 0 18px 40px -24px color-mix(in srgb, var(--color-ink) 25%, transparent);
  --shadow-portrait: 0 24px 64px -28px color-mix(in srgb, var(--color-ink) 40%, transparent);
  --shadow-book: 5px 7px 8px -5px color-mix(in srgb, var(--color-ink) 28%, transparent), 20px 28px 32px -12px color-mix(in srgb, var(--color-ink) 28%, transparent);
  --radius-base: 3px;
  --radius-card: var(--radius-base);
  --radius-panel: var(--radius-base);
  --radius-portrait: var(--radius-base);
  --radius-control: var(--radius-base);
  --radius-pill: 999px;
  --radius-circle: 50%;
  --border-hairline-width: 1px;
  --border-cv-width: 3px;
  --focus-width: 2px;
  --focus-offset: 3px;
  --control-height: 3rem;
  --touch-target: 3rem;
  --button-padding-inline: var(--space-3);
  --button-arrow-gap: var(--space-2);
  --button-primary-bg: color-mix(in srgb, var(--color-olive) 12%, var(--color-white));
  --button-primary-text: var(--color-olive);
  --button-secondary-text: var(--color-olive);
  --button-secondary-border: var(--color-hairline);
  --check-column: 1rem;
  --check-gap: var(--space-1);
  --number-circle-size: 2.5rem;

  --ease-standard: cubic-bezier(.2,.7,.2,1);
  --duration-detail: 400ms;
  --duration-reveal: 600ms;
  --duration-hero: 700ms;
  --stagger-hero: 80ms;
  --stagger-item: 60ms;
  --hover-arrow-distance: 4px;
  --hover-card-distance: -4px;
  --hover-brightness: 1.02;
  --grain-opacity: 0.025;
  --z-content: 0;
  --z-nav: 100;
  --z-menu: 110;
  --z-skip-link: 120;
}

@media (prefers-reduced-motion: reduce) {
  :root {
    --duration-detail: 0ms;
    --duration-reveal: 0ms;
    --duration-hero: 0ms;
    --stagger-hero: 0ms;
    --stagger-item: 0ms;
    --hover-arrow-distance: 0px;
    --hover-card-distance: 0px;
  }
}

*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:88px}body{margin:0;background:var(--surface-page);color:var(--text-primary);font-family:var(--font-body);font-size:var(--type-body);font-weight:var(--weight-body);line-height:var(--leading-body);font-variant-numeric:var(--numerals-default);font-synthesis:none}h1,h2,h3,h4,p,figure,blockquote,dl{margin:0}h1,h2,h3,h4{text-wrap:balance;font-family:var(--font-display);font-weight:var(--weight-display);line-height:var(--leading-heading)}h2{font-size:var(--type-section-title);letter-spacing:-.025em}h3{font-size:2rem}h4{font-size:1.5rem}p{text-wrap:pretty;max-inline-size:var(--measure-body)}p+p{margin-top:var(--space-2)}a{color:inherit;text-underline-offset:.25em;text-decoration-thickness:1px}button,input,select,textarea{font:inherit;color:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}img{display:block;max-width:100%;height:auto}button{border:0}button:disabled{cursor:default}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--focus-contrast-light);outline-offset:3px;box-shadow:0 0 0 3px var(--focus-accent)}[hidden]{display:none!important}.container{width:min(calc(100% - 2 * var(--gutter-desktop)),var(--layout-max));margin-inline:auto}.section{padding-block:var(--section-space-desktop)}.section+.section{border-top:1px solid var(--border-default)}.eyebrow{font-family:var(--font-mono);font-size:var(--type-eyebrow);font-weight:var(--weight-label);letter-spacing:var(--tracking-eyebrow);line-height:1.6;text-transform:uppercase}.section-heading{margin-bottom:var(--space-6);max-width:800px}.section-heading h2{margin-block:var(--space-2) var(--space-3)}.section-heading>p:last-child:not(.eyebrow){font-size:var(--type-lead)}.skip-link{position:fixed;top:8px;left:8px;transform:translateY(-160%);z-index:var(--z-skip-link);background:var(--color-cream);color:var(--color-ink);padding:16px}.skip-link:focus{transform:none}.button{display:inline-flex;justify-content:center;align-items:center;gap:var(--button-arrow-gap);min-height:var(--control-height);padding:12px var(--button-padding-inline);border:1px solid var(--button-secondary-border);border-radius:var(--radius-control);font-size:1rem;line-height:1.5;font-weight:600;text-decoration:none;position:relative;isolation:isolate;background:transparent;vertical-align:middle}.button::before{content:"";position:absolute;inset:0;background:var(--button-primary-bg);border-radius:inherit;z-index:-1;transition:filter var(--duration-detail) var(--ease-standard)}.button.primary{color:var(--button-primary-text)}.button.secondary{color:var(--button-secondary-text)}.button.secondary::before{background:var(--color-cream)}.arrow{display:inline-block;flex-shrink:0;transition:transform var(--duration-detail) var(--ease-standard)}.button:hover::before{filter:brightness(var(--hover-brightness))}.button:hover .arrow,.text-link:hover .arrow{transform:translateX(var(--hover-arrow-distance))}.text-link{display:inline-flex;align-items:center;gap:var(--space-2);min-height:var(--touch-target);font-size:.9375rem;font-weight:500}.button.text-button{padding:var(--space-2) 0 0;border:0;border-top:1px solid var(--border-default);justify-content:space-between;border-radius:0;font-size:.875rem;font-weight:500}.button.text-button::before{background:transparent}.site-header{height:var(--nav-height-desktop);display:flex;align-items:center;gap:var(--space-3);padding-right:var(--space-3);position:fixed;inset:0 0 auto;z-index:var(--z-nav);background:var(--color-cream);border-bottom:1px solid var(--border-default)}.wordmark{align-self:stretch;flex:0 0 232px;background:var(--surface-nav);color:var(--text-wordmark);display:flex;flex-direction:column;justify-content:center;padding:0 var(--space-4);font:32px/1 var(--font-display);text-decoration:none;white-space:nowrap}.wordmark span{font:9px/1.4 var(--font-mono);letter-spacing:.035em;margin-top:4px}.site-header nav{flex:1}.site-header ul{display:flex;align-items:center;justify-content:center;gap:var(--space-3);padding:0;margin:0;list-style:none}.site-header nav a{display:flex;align-items:center;min-height:48px;font-size:12px;font-weight:500;text-decoration:none;white-space:nowrap}.site-header nav a:hover{text-decoration:underline}.nav-contact{font-size:13px;border-radius:var(--radius-pill);white-space:nowrap;min-height:40px;padding:8px 16px}#menu-toggle{display:none}.wordmark:focus-visible,.media-resources :focus-visible,.site-footer :focus-visible{outline-color:var(--focus-contrast-dark)}main{padding-top:var(--nav-height-desktop)}.hero{padding-top:var(--space-8)}.hero-grid{display:grid;grid-template-columns:1.14fr 1fr;gap:var(--space-6);align-items:stretch}.hero-copy{padding-block:var(--space-6);display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.hero-eyebrow{font-size:11px;letter-spacing:.13em;margin-bottom:var(--space-4)}h1{font-size:var(--type-hero-main);line-height:var(--leading-display);letter-spacing:-.025em}.line-mask{display:block;overflow:clip;padding-block:.08em;margin-block:-.08em}.hero-line{display:block}.hero-prelude{font-size:var(--type-hero-prelude);line-height:1.3;letter-spacing:-.015em;margin-bottom:var(--space-1)}.hero-line em,em.hero-line{font-weight:400}.hero-subline{font-size:var(--type-lead);max-width:47ch;margin-top:var(--space-4)}.hero-actions{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-top:var(--space-4)}.hero-actions .button{font-size:14px;min-height:48px;padding-inline:16px}.credentials{display:flex;gap:var(--space-3);padding-top:var(--space-4);font:11px/1.5 var(--font-mono);text-transform:uppercase;letter-spacing:.09em}.hero-band{position:relative;padding:var(--space-5);background:var(--surface-hero-band);isolation:isolate}.hero-band::after{content:"";position:absolute;inset:0;pointer-events:none;background-image:radial-gradient(var(--color-cream) .7px,transparent .7px);background-size:3px 3px;opacity:var(--grain-opacity);z-index:-1}.hero-portrait img{width:100%;aspect-ratio:var(--portrait-ratio);object-fit:cover;object-position:center 40%;border-radius:var(--radius-portrait);border:1px solid var(--border-default)}.hero-portrait figcaption{padding-top:var(--space-3);font:1.6rem/1.2 var(--font-display);color:var(--text-on-dark)}.hero-portrait figcaption span{display:block;margin-top:8px;font:11px/1.5 var(--font-mono);text-transform:uppercase;letter-spacing:.08em}.hero-footer{border-top:1px solid var(--border-default);margin-top:var(--space-6);display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);padding-block:var(--space-3);font-size:12px}.hero-footer a{display:inline-flex;align-items:center;gap:24px;min-height:48px;text-decoration:none}.biography-grid{display:grid;grid-template-columns:.82fr 1.18fr;gap:var(--space-10);align-items:center}.biography-portrait img{width:100%;max-height:620px;object-fit:cover;object-position:center 40%;border-radius:var(--radius-portrait);border:1px solid var(--border-default)}.biography-portrait figcaption{font:11px/1.6 var(--font-mono);margin-top:16px}.biography-grid h2{margin-block:var(--space-2) var(--space-4)}.biography-copy{font-variant-numeric:var(--numerals-biography);line-height:1.8}.biography-grid .text-link{margin-top:24px}.book-section{background:var(--surface-card);border-block:1px solid var(--border-default)}.book-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:var(--space-10);align-items:start}.book-art{padding:var(--space-5);border-block:1px solid var(--color-amber);display:flex;flex-direction:column;align-items:center}.book-art>img{width:76%;max-width:350px;margin-block:var(--space-5)}.book-art-caption{font:11px/1.6 var(--font-mono);text-align:center}.publisher-pill{display:inline-block;padding:8px 16px;background:var(--surface-publisher);color:var(--color-navy);border-radius:var(--radius-pill);font-size:11px;font-weight:500}.book-copy h2{font-family:var(--font-book);font-weight:var(--weight-book);font-size:var(--type-book-title);line-height:.98;margin-block:var(--space-3) var(--space-2)}.book-subtitle{font-family:var(--font-display);font-size:1.5rem;font-style:italic;line-height:1.3;margin-bottom:var(--space-3)}.book-synopsis{font-size:15px;line-height:1.8}.book-specs{display:grid;grid-template-columns:1fr 1.1fr .8fr;gap:16px;border-block:1px solid var(--border-default);padding-block:24px;margin-block:32px}.book-specs dt{font:10px/1.6 var(--font-mono);text-transform:uppercase;letter-spacing:.06em}.book-specs dd{font-size:12px;margin:8px 0 0}.praise{border-top:1px solid var(--border-default);padding-top:var(--space-4);margin-top:var(--space-8)}.praise-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}.praise-controls{display:flex;align-items:center;gap:16px}.praise-controls button{width:48px;height:48px;background:transparent;border:1px solid var(--border-default);font-size:20px}.praise-controls p{font:12px var(--font-mono);white-space:nowrap}.praise-slide{padding-block:var(--space-4);min-height:260px;max-width:1040px}.praise-slide blockquote{font:clamp(1.6rem,2.1vw,2rem)/1.3 var(--font-display)}.praise-slide figcaption{display:flex;flex-wrap:wrap;gap:8px 16px;align-items:center;margin-top:var(--space-3);font-size:12px}.praise-slide figcaption strong{font-weight:600}.praise-slide figcaption span{font-size:11px}.praise-source{font-size:12px}.research-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--grid-gap)}.feature-card,.offering-card{position:relative;border:1px solid var(--border-default);border-radius:var(--radius-card);padding:var(--card-padding);display:flex;flex-direction:column;transition:transform var(--duration-detail) var(--ease-standard)}.feature-card::before,.offering-card::before{content:"";position:absolute;inset:0 0 auto;height:1px;background:var(--color-amber);transform:scaleX(0);transform-origin:left;transition:transform var(--duration-detail) var(--ease-standard)}.feature-card:hover,.offering-card:hover{transform:translateY(var(--hover-card-distance))}.feature-card:hover::before,.offering-card:hover::before{transform:scaleX(1)}.card-index{font:12px/1.5 var(--font-mono);margin-bottom:var(--space-4)}.feature-card h3{font-size:1.75rem;min-height:2.5em}.feature-card>p{font-size:15px;margin-block:var(--space-2) var(--space-3)}.checked-list{padding:0;margin:0;list-style:none;color:var(--text-list);font-size:var(--type-list)}.checked-list li{display:grid;grid-template-columns:var(--check-column) 1fr;gap:var(--check-gap);padding-block:8px;align-items:baseline}.checked-list li+li{border-top:1px solid var(--border-default)}.checked-list li>span:first-child{color:var(--color-navy)}.feature-card .checked-list{margin-top:auto}.consulting-section{border-top:1px solid var(--border-default)}.consulting-heading{display:grid;grid-template-columns:1.6fr .7fr;gap:80px;align-items:center;margin-bottom:48px}.consulting-motto{margin-top:32px!important}.consulting-heading h2{max-width:22ch;margin-block:16px 24px}.full-lockup{display:flex;align-items:center;flex-direction:column;border-left:1px solid var(--border-default);padding-left:48px}.full-lockup img{width:180px;mix-blend-mode:multiply}.full-lockup>span{font:3.25rem/1 var(--font-display);margin-top:16px}.full-lockup>small{font:9px/1.5 var(--font-mono);text-transform:uppercase;letter-spacing:.06em;text-align:center;margin-top:12px}.offering-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}.number-circle{display:grid;place-items:center;width:var(--number-circle-size);height:var(--number-circle-size);border:1px solid var(--color-amber);border-radius:var(--radius-circle);font:12px/1 var(--font-mono);margin-bottom:24px}.offering-card h3{font-size:var(--type-card-title)}.offering-card>p{font-size:var(--type-card-description);margin-block:16px 24px}.offering-card .checked-list{margin-bottom:24px}.offering-card .button{margin-top:auto}.service-details,.experience-details{border-block-end:1px solid var(--border-default);margin-top:24px}summary{cursor:pointer;padding:24px 0;font-weight:500}summary::marker{color:var(--color-navy)}.service-catalog{display:grid;grid-template-columns:1fr 1fr;gap:0 40px;margin-block:0 32px}.service-catalog details{border-top:1px solid var(--border-default)}.service-catalog summary{font-family:var(--font-display);font-size:1.4rem;padding:16px 0}.service-catalog p{font-size:14px;line-height:1.75;margin-bottom:16px}.service-catalog .button{margin-bottom:24px}.service-catalog .service-number,.service-catalog .service-no{font-family:var(--font-mono);font-size:12px}.consulting-history{padding-bottom:32px;columns:2;column-gap:40px;font-size:15px}.consulting-history p{break-inside:avoid;margin-bottom:16px}.consultation-card{display:grid;grid-template-columns:1.5fr .5fr;align-items:center;gap:40px;padding:32px;border:1px solid var(--border-default);border-left:3px solid var(--color-amber);margin-top:40px}.consultation-card h3{font-size:1.75rem}.consultation-card p{font-size:14px;margin-block:12px}.consultation-card .section-kicker,.consulting-faq .section-kicker,.testimonials-section .section-kicker{font:12px/1.6 var(--font-mono);text-transform:uppercase;letter-spacing:.1em}.consulting-faq{margin-top:40px;display:grid;grid-template-columns:1fr 1fr;gap:0 40px}.consulting-faq>h3{grid-column:1/-1;margin-bottom:16px}.consulting-faq details{border-bottom:1px solid var(--border-default)}.consulting-faq p{font-size:14px;margin-bottom:24px}.testimonials-section{margin-top:64px}.testimonials-section .section-header{margin-bottom:32px}.testimonials-section h2,.testimonials-section h3{font-size:2.5rem;margin-block:8px}.testimonials-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}.testimonial-card{border-top:1px solid var(--color-amber);padding-top:24px}.testimonial-card blockquote p{font:1.35rem/1.5 var(--font-display)}.testimonial-card figcaption{font-size:11px;line-height:1.7;margin-top:16px}.testimonials-more{margin-top:24px}.testimonials-more>summary{font-size:14px}.independence-note{font-size:12px;margin-top:40px}.media-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.media-topics{border:1px solid var(--border-default);padding:40px}.media-topics>h3{font-size:2rem;margin-bottom:24px}.media-topics>div{padding-block:24px;border-top:1px solid var(--border-default)}.media-topics>div p{font-size:14px;margin-top:8px}.media-topics>.button{margin-top:16px}.media-resources{background:var(--surface-media-resources);color:var(--text-on-dark);padding:40px}.media-resources>.eyebrow{color:var(--color-amber)}.media-resources>h3{font-size:2.5rem;margin-block:24px}.media-resources>p{font-size:15px}.media-resources>ol{list-style:none;padding:0;margin:32px 0}.media-resources li{display:flex;align-items:center;gap:24px;padding-block:24px;border-top:1px solid var(--border-default);font-size:14px}.media-resources li span{font:12px var(--font-mono);color:var(--color-amber)}.button.on-dark{color:var(--color-cream);border-color:var(--color-cream)}.button.on-dark::before{background:var(--color-navy)}.speaking-feature{margin-top:48px;display:grid;grid-template-columns:.75fr 1.25fr;align-items:center;gap:48px}.speaking-feature .eyebrow{margin-bottom:16px}.speaking-feature p:not(.eyebrow){font-size:15px}.speaking-feature .text-link{margin-top:16px}.video-frame{aspect-ratio:4/3;background:var(--color-navy);overflow:hidden;border-radius:2px}.video-frame button{display:block;padding:0;width:100%;height:100%;position:relative;background:var(--color-navy)}.video-frame img{width:100%;height:100%;object-fit:cover;object-position:center 25%;opacity:.8}.play-disc{position:absolute;left:50%;top:45%;transform:translate(-50%,-50%);width:64px;height:64px;display:grid;place-items:center;background:var(--color-cream);color:var(--color-navy);border-radius:50%;font-size:20px}.video-caption{position:absolute;bottom:0;left:0;right:0;background:var(--color-navy);color:var(--color-cream);padding:16px;font-size:12px}.video-frame iframe{display:block;width:100%;height:100%;border:0}.cv-section{border-top:1px solid var(--border-default)}.cv-heading{display:flex;align-items:center;justify-content:space-between;gap:32px;margin-bottom:24px}.cv-heading h2{margin-top:16px}.cv-downloads{display:flex;flex-direction:column;align-items:flex-end;gap:8px}.cv-downloads .text-link{font-size:12px}.cv-tools{margin-top:40px;border-block:1px solid var(--border-default);padding-block:24px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:24px}.cv-filters{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.cv-filter{padding:12px 16px;min-height:48px;background:transparent;border:1px solid var(--border-default);border-radius:var(--radius-pill);font-size:12px}.cv-filter.is-active{background:var(--color-navy);color:var(--color-cream);border-color:var(--color-navy)}.cv-search{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:center}.cv-search label{grid-column:1/-1;margin:0;font-size:12px}.cv-search input{min-width:0;width:200px}.cv-search button{background:transparent;text-decoration:underline;font-size:12px;min-height:48px}.cv-list{border-top:1px solid var(--border-default)}#cv-status{font:12px var(--font-mono);padding-block:24px}.cv-entry{display:grid;grid-template-columns:var(--cv-year-width) 1fr;gap:32px;border-bottom:1px solid var(--border-default);padding-block:24px}.cv-entry>div:last-child{border-left:var(--border-cv-width) solid var(--border-cv);padding-left:24px}.cv-year{font:12px/1.6 var(--font-mono);padding-top:5px;overflow-wrap:anywhere}.cv-entry h3{font-size:1.6rem}.cv-entry p{font-size:13px;margin-top:8px}.contact-section{border-top:1px solid var(--border-default)}.contact-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:80px}.contact-pill{display:inline-block;font:12px/1.5 var(--font-mono);text-transform:uppercase;letter-spacing:.12em;border:1px solid var(--color-amber);padding:8px 16px;border-radius:var(--radius-pill)}.contact-copy h2{margin-block:32px 24px}.contact-copy dl{margin-block:40px}.contact-copy dt{font:11px/1.6 var(--font-mono);text-transform:uppercase;letter-spacing:.08em;margin-top:24px}.contact-copy dd{margin:8px 0 0;overflow-wrap:anywhere}.contact-copy dd a{min-height:48px;display:inline-flex;align-items:center;gap:16px}.disclaimer{font-size:12px;border-top:1px solid var(--border-default);padding-top:24px}.inquiry-panel{padding:32px;border:1px solid var(--border-default);border-radius:2px}.inquiry-panel h3{font-size:2rem}.inquiry-panel>p{font-size:14px;margin-top:16px}.inquiry-panel form{margin-top:32px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}label{display:block;font-size:12px;font-weight:500;margin-block:24px 8px}.form-row label{margin-top:0}input,textarea,select{width:100%;min-height:48px;padding:12px;background:var(--color-cream);border:1px solid var(--border-control);border-radius:2px;font-size:16px;line-height:1.5}textarea{resize:vertical}select{white-space:normal}.inquiry-panel button[type=submit]{margin-top:24px;width:100%}.form-note{font-size:12px;margin-top:16px}.honeypot{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.site-footer{padding-block:48px 24px;background:var(--surface-footer);color:var(--text-on-dark)}.footer-top{display:flex;justify-content:space-between;gap:24px;align-items:center;padding-bottom:40px}.footer-name{font:2rem/1.2 var(--font-display)}.footer-top p:last-child{font-size:12px;margin-top:12px}.footer-top>a{font-size:12px;min-height:48px;display:flex;align-items:center}.footer-bottom{display:flex;justify-content:space-between;gap:24px;border-top:1px solid var(--border-default);padding-top:24px;font-size:10px}dialog{max-width:min(580px,calc(100% - 48px));border:1px solid var(--color-ink);border-radius:2px;background:var(--color-cream);padding:32px;color:var(--color-ink)}dialog::backdrop{background:var(--color-navy);opacity:.8}dialog h2{font-size:2.5rem;margin-block:16px}dialog .button{margin-top:24px}#shop-close{display:block;margin-left:auto;background:transparent;min-height:48px;font-size:14px}dialog>.eyebrow{margin-top:16px}
@keyframes hero-fade{from{opacity:0}to{opacity:1}}
@media(max-width:1150px){.site-header{gap:16px}.wordmark{flex-basis:190px;padding-inline:24px}.site-header ul{gap:16px}.site-header nav a{font-size:11px}.nav-contact{font-size:11px;padding-inline:12px}.hero-grid{gap:32px}.hero-band{padding:24px}.hero-eyebrow{font-size:10px}.offering-grid{grid-template-columns:repeat(2,1fr)}.hero-actions{flex-direction:column;align-items:stretch}.hero-actions .button{justify-content:space-between}.book-grid{gap:48px}.biography-grid{gap:48px}.contact-grid{gap:48px}}
@media(max-width:950px){.container{width:calc(100% - 2 * var(--gutter-tablet))}.site-header{justify-content:space-between;padding-right:24px}.wordmark{flex-basis:220px}.site-header nav{position:absolute;top:100%;left:0;right:0;padding:24px;background:var(--color-cream);border-bottom:1px solid var(--border-default);display:none}.site-header nav.is-open{display:block}.site-header nav ul{display:grid;grid-template-columns:1fr 1fr;gap:8px 24px}.site-header nav a{font-size:16px}.site-header .nav-contact{margin-left:auto;font-size:12px}#menu-toggle{display:flex;gap:16px;align-items:center;justify-content:center;background:transparent;font-size:12px;min-height:48px;min-width:80px}.hero{padding-top:40px}.hero-grid{grid-template-columns:1fr .85fr;gap:32px}.hero-copy{padding-block:16px}.hero-band{align-self:center;padding:24px}.hero-eyebrow{font-size:10px;max-width:30ch}.hero-subline{font-size:16px}.hero-prelude{font-size:30px}h1{font-size:60px}.hero-actions{gap:12px;margin-top:24px}.hero-actions .button{font-size:13px}.credentials{font-size:9px;gap:16px;padding-top:24px}.hero-portrait figcaption{font-size:22px}.hero-portrait figcaption span{font-size:9px}.hero-footer{margin-top:40px}.biography-grid{grid-template-columns:.7fr 1fr;gap:32px}.biography-copy{font-size:15px;line-height:1.75}.book-grid{grid-template-columns:.7fr 1fr;gap:32px}.book-art{padding:24px 0}.book-art>img{width:90%}.book-art .eyebrow{font-size:10px}.book-copy h2{font-size:52px}.book-specs{grid-template-columns:1fr}.book-specs>div{display:grid;grid-template-columns:120px 1fr;align-items:baseline}.book-specs dd{margin:0}.research-grid{gap:16px}.feature-card{padding:24px 16px}.feature-card h3{font-size:24px}.feature-card p{font-size:14px}.checked-list{font-size:14px}.consulting-heading{gap:32px;grid-template-columns:1fr .55fr}.full-lockup{padding-left:24px}.full-lockup>span{font-size:40px}.media-topics,.media-resources{padding:32px}.media-resources h3{font-size:36px}.speaking-feature{gap:32px}.contact-grid{gap:32px;grid-template-columns:.8fr 1.2fr}.inquiry-panel{padding:24px}.form-row{grid-template-columns:1fr;gap:24px}.testimonials-grid{gap:24px}.testimonial-card blockquote p{font-size:20px}.consultation-card{grid-template-columns:1fr;gap:16px}.cv-tools{flex-direction:column}.cv-search{max-width:400px}.cv-search input{width:100%}}
@media(max-width:650px){html{scroll-padding-top:72px}.container{width:calc(100% - 2 * var(--gutter-mobile))}.section{padding-block:var(--section-space-mobile)}.site-header{height:var(--nav-height-mobile);padding-right:16px;gap:8px}.wordmark{flex-basis:auto;min-width:112px;font-size:28px;padding-inline:16px}.wordmark span{display:none}.site-header .nav-contact{font-size:11px;min-height:32px;padding:4px 12px;gap:8px}#menu-toggle{font-size:11px;min-width:56px;gap:8px}.site-header nav{padding:16px 24px}.site-header nav ul{grid-template-columns:1fr}.site-header nav a{font-size:16px;min-height:48px}main{padding-top:var(--nav-height-mobile)}.hero{padding-top:32px}.hero-grid{grid-template-columns:1fr;gap:40px}.hero-copy{padding-block:16px 0}.hero-eyebrow{max-width:none;font-size:10px;letter-spacing:.09em;margin-bottom:24px}h1{font-size:clamp(3rem,13vw,4.5rem)}.hero-prelude{font-size:clamp(1.75rem,7vw,2.25rem);margin-bottom:8px}.hero-subline{margin-top:24px;font-size:16px;line-height:1.65}.hero-actions{width:100%;gap:16px}.hero-actions .button{justify-content:space-between;font-size:14px;min-height:48px}.credentials{font-size:10px;gap:24px;padding-top:24px}.hero-band{padding:24px}.hero-portrait figcaption{font-size:24px}.hero-portrait figcaption span{font-size:10px}.hero-footer{margin-top:32px;padding-block:16px;display:grid;gap:0;font-size:11px}.hero-footer a{justify-content:space-between}.biography-grid{grid-template-columns:1fr;gap:40px}.biography-portrait img{aspect-ratio:4/3;object-position:center 30%;max-height:none}.biography-portrait figcaption{font-size:10px}.biography-copy{font-size:16px;line-height:1.8}.biography-grid h2{margin-bottom:24px}.section-heading{margin-bottom:32px}.section-heading p:last-child:not(.eyebrow){font-size:16px}.eyebrow{font-size:11px;letter-spacing:.11em}.book-grid{grid-template-columns:1fr;gap:40px}.book-art{padding:24px}.book-art>img{width:75%;max-width:280px;margin-block:32px}.book-art .eyebrow{font-size:11px}.book-copy h2{font-size:56px}.book-subtitle{font-size:24px}.book-synopsis{font-size:15px}.book-copy>.button{width:100%;justify-content:space-between;font-size:14px}.book-specs{margin-block:24px;gap:16px}.publisher-pill{font-size:10px;padding:8px 12px}.praise{margin-top:40px}.praise-heading{align-items:flex-start}.praise-heading h3{max-width:12ch}.praise-controls{gap:12px}.praise-controls button{width:48px;height:48px}.praise-slide{min-height:0;padding-block:32px}.praise-slide blockquote{font-size:27px}.praise-slide figcaption{flex-direction:column;align-items:flex-start}.praise-source{font-size:11px}.research-grid{grid-template-columns:1fr;gap:24px}.feature-card{padding:24px}.feature-card h3{min-height:0;font-size:28px}.feature-card>p{font-size:15px}.card-index{margin-bottom:24px}.consulting-heading{grid-template-columns:1fr;gap:32px}.consulting-heading h2{max-width:22ch}.consulting-motto{margin-top:24px!important}.full-lockup{border-left:0;border-block:1px solid var(--border-default);padding:32px 0}.full-lockup img{width:140px}.full-lockup>span{font-size:44px}.full-lockup small{font-size:10px}.offering-grid{grid-template-columns:1fr}.offering-card{padding:24px}.offering-card>p{margin-block:16px}.offering-card h3{font-size:20px}.service-catalog{grid-template-columns:1fr}.consulting-history{columns:1}.consultation-card{padding:24px}.consulting-faq{grid-template-columns:1fr}.testimonials-grid{grid-template-columns:1fr;gap:32px}.testimonials-section{margin-top:48px}.testimonial-card blockquote p{font-size:23px}.testimonials-section h2,.testimonials-section h3{font-size:36px}.testimonials-section .section-subtitle{font-size:14px}.media-grid{grid-template-columns:1fr}.media-topics,.media-resources{padding:24px}.media-topics h3{font-size:30px}.media-resources h3{font-size:36px}.media-topics>.button,.media-resources>.button{width:100%;font-size:13px;justify-content:space-between}.media-resources li{gap:16px}.speaking-feature{grid-template-columns:1fr;gap:32px}.speaking-feature p:not(.eyebrow){font-size:15px}.cv-heading{flex-direction:column;align-items:flex-start;gap:24px}.cv-downloads{align-items:flex-start;width:100%}.cv-downloads>.button{width:100%;font-size:14px;justify-content:space-between}.cv-section>.container>p{font-size:14px}.cv-tools{margin-top:24px}.cv-filters{gap:8px}.cv-filter{font-size:11px;padding:12px}.cv-search{max-width:none}.cv-entry{grid-template-columns:var(--cv-year-width-mobile) 1fr;gap:16px}.cv-year{font-size:10px}.cv-entry>div:last-child{padding-left:16px}.cv-entry h3{font-size:24px}.cv-entry p{font-size:12px}.contact-grid{grid-template-columns:1fr;gap:40px}.contact-copy h2{font-size:44px}.contact-copy dl{margin-block:32px}.inquiry-panel{padding:24px}.inquiry-panel h3{font-size:28px}.form-row{grid-template-columns:1fr}.footer-top{display:block}.footer-top>a{margin-top:16px}.footer-bottom{flex-direction:column;gap:16px;font-size:10px}.footer-name{font-size:32px}dialog{padding:24px}dialog h2{font-size:32px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.reveal-ready .reveal,.hero-line,.hero-eyebrow,.hero-subline,.hero-actions .button{opacity:1!important}.feature-card:hover,.offering-card:hover,.button:hover .arrow,.text-link:hover .arrow{transform:none!important}}
@media print{.site-header,.site-footer,.skip-link,.hero-actions,.praise-controls,.cv-tools,.contact-section,.video-frame,dialog{display:none!important}main{padding:0}body{background:var(--color-white);color:var(--color-ink)}.container{width:100%}.section{padding-block:24px}.reveal{opacity:1!important}a{text-decoration:none}.cv-entry{break-inside:avoid}}
/* The brief fixes all eyebrows at 12px, including narrow viewports. */
.eyebrow,.hero-eyebrow{font-size:var(--type-eyebrow)}
@media(max-width:950px){@media(scripting:none){.site-header{position:static;height:auto;display:grid;grid-template-columns:1fr auto;padding:0;gap:0}}@media(scripting:none){.wordmark{min-height:64px}}@media(scripting:none){.site-header .nav-contact{margin:8px 16px}}@media(scripting:none){#menu-toggle{display:none}}@media(scripting:none){.site-header nav{display:block;position:static;grid-column:1/-1;grid-row:2;padding:16px 24px}}@media(scripting:none){main{padding-top:0}}}

h1,h2,h3,h4{overflow-wrap:anywhere}

/* Visual revision following rejection of the initial warm layout. */
:root{--font-display:'Cormorant Garamond',Georgia,serif;--surface-hero:var(--color-navy);--surface-card:var(--color-white);--surface-page:var(--color-cream)}
body{font-weight:400}.site-header{background:var(--color-navy);color:var(--color-cream);padding-inline:40px;gap:32px;border-bottom:1px solid color-mix(in srgb,var(--color-cream) 20%,transparent)}.wordmark{flex-basis:195px;padding:0;font-size:34px;background:transparent}.wordmark span{font-family:var(--font-body);font-size:9px;letter-spacing:.025em;font-weight:400}.site-header nav a{font-weight:400;font-size:12px}.site-header ul{justify-content:flex-end;gap:24px}.site-header .nav-contact{border:1px solid var(--color-cream);font-size:12px;min-height:40px;border-radius:var(--radius-control);font-weight:500}.site-header .nav-contact::before{background:transparent}.site-header :focus-visible{outline-color:var(--color-cream)}.hero{background:var(--surface-hero);color:var(--color-cream);padding-top:48px}.hero-grid{grid-template-columns:1.1fr .9fr;gap:80px;align-items:center}.hero-copy{padding-block:32px;align-self:stretch}.hero-eyebrow{font-family:var(--font-body);font-size:11px;letter-spacing:.18em;font-weight:400;margin-bottom:32px;max-width:none}.hero h1{font-size:clamp(64px,6.5vw,94px);line-height:.95;letter-spacing:-.045em;font-weight:400}.hero-prelude{font-size:clamp(34px,3vw,44px);line-height:1.2;letter-spacing:-.035em;margin-bottom:16px}.hero-subline{max-width:48ch;font-size:16px;line-height:1.8;margin-top:32px}.hero-actions{margin-top:32px;gap:16px}.hero-actions .button{font-weight:500;font-size:13px;padding-inline:24px}.hero-actions .primary{color:var(--color-navy);border-color:var(--color-cream)}.hero-actions .primary::before{background:var(--color-cream)}.hero-actions .secondary{color:var(--color-cream);border-color:var(--color-cream)}.hero-actions .secondary::before{background:var(--color-navy)}.credentials{font-family:var(--font-body);font-size:10px;letter-spacing:.14em;margin-top:auto;padding-top:40px;gap:32px}.hero-band{padding:0;background:transparent;align-self:center}.hero-band::after{display:none}.hero-portrait{position:relative}.hero-portrait img{aspect-ratio:4/5;border:0;object-position:50% 50%;width:100%}.hero-portrait figcaption{font-size:27px;padding-top:24px;display:flex;justify-content:space-between;align-items:baseline;gap:16px}.hero-portrait figcaption span{font-family:var(--font-body);font-size:9px;letter-spacing:.06em;margin-top:0;max-width:12ch;line-height:1.5}.hero-footer{border-color:color-mix(in srgb,var(--color-cream) 25%,transparent);margin-top:48px;padding-block:20px;font-size:11px}.hero-footer a{font-size:12px}.section-heading h2{font-size:clamp(36px,4vw,58px)}.eyebrow{letter-spacing:.13em;font-weight:400}.biography-grid{grid-template-columns:.8fr 1.2fr;gap:96px}.biography-grid h2{font-size:56px;line-height:1.05}.biography-copy{font-size:16px;line-height:1.8}.biography-portrait img{max-height:580px;object-fit:cover}.biography-portrait figcaption{font-family:var(--font-body);font-size:11px}.book-section{background:var(--color-white)}.book-grid{grid-template-columns:.9fr 1.1fr;gap:80px}.book-art{background:var(--color-cream);border:0;padding:40px 32px}.book-art>img{width:70%;max-width:320px;margin-block:32px}.book-copy h2{font-size:72px;line-height:.95;letter-spacing:-.03em}.book-subtitle{font-family:var(--font-book);font-size:25px}.book-specs{padding-block:24px;margin-block:24px}.book-synopsis{font-size:15px}.praise{padding-top:32px;margin-top:64px}.praise-slide{min-height:200px;max-width:1080px}.praise-slide blockquote{font-size:32px;line-height:1.3}.praise-source{min-height:32px}.research-grid{gap:0;border-block:1px solid var(--border-default)}.feature-card{border:0;border-radius:0;padding:32px}.feature-card+.feature-card{border-left:1px solid var(--border-default)}.feature-card h3{font-size:30px;min-height:2.4em}.card-index{margin-bottom:24px;color:var(--color-navy)}.consulting-section{background:var(--color-white)}.consulting-heading{grid-template-columns:1.6fr .65fr;gap:80px}.consulting-heading h2{font-size:56px;line-height:1.05}.full-lockup{padding-left:48px}.full-lockup img{width:140px}.full-lockup>span{font-size:52px}.offering-grid{gap:16px}.offering-card{padding:24px;background:var(--color-white)}.offering-card h3{font-size:25px;line-height:1.1;min-height:2.2em}.offering-card>p{font-size:14px;line-height:1.75}.offering-card .checked-list{font-size:13px}.number-circle{background:var(--color-navy);color:var(--color-cream);border-color:var(--color-navy)}.consultation-card{grid-template-columns:1fr 1fr;background:var(--color-cream);padding:40px;gap:48px}.consultation-card h3{font-size:34px}.consultation-card h4{font-size:28px}.testimonials-grid{gap:40px}.testimonial-card blockquote p{font-size:24px;line-height:1.35}.media-topics{background:var(--color-white);border:0;padding:40px}.media-topics h3{font-size:34px}.media-topics h4{font-size:28px}.media-resources{padding:40px}.media-resources h3{font-size:44px}.media-resources li{border-color:color-mix(in srgb,var(--color-cream) 30%,transparent)}.cv-section{background:var(--color-white)}.cv-entry h3{font-size:28px}.contact-copy h2{font-size:60px;line-height:1.05}.contact-grid{gap:80px;grid-template-columns:.9fr 1.1fr}.inquiry-panel{background:var(--color-white);border:0;padding:40px}.inquiry-panel h3{font-size:34px}.inquiry-panel input,.inquiry-panel textarea,.inquiry-panel select{background:var(--color-white);border-color:var(--border-default)}.inquiry-panel input:focus-visible,.inquiry-panel textarea:focus-visible,.inquiry-panel select:focus-visible{outline-color:var(--color-navy)}.site-footer{background:var(--color-navy)}.footer-name{font-size:40px}.footer-bottom{border-color:color-mix(in srgb,var(--color-cream) 25%,transparent)}
@media(max-width:1150px){.site-header{padding-inline:24px;gap:24px}.wordmark{flex-basis:160px}.site-header ul{gap:16px}.site-header nav a{font-size:11px}.hero-grid{gap:48px;grid-template-columns:1.1fr .9fr}.hero h1{font-size:76px}.hero-prelude{font-size:38px}.hero-actions{flex-direction:row}.hero-actions .button{padding-inline:16px;font-size:12px}.biography-grid{gap:64px}.book-grid{gap:48px}.book-copy h2{font-size:64px}.offering-grid{grid-template-columns:repeat(2,1fr)}.offering-card h3{min-height:0}.consulting-heading{gap:48px}.contact-grid{gap:48px}}
@media(max-width:950px){.site-header nav{background:var(--color-navy);border-color:var(--color-cream)}.site-header nav a{font-size:16px}.hero-grid{gap:40px;grid-template-columns:1fr .85fr}.hero{padding-top:40px}.hero h1{font-size:64px}.hero-prelude{font-size:32px}.hero-eyebrow{font-size:10px;max-width:30ch}.hero-subline{font-size:15px;margin-top:24px}.hero-actions{flex-direction:column;align-items:stretch;gap:12px;margin-top:24px}.hero-actions .button{font-size:13px}.hero-portrait figcaption{display:block;font-size:24px;padding-top:16px}.hero-portrait figcaption span{max-width:none;margin-top:8px}.credentials{font-size:9px;gap:16px;padding-top:32px}.biography-grid{gap:40px}.biography-grid h2{font-size:44px}.biography-copy{font-size:15px}.book-grid{gap:40px;grid-template-columns:.7fr 1fr}.book-art{padding:24px 16px}.book-art>img{width:95%}.book-copy h2{font-size:54px}.feature-card{padding:24px 16px}.feature-card h3{font-size:28px}.consulting-heading h2{font-size:48px}.consultation-card{padding:32px;gap:32px}.media-topics,.media-resources{padding:32px}.media-topics h3{font-size:30px}.media-resources h3{font-size:38px}.contact-grid{gap:40px;grid-template-columns:.8fr 1.2fr}.contact-copy h2{font-size:48px}.inquiry-panel{padding:32px}.inquiry-panel h3{font-size:30px}@media(scripting:none){.site-header nav{background:var(--color-navy)}}}
@media(max-width:650px){.site-header{padding-inline:16px;gap:8px}.wordmark{font-size:28px;min-width:0;flex-basis:auto}.site-header .nav-contact{font-size:10px;padding:4px 12px;min-height:32px}.site-header nav{padding:16px 24px}.hero{padding-top:32px}.hero-grid{grid-template-columns:1fr;gap:32px}.hero-copy{padding-block:8px 0}.hero-eyebrow{font-size:10px;letter-spacing:.1em;max-width:none;margin-bottom:24px}.hero h1{font-size:clamp(55px,15vw,76px);line-height:.95}.hero-prelude{font-size:31px;line-height:1.2;margin-bottom:12px}.hero-subline{font-size:15px;line-height:1.8;margin-top:24px}.hero-actions{gap:12px;margin-top:24px}.hero-actions .button{font-size:13px}.credentials{font-size:9px;gap:24px;padding-top:24px}.hero-band{padding:0}.hero-portrait img{aspect-ratio:4/5}.hero-portrait figcaption{font-size:28px;padding-top:16px}.hero-portrait figcaption span{font-size:9px}.hero-footer{margin-top:32px;padding-block:16px;font-size:10px}.hero-footer a{font-size:11px}.biography-grid{grid-template-columns:1fr;gap:32px}.biography-grid h2{font-size:44px}.biography-copy{font-size:16px}.biography-portrait img{aspect-ratio:1/1;max-height:none}.book-grid{grid-template-columns:1fr;gap:40px}.book-art{padding:32px 24px}.book-art>img{width:76%;max-width:280px}.book-copy h2{font-size:56px}.book-subtitle{font-size:25px}.praise{margin-top:48px}.praise-slide{min-height:0}.praise-slide blockquote{font-size:28px}.research-grid{grid-template-columns:1fr;gap:0}.feature-card{padding:32px 0}.feature-card+.feature-card{border-left:0;border-top:1px solid var(--border-default)}.feature-card h3{font-size:32px;min-height:0}.consulting-heading{grid-template-columns:1fr;gap:32px}.consulting-heading h2{font-size:44px}.full-lockup{padding:32px 0}.full-lockup img{width:120px}.full-lockup>span{font-size:44px}.offering-grid{grid-template-columns:1fr;gap:16px}.offering-card{padding:24px}.offering-card h3{font-size:28px}.offering-card>p{font-size:15px}.offering-card .checked-list{font-size:14px}.consultation-card{grid-template-columns:1fr;gap:24px;padding:24px}.consultation-card h3{font-size:30px}.testimonials-grid{gap:32px}.testimonial-card blockquote p{font-size:25px}.media-topics,.media-resources{padding:24px}.media-topics h3{font-size:32px}.media-resources h3{font-size:38px}.cv-entry h3{font-size:26px}.contact-grid{grid-template-columns:1fr;gap:32px}.contact-copy h2{font-size:48px}.inquiry-panel{padding:24px}.inquiry-panel h3{font-size:32px}.footer-name{font-size:34px}}
/* User-directed palette: white, beige, stone and black. */
:root{--surface-hero:var(--color-white);--surface-page:var(--color-white);--surface-card:var(--color-white)}
.site-header{background:var(--color-white);color:var(--color-ink);border-bottom:1px solid var(--color-hairline)}.wordmark{color:var(--color-ink)}.site-header .nav-contact{border-color:var(--color-ink);color:var(--color-white)}.site-header .nav-contact::before{background:var(--color-ink)}.site-header :focus-visible{outline-color:var(--color-ink)}.hero{color:var(--color-ink);background:var(--color-white)}.hero h1{font-weight:400}.hero-eyebrow{font-family:var(--font-mono);font-size:12px;letter-spacing:.12em}.hero-band{background:var(--color-white)}.hero-actions .primary{background:var(--color-ink);color:var(--color-white);border-color:var(--color-ink)}.hero-actions .primary::before{background:var(--color-ink)}.hero-actions .secondary{color:var(--color-ink);border-color:var(--color-ink)}.hero-actions .secondary::before{background:var(--color-white)}.hero-portrait figcaption{color:var(--color-ink);border-bottom:1px solid var(--color-hairline);padding-bottom:24px}.hero-footer{border-color:var(--color-hairline)}.biography-grid{padding-top:16px;padding-bottom:16px}#biography{background:var(--color-cream);border-top:0}.book-section{background:var(--color-white)}.book-art{background:var(--color-cream)}.publisher-pill{background:var(--color-cream)}.praise{border-color:var(--color-hairline)}#scholarship{background:var(--color-cream);border-top:0}.research-grid{border-color:var(--color-hairline)}.consulting-section{background:var(--color-white)}.full-lockup img{mix-blend-mode:multiply}.number-circle{background:transparent;color:var(--color-ink);border-color:var(--color-ink)}.offering-card:hover::before,.feature-card:hover::before{background:var(--color-ink)}.consultation-card{border:0;border-left:3px solid var(--color-hairline);background:var(--color-cream)}.testimonial-card{border-color:var(--color-hairline)}#speaking{background:var(--color-cream);border-top:0}.media-resources{background:var(--color-ink);color:var(--color-white)}.media-resources>.eyebrow,.media-resources li span{color:var(--color-hairline)}.media-resources li{border-color:color-mix(in srgb,var(--color-white) 30%,transparent)}.video-frame{background:var(--color-ink)}.cv-entry>div:last-child{border-left-color:var(--color-hairline)}.cv-filter.is-active{background:var(--color-ink);color:var(--color-white);border-color:var(--color-ink)}.cv-search input{background:var(--color-white);border-color:var(--color-hairline)}.contact-section{background:var(--color-cream)}.contact-pill{border-color:var(--color-ink)}.contact-copy .disclaimer{border-color:var(--color-hairline)}.site-footer{background:var(--color-ink);color:var(--color-white)}.footer-bottom{border-color:color-mix(in srgb,var(--color-white) 25%,transparent)}
@media(max-width:950px){.site-header nav{background:var(--color-white);color:var(--color-ink);border-color:var(--color-hairline)}.hero-eyebrow{font-size:12px;max-width:30ch}.hero-portrait figcaption{padding-bottom:16px}}
@media(max-width:650px){.site-header{padding-inline:16px}.hero-eyebrow{font-size:12px;max-width:none;letter-spacing:.08em}.hero-prelude{font-size:30px}.hero h1{font-size:clamp(52px,15vw,76px)}.hero-subline{font-size:16px}.credentials{padding-top:24px}#biography .biography-grid{padding-block:0}.hero-portrait figcaption{padding-bottom:16px}.media-resources h3{font-size:38px}}
.credentials{margin-top:0}.hero-copy{justify-content:center}.hero-portrait figcaption span{max-width:none;font-size:9px;letter-spacing:.03em}.hero-portrait{max-width:480px;margin-left:auto}
@media(max-width:950px){.hero-portrait{max-width:none}.hero-portrait figcaption{display:block}}
.inquiry-panel input,.inquiry-panel textarea,.inquiry-panel select,.cv-search input{border-color:color-mix(in srgb,var(--color-ink) 55%,var(--color-white))}
.consultation-card>div{min-width:0}.consultation-card .button{max-width:100%;font-size:14px;padding-inline:16px;gap:16px}

/* Warm neutral palette; section spacing preserved at the user's request. */
.eyebrow,.hero-eyebrow,.card-index{color:var(--color-olive)}
#biography,#scholarship,#speaking{background:var(--color-white);border-top:1px solid var(--border-default)}
.media-resources{background:var(--color-cream);color:var(--color-ink)}
.media-resources>.eyebrow,.media-resources li span{color:var(--color-olive)}
.media-resources li{border-color:var(--color-hairline)}
.media-resources>.button{color:var(--color-ink);border-color:var(--color-ink)}
.media-resources>.button::before{background:transparent}
.media-resources :focus-visible,.site-footer :focus-visible,.wordmark:focus-visible{outline-color:var(--color-ink)}
.cv-filter.is-active{background:var(--color-olive);border-color:var(--color-olive)}
.site-footer{background:var(--color-white);color:var(--color-ink)}
.footer-bottom{border-color:var(--color-hairline)}
/* Testimonials: excerpts first, complete original quotations on demand. */
.testimonials-section .section-header{display:flex;justify-content:space-between;align-items:end;gap:32px;margin-bottom:32px}
.testimonials-intro{max-width:34ch;font-size:14px;line-height:1.65}
.testimonials-section .section-kicker{color:var(--color-olive)}
.testimonials-featured{gap:32px;align-items:start}
.testimonial-story{min-width:0;border-top:1px solid var(--border-default)}
.testimonial-story>summary{list-style:none;padding:24px 0 0}
.testimonial-story>summary::-webkit-details-marker,.testimonials-more>summary::-webkit-details-marker{display:none}
.testimonial-category{display:block;font:11px/1.6 var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--color-olive);margin-bottom:20px}
.testimonial-excerpt{display:block;font:28px/1.3 var(--font-display);font-weight:400;min-height:6.5em;text-wrap:pretty}
.testimonial-person{display:block;margin-top:24px;min-height:6.2em;font-size:12px;line-height:1.6;font-weight:400}
.testimonial-person strong{display:block;font-weight:600;margin-bottom:4px}
.testimonial-person>span{display:block;max-width:38ch}
.testimonial-toggle{display:flex;justify-content:space-between;gap:16px;align-items:center;min-height:48px;margin-top:16px;border-top:1px solid var(--border-default);font:12px/1.5 var(--font-body);font-weight:500}
.testimonial-toggle>span:last-child,.archive-indicator{font-size:20px;font-weight:400;color:var(--color-olive)}
.testimonial-story .when-open{display:none}
.testimonial-story[open] .when-open{display:inline}
.testimonial-story[open] .when-closed{display:none}
.testimonial-story[open] .testimonial-toggle>span:last-child,.archive-story[open] .archive-indicator{transform:rotate(45deg)}
.testimonial-story>summary:hover .testimonial-toggle{text-decoration:underline;text-underline-offset:4px}
.testimonial-full{border:0;padding:20px 0 24px}
.testimonial-full blockquote p{font:15px/1.75 var(--font-body);max-width:65ch}
.testimonial-full figcaption{font-size:11px;line-height:1.65;margin-top:16px}
.testimonials-more{margin-top:32px;border-block:1px solid var(--border-default)}
.testimonials-more>summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:64px;padding-block:16px;font-size:14px}
.testimonial-count{font:11px var(--font-mono);margin-left:12px;color:var(--color-olive)}
.archive-hint{font-size:12px;display:flex;align-items:center;gap:24px}
.testimonials-archive{max-width:900px;margin-inline:auto;padding-bottom:24px}
.archive-story>summary{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-block:20px;font-size:13px;line-height:1.65;font-weight:500;min-height:64px}
.archive-story>summary>span:first-child{max-width:75ch}
.archive-story .testimonial-full{padding-top:0}
@media(max-width:950px){
 .testimonials-featured{gap:24px}
 .testimonial-excerpt{font-size:24px;min-height:9.1em}
 .testimonial-person{min-height:9.6em}
}
@media(max-width:650px){
 .testimonials-section .section-header{display:block;margin-bottom:24px}
 .testimonials-intro{margin-top:16px;max-width:36ch}
 .testimonials-featured{gap:24px}
 .testimonial-excerpt{font-size:27px;min-height:0}
 .testimonial-category{margin-bottom:16px}
 .testimonial-person{min-height:0;margin-top:20px}
 .testimonial-toggle{margin-top:20px}
 .testimonials-more>summary{gap:16px;align-items:start}
 .archive-hint{font-size:11px;max-width:12ch;gap:12px}
}

/* Material, hierarchy and composition across the complete site. */
.site-header{background:color-mix(in srgb,var(--color-white) 94%,transparent);backdrop-filter:blur(16px);box-shadow:0 4px 20px color-mix(in srgb,var(--color-ink) 3%,transparent)}
.site-header nav a{position:relative}
.site-header nav a:hover{color:var(--color-olive)}
.site-header .nav-contact{border-radius:3px}
.button{box-shadow:0 2px 3px color-mix(in srgb,var(--color-ink) 5%,transparent);font-size:14px}
.button.text-button{box-shadow:none}
.button.secondary::before{background:var(--color-white)}
.hero{position:relative;isolation:isolate;padding-top:56px;background:linear-gradient(90deg,var(--color-white) 0%,var(--color-white) 62%,var(--color-cream) 62%,var(--color-cream) 100%)}
.hero-grid{gap:72px;grid-template-columns:1.12fr .88fr}
.hero-copy{padding-block:16px 32px}
.hero h1{font-size:clamp(64px,6.5vw,94px)}
.hero-line em{color:var(--color-olive)}
.hero-eyebrow{display:flex;align-items:center;gap:16px}
.hero-eyebrow::before{content:"";width:28px;height:1px;flex:none;background:var(--color-olive)}
.hero-band{background:transparent;padding:0 20px 0 0}
.hero-portrait{max-width:460px;position:relative;padding-bottom:22px}
.hero-portrait::before{content:"";position:absolute;inset:24px -20px 76px 24px;border:1px solid color-mix(in srgb,var(--color-olive) 35%,var(--color-hairline));z-index:-1}
.hero-portrait img{box-shadow:var(--shadow-portrait);border-radius:3px}
.hero-portrait figcaption{position:relative;margin:-30px 24px 0 -24px;padding:22px 24px;background:var(--color-white);box-shadow:var(--shadow-paper);border:1px solid var(--color-hairline);display:block;font-size:28px}
.hero-portrait figcaption span{margin-top:8px;font-size:10px;letter-spacing:.08em}
.credentials{border-top:1px solid var(--color-hairline);padding-top:20px;margin-top:28px;gap:28px}
.hero-footer{margin-top:28px;padding-block:12px}
.section-heading .eyebrow{display:flex;align-items:center;gap:14px}
.section-heading .eyebrow::before{content:"";height:1px;width:24px;background:var(--color-olive)}
#biography{background:var(--color-white)}
.biography-grid{grid-template-columns:.8fr 1.2fr;gap:96px}
.biography-portrait{position:relative;padding:0 24px 0 0}
.biography-portrait::before{content:"";position:absolute;inset:32px 0 48px 32px;background:var(--color-cream);z-index:0;border:1px solid var(--color-hairline)}
.biography-portrait img{position:relative;box-shadow:var(--shadow-paper);border:0;max-height:560px}
.biography-portrait figcaption{position:relative;padding-left:16px;border-left:2px solid var(--color-olive);font-size:11px}
.biography-copy{line-height:1.85}
.book-section{background:linear-gradient(180deg,var(--color-cream),var(--color-white) 80%);border:0}
.book-grid{grid-template-columns:.86fr 1.14fr;gap:80px;align-items:center}
.book-art{position:relative;background:color-mix(in srgb,var(--color-white) 60%,var(--color-cream));border:1px solid var(--color-hairline);padding:32px 32px 24px;box-shadow:inset 0 0 0 10px color-mix(in srgb,var(--color-white) 50%,transparent)}
.book-art>img{box-shadow:var(--shadow-book);width:68%;max-width:300px;margin-block:32px 40px;transform:rotate(-2deg)}
.book-art-caption{padding-top:16px;border-top:1px solid var(--color-hairline);width:100%}
.publisher-pill{border:1px solid var(--color-hairline);background:var(--color-white);font-size:10px;letter-spacing:.03em}
.book-copy h2{font-size:64px}
.book-specs{border-top:1px solid var(--color-hairline);border-bottom:0}
.praise{position:relative;background:var(--color-white);padding:28px 36px 24px;border:1px solid var(--color-hairline);box-shadow:var(--shadow-paper);margin-top:56px}
.praise-slide{padding-block:24px;min-height:0}
.praise-controls button{border-radius:50%;background:var(--color-white)}
#scholarship{background:var(--color-white)}
.research-grid{border:0;gap:24px}
.feature-card{background:var(--color-cream);padding:32px;border:1px solid var(--color-hairline);border-radius:3px}
.feature-card+.feature-card{border-left:1px solid var(--color-hairline)}
.feature-card:nth-child(2){background:color-mix(in srgb,var(--color-white) 65%,var(--color-cream))}
.feature-card:nth-child(3){background:var(--color-white);box-shadow:var(--shadow-paper)}
.card-index{display:flex;align-items:center;gap:12px}
.card-index::after{content:"";height:1px;width:32px;background:var(--color-olive)}
.feature-card h3{font-size:30px}
.consulting-section{background:linear-gradient(180deg,var(--color-white),color-mix(in srgb,var(--color-white) 60%,var(--color-cream)))}
.full-lockup{border:1px solid var(--color-hairline);padding:24px 32px;background:var(--color-white);box-shadow:var(--shadow-paper);justify-self:end;max-width:300px;width:100%}
.full-lockup img{width:100px}
.full-lockup>span{font-size:40px;margin-top:12px}
.offering-grid{gap:20px}
.offering-card{background:var(--color-white);box-shadow:var(--shadow-paper);padding:28px 24px;border:1px solid var(--color-hairline);border-radius:3px}
.number-circle{background:var(--color-cream);color:var(--color-olive);border-color:var(--color-hairline)}
.offering-card h3{font-size:26px}
.offering-card .checked-list li+li{border-color:color-mix(in srgb,var(--color-hairline) 60%,transparent)}
.offering-card:hover,.feature-card:hover{box-shadow:var(--shadow-portrait)}
.consultation-card{background:var(--color-white);border:1px solid var(--color-hairline);border-left:3px solid var(--color-olive);box-shadow:var(--shadow-paper)}
.testimonials-section{padding-top:56px;border-top:1px solid var(--color-hairline)}
.testimonials-section .section-title{font-size:48px}
.testimonials-featured{grid-template-columns:1.2fr 1fr 1fr;gap:24px;align-items:start}
.testimonials-featured>.testimonial-story{background:var(--color-white);border:1px solid var(--color-hairline);border-radius:3px;box-shadow:var(--shadow-paper);padding:28px;position:relative}
.testimonials-featured>.testimonial-story:first-child{background:var(--color-cream);border-top:3px solid var(--color-olive);padding-top:26px}
.testimonials-featured .testimonial-story>summary{padding:0}
.testimonial-category{font-size:10px;margin-bottom:28px}
.testimonial-excerpt{font-size:27px;min-height:7.8em}
.testimonials-featured>.testimonial-story:first-child .testimonial-excerpt{font-size:32px;min-height:6.582em}
.testimonial-person{min-height:5em;margin-top:24px}
.testimonial-toggle{margin-top:16px}
.testimonial-toggle>span:last-child{border:1px solid var(--color-hairline);border-radius:50%;width:28px;height:28px;display:grid;place-items:center;flex:none;background:var(--color-white)}
.testimonial-full{padding-bottom:0}
.testimonials-more{background:var(--color-white);border:1px solid var(--color-hairline);border-radius:3px;margin-top:24px;padding-inline:28px}
.testimonials-archive{max-width:none}
.archive-story .testimonial-full{padding-bottom:24px}
#speaking{background:var(--color-white)}
.media-grid{gap:32px}
.media-topics{padding:32px 40px 32px 0}
.media-resources{background:linear-gradient(135deg,var(--color-cream),color-mix(in srgb,var(--color-white) 60%,var(--color-cream)));border:1px solid var(--color-hairline);box-shadow:var(--shadow-paper);position:relative;border-top:3px solid var(--color-olive);border-radius:3px}
.media-topics h4{font-size:28px}
.speaking-feature{padding-top:40px;border-top:1px solid var(--color-hairline);gap:56px}
.video-frame{box-shadow:var(--shadow-portrait);border:6px solid var(--color-white);outline:1px solid var(--color-hairline)}
.play-disc{box-shadow:0 8px 28px color-mix(in srgb,var(--color-ink) 25%,transparent)}
.cv-section{background:color-mix(in srgb,var(--color-white) 70%,var(--color-cream))}
.cv-tools{border:1px solid var(--color-hairline);padding:20px 24px;background:var(--color-white);border-radius:3px;box-shadow:var(--shadow-paper)}
.cv-filter{border-color:transparent;border-radius:3px}
.cv-entry{padding:24px 16px}
.cv-entry:nth-child(2n){background:color-mix(in srgb,var(--color-cream) 45%,transparent)}
.cv-entry>div:last-child{position:relative;border-left-width:1px;padding-left:28px}
.cv-entry>div:last-child::before{content:"";position:absolute;left:-4px;top:11px;width:7px;height:7px;border-radius:50%;background:var(--color-olive);box-shadow:0 0 0 4px var(--color-white)}
.cv-year{color:var(--color-olive)}
.contact-section{background:linear-gradient(120deg,var(--color-cream),color-mix(in srgb,var(--color-white) 50%,var(--color-cream)))}
.contact-copy h2{font-size:64px}
.contact-pill{border-color:var(--color-hairline);background:var(--color-white);color:var(--color-olive)}
.inquiry-panel{border:1px solid var(--color-hairline);border-top:3px solid var(--color-olive);box-shadow:var(--shadow-portrait);border-radius:3px;background:var(--color-white)}
.inquiry-panel h3{font-size:32px;max-width:26ch;text-wrap:pretty}
.inquiry-panel input,.inquiry-panel textarea,.inquiry-panel select{background:color-mix(in srgb,var(--color-white) 80%,var(--color-cream));border-radius:3px}
.site-footer{border-top:1px solid var(--color-hairline)}
.footer-name{font-size:44px}
@media(min-width:951px){.consulting-heading{align-items:center}.hero-actions{width:auto}}
@media(max-width:1150px){
 .hero-grid{gap:48px}.hero h1{font-size:76px}.hero-band{padding-right:16px}
 .biography-grid,.book-grid{gap:56px}.book-copy h2{font-size:60px}
 .testimonials-featured{gap:16px}.testimonials-featured>.testimonial-story{padding:24px 20px}
 .testimonials-featured>.testimonial-story:first-child{padding-top:22px}
 .testimonial-excerpt{font-size:24px;min-height:13em}
 .testimonials-featured>.testimonial-story:first-child .testimonial-excerpt{font-size:28px;min-height:11.143em}
 .testimonial-person{min-height:10em}
}
@media(max-width:950px){
 .hero-grid{gap:40px}.hero h1{font-size:64px}.hero-eyebrow{gap:12px}.hero-eyebrow::before{width:16px}
 .hero-portrait figcaption{margin:-18px 12px 0 -12px;padding:18px;font-size:24px}
 .biography-grid,.book-grid{gap:40px}.book-copy h2{font-size:52px}
 .book-art{padding:24px 16px}.book-art>img{width:82%}
 .feature-card{padding:24px 20px}.feature-card h3{font-size:27px}
 .full-lockup{padding:24px}.full-lockup>span{font-size:36px}
 .testimonials-featured{grid-template-columns:1fr 1fr;gap:20px}
 .testimonials-featured>.testimonial-story:first-child{grid-column:1/-1;padding:28px}
 .testimonials-featured>.testimonial-story:first-child .testimonial-excerpt{font-size:36px;min-height:0;max-width:32ch}
 .testimonials-featured>.testimonial-story:first-child .testimonial-person{min-height:0}
 .testimonials-featured>.testimonial-story:first-child .testimonial-person>span{max-width:64ch}
 .testimonial-excerpt{min-height:9.1em}.testimonial-person{min-height:5em}
 .media-topics{padding:28px 0}.media-resources{padding:28px}
 .contact-copy h2{font-size:48px}.cv-tools{padding:20px}
}
@media(max-width:650px){
 .hero{padding-top:32px;background:var(--color-white)}.hero-grid{gap:32px;grid-template-columns:1fr}
 .hero h1{font-size:clamp(52px,15vw,76px)}.hero-copy{padding-block:8px 0}
 .hero-eyebrow{display:block}.hero-eyebrow::before{display:none}
 .hero-band{padding:20px 16px 0;background:var(--color-cream);border:1px solid var(--color-hairline)}
 .hero-portrait{padding-bottom:16px}.hero-portrait::before{display:none}
 .hero-portrait figcaption{margin:-24px 12px 0 -4px;padding:18px 16px;font-size:25px}
 .hero-portrait figcaption span{font-size:9px;letter-spacing:.02em}
 .credentials{font-size:9px;gap:20px;padding-top:20px;margin-top:24px}
 .hero-footer{margin-top:24px}.biography-grid,.book-grid{grid-template-columns:1fr;gap:32px}
 .biography-portrait{padding-right:16px}.biography-portrait::before{inset:24px 0 40px 24px}
 .biography-portrait img{max-height:none}
 .book-art{padding:24px}.book-art>img{max-width:240px;width:78%}
 .book-copy h2{font-size:54px}.praise{padding:24px 20px;margin-top:40px}
 .praise-heading{gap:8px}.praise-controls{gap:8px}.praise-controls button{width:44px;height:44px}
 .praise-controls p{font-size:10px}.praise-heading .eyebrow{font-size:10px}
 .research-grid{gap:16px}.feature-card,.feature-card+.feature-card{padding:28px 24px;border:1px solid var(--color-hairline)}
 .feature-card h3{font-size:30px}.full-lockup{justify-self:start;max-width:260px}
 .offering-card{padding:28px 24px}.testimonials-section{padding-top:40px}
 .testimonials-section .section-title{font-size:40px}.testimonials-featured{grid-template-columns:1fr}
 .testimonials-featured>.testimonial-story,.testimonials-featured>.testimonial-story:first-child{padding:24px;grid-column:auto}
 .testimonials-featured>.testimonial-story:first-child{padding-top:22px}
 .testimonial-excerpt,.testimonials-featured>.testimonial-story:first-child .testimonial-excerpt{font-size:28px;min-height:0}
 .testimonial-person{min-height:0}.testimonial-category{margin-bottom:20px}
 .testimonials-more{padding-inline:20px}.testimonials-more>summary{font-size:13px}
 .media-grid{gap:24px}.media-topics{padding:0}.media-resources{padding:28px 24px}
 .speaking-feature{gap:32px;padding-top:32px}.cv-tools{padding:16px}
 .cv-entry{padding:24px 0}.cv-entry>div:last-child{padding-left:20px}
 .contact-copy h2{font-size:48px}.inquiry-panel{padding:28px 24px}.inquiry-panel h3{font-size:30px}
 .footer-name{font-size:34px}
}
@media(prefers-reduced-motion:reduce){.book-art>img{transform:none}}
@media print{.hero,.book-section,.consulting-section,.contact-section,.cv-section{background:var(--color-white)}.hero-portrait img,.book-art>img,.praise,.feature-card,.offering-card,.testimonial-story,.inquiry-panel{box-shadow:none}.hero-portrait figcaption{margin:16px 0 0}.hero-portrait::before,.biography-portrait::before{display:none}}

/* Brand-led navigation, aligned to the page grid. */
.site-header{height:var(--nav-height-desktop);padding-inline:max(48px,calc((100vw - 1280px)/2));gap:32px;background:var(--color-white);backdrop-filter:none;box-shadow:0 4px 18px color-mix(in srgb,var(--color-ink) 3%,transparent)}
.wordmark{display:flex;flex-direction:row;align-items:center;justify-content:flex-start;align-self:center;flex:0 0 auto;gap:14px;padding:0;min-width:0;background:transparent}
.brand-quill{width:56px;height:64px;object-fit:cover;object-position:53% 50%;mix-blend-mode:multiply;flex:none}
.wordmark .brand-type{display:flex;flex-direction:column;margin:0;letter-spacing:0}
.wordmark .brand-title{font:500 18px/1.15 var(--font-body);letter-spacing:.13em;text-transform:uppercase;color:var(--color-ink)}
.wordmark .brand-descriptor{font:10px/1.5 var(--font-body);letter-spacing:0;margin-top:5px;display:block;color:var(--color-olive)}
.site-header nav{margin-left:auto;flex:0 1 auto}
.site-header ul{gap:24px}
.site-header nav a{min-height:48px;font-size:12px;letter-spacing:.015em;font-weight:500;text-decoration:none}
.site-header nav a::after{content:"";position:absolute;inset:auto 0 4px;height:2px;background:var(--color-olive);transform:scaleX(0);transform-origin:left;transition:transform var(--duration-detail) var(--ease-standard)}
.site-header nav a:hover{text-decoration:none}
.site-header nav a:hover::after,.site-header nav a[aria-current]::after{transform:scaleX(1)}
.site-header nav a[aria-current]{color:var(--color-olive)}
.site-header .nav-contact{min-height:42px;padding-inline:18px;font-size:12px;gap:18px;margin:0;flex:none;box-shadow:none}
#menu-toggle{border:1px solid var(--color-hairline);border-radius:3px}
.menu-icon{display:block;width:18px;height:12px;position:relative;border-block:1px solid currentColor}
.menu-icon::after{content:"";position:absolute;top:5px;left:0;right:0;border-top:1px solid currentColor}
#menu-toggle[aria-expanded=true] .menu-icon{border:0}
#menu-toggle[aria-expanded=true] .menu-icon::before,#menu-toggle[aria-expanded=true] .menu-icon::after{content:"";position:absolute;top:6px;left:0;right:0;border-top:1px solid currentColor;transform:rotate(45deg)}
#menu-toggle[aria-expanded=true] .menu-icon::after{transform:rotate(-45deg)}
html{scroll-padding-top:104px}
@media(max-width:1250px) and (min-width:951px){
 .site-header{padding-inline:32px;gap:24px}.site-header ul{gap:16px}.site-header nav a{font-size:11px}.wordmark .brand-title{font-size:18px}.brand-quill{width:52px;height:60px}.wordmark .brand-descriptor{font-size:10px}.site-header .nav-contact{padding-inline:14px;gap:12px}
}
@media(max-width:1100px){
 .site-header{padding-inline:32px;gap:20px}.site-header nav{display:none;position:absolute;top:100%;left:0;right:0;margin:0;padding:24px 32px 32px;background:var(--color-white);border-bottom:1px solid var(--color-hairline);box-shadow:0 16px 24px -16px color-mix(in srgb,var(--color-ink) 20%,transparent);max-height:calc(100dvh - var(--nav-height-desktop));overflow-y:auto}
 .site-header nav.is-open{display:block}.site-header nav ul{display:grid;grid-template-columns:1fr 1fr;gap:4px 32px}
 .site-header nav a{min-height:52px;font-size:16px;border-bottom:1px solid var(--color-hairline)}
 .site-header nav a::after{bottom:-1px}
 .site-header .nav-contact{margin-left:auto}
 #menu-toggle{display:flex;align-items:center;justify-content:center;gap:12px;min-width:88px;min-height:44px;padding:10px 12px;font-size:12px;background:transparent}
 @media(scripting:none){.site-header{position:static;height:auto;display:flex;flex-wrap:wrap;padding-top:16px;padding-bottom:0}}
 @media(scripting:none){.site-header nav{display:block;position:static;flex-basis:100%;order:4;padding-inline:0;max-height:none;box-shadow:none;border-bottom:0}}
 @media(scripting:none){#menu-toggle{display:none}}@media(scripting:none){main{padding-top:0}}
}
@media(max-width:650px){
 html{scroll-padding-top:96px}.site-header{height:var(--nav-height-mobile);padding-inline:20px;gap:12px}
 .wordmark{gap:10px}.brand-quill{width:43px;height:50px}.wordmark .brand-title{font-size:16px;letter-spacing:.1em}.wordmark .brand-descriptor{display:none}
 .site-header .nav-contact{padding:8px 12px;font-size:11px;min-height:40px;gap:8px}.site-header .nav-contact .arrow{display:none}
 #menu-toggle{min-width:44px;width:44px;min-height:44px;padding:12px}.menu-label{display:none}
 .site-header nav{padding:16px 24px 24px;max-height:calc(100dvh - var(--nav-height-mobile))}.site-header nav ul{grid-template-columns:1fr;gap:0}
}
@media(max-width:360px){.site-header{padding-inline:12px;gap:8px}.wordmark .brand-title{font-size:14px;letter-spacing:.08em}.brand-quill{width:40px;height:46px}.site-header .nav-contact{padding-inline:10px}}
@media(prefers-reduced-motion:reduce){.site-header nav a::after{transition:none}}

/* Softer controls and a unified, quieter hero statement. */
.button.primary,.hero-actions .primary,.site-header .nav-contact{background:var(--button-primary-bg);color:var(--button-primary-text);border-color:color-mix(in srgb,var(--color-olive) 35%,var(--color-white));box-shadow:none;border-radius:5px}
.button.primary::before,.hero-actions .primary::before,.site-header .nav-contact::before{background:var(--button-primary-bg)}
.button.secondary,.hero-actions .secondary,.button.on-dark,.media-resources>.button{color:var(--color-olive);border-color:var(--color-hairline);box-shadow:none;border-radius:5px}
.button.secondary::before,.hero-actions .secondary::before,.button.on-dark::before,.media-resources>.button::before{background:var(--color-white)}
.button.primary:hover::before{background:color-mix(in srgb,var(--color-olive) 18%,var(--color-white))}
.button.secondary:hover::before{background:var(--color-cream)}
.hero-copy{align-items:flex-start;padding-block:24px}
.hero-eyebrow{font:10px/1.6 var(--font-body);letter-spacing:.13em;margin-bottom:28px;font-weight:500}
.hero h1{font-size:clamp(42px,4.55vw,66px);line-height:1.1;letter-spacing:-.025em;font-weight:400;max-width:100%;text-wrap:balance}
.hero h1 .line-mask{overflow:visible}
.hero-emphasis{color:var(--color-olive)}
.hero-subline{max-width:47ch;margin-top:28px;font-size:16px;line-height:1.8}
.hero-affiliation{max-width:46ch;margin-top:12px;font-size:13px;line-height:1.7}
.hero-actions{margin-top:28px;gap:14px}
.hero-actions .button{min-height:48px;padding-inline:22px;font-size:13px;font-weight:500;gap:20px}
.credentials{border:0;margin-top:28px;padding-top:0;gap:0;font-size:10px;letter-spacing:.09em}
.credentials span+span{border-left:1px solid var(--color-hairline);padding-left:18px;margin-left:18px}
@media(max-width:1150px){.hero-actions{flex-direction:row;align-items:center}.hero-actions .button{padding-inline:16px;font-size:12px;gap:16px}}
@media(max-width:950px){.hero h1{font-size:48px}.hero-actions{align-items:stretch;flex-direction:column}.hero-actions .button{justify-content:space-between}.hero-eyebrow{max-width:32ch;font-size:10px}.hero-subline{font-size:15px}.credentials{font-size:9px}.credentials span+span{padding-left:12px;margin-left:12px}}
@media(max-width:650px){.hero-copy{padding-block:8px 0}.hero h1{font-size:clamp(39px,10.7vw,56px);line-height:1.12}.hero-eyebrow{max-width:none;font-size:9px;letter-spacing:.08em;margin-bottom:20px}.hero-subline{font-size:15px;margin-top:24px;line-height:1.75}.hero-affiliation{font-size:12px;line-height:1.7}.hero-actions{width:100%;gap:12px;margin-top:24px}.hero-actions .button{font-size:13px;padding-inline:20px}.credentials{margin-top:24px;flex-wrap:wrap;row-gap:12px}}

/* Biography: personal story paired with a concise academic journey. */
#biography{background:linear-gradient(90deg,var(--color-cream) 0%,var(--color-cream) 30%,var(--color-white) 30%,var(--color-white) 100%);border-top:0}
.biography-grid{align-items:center;grid-template-columns:.82fr 1.18fr;gap:80px;padding-block:0}
.biography-portrait{padding:0 24px 0 0;isolation:isolate}
.biography-portrait::before{inset:24px 0 60px 24px;border:1px solid var(--color-hairline);background:var(--color-white);z-index:-1}
.biography-portrait img{max-height:none;aspect-ratio:4/5;object-fit:cover;object-position:center 38%;box-shadow:var(--shadow-portrait)}
.biography-portrait figcaption{margin:-32px 20px 0 24px;padding:22px 24px;background:var(--color-white);border:1px solid var(--color-hairline);box-shadow:var(--shadow-paper);font:11px/1.6 var(--font-body);position:relative}
.bio-caption-title{display:block;font:30px/1.1 var(--font-display);margin-bottom:6px;color:var(--color-olive)}
.biography-story>.eyebrow{display:flex;align-items:center;gap:14px;font-size:11px}
.biography-story>.eyebrow::before{content:"";width:24px;height:1px;background:var(--color-olive)}
.biography-grid h2{font-size:54px;margin-block:16px 24px;line-height:1.04}
.biography-grid h2 em{font-weight:400;color:var(--color-olive)}
.biography-intro{font:23px/1.4 var(--font-display);max-width:46ch;margin-bottom:18px}
.biography-copy{font-size:14px;line-height:1.85;max-width:64ch}
.education-path{margin-top:28px;padding-top:22px;border-top:1px solid var(--color-hairline)}
.education-path>h3{font:10px/1.5 var(--font-mono);text-transform:uppercase;letter-spacing:.09em;color:var(--color-olive);margin-bottom:18px}
.education-path ol{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;list-style:none;margin:0;padding:0}
.education-path li{position:relative;padding-top:14px;border-top:1px solid var(--color-hairline)}
.education-path li::before{content:"";position:absolute;top:-4px;left:0;width:7px;height:7px;border-radius:50%;background:var(--color-olive);box-shadow:0 0 0 4px var(--color-white)}
.education-year{font:10px/1.5 var(--font-mono);color:var(--color-olive)}
.education-path h4{font:25px/1.15 var(--font-display);margin-block:8px}
.education-path p{font-size:12px;line-height:1.6}
.education-detail{display:block;font-size:10px;line-height:1.6;margin-top:8px}
.biography-links{display:flex;align-items:center;gap:28px;flex-wrap:wrap;margin-top:24px}
.biography-links .text-link{margin:0;font-size:12px;gap:14px}
.biography-links .bio-linkedin{font-size:11px}
@media(max-width:1150px){.biography-grid{gap:48px}.biography-grid h2{font-size:48px}.education-path ol{gap:16px}.education-path h4{font-size:23px}}
@media(min-width:651px) and (max-width:950px){
 .biography-grid{grid-template-columns:.75fr 1.25fr;gap:32px;align-items:start}
 .biography-portrait{padding-right:12px;margin-top:48px}.biography-portrait::before{inset:16px 0 50px 16px}
 .biography-portrait img{aspect-ratio:3/4}
 .biography-portrait figcaption{margin:-20px 8px 0 12px;padding:18px 16px}
 .bio-caption-title{font-size:25px}.biography-grid h2{font-size:44px}
 .biography-intro{font-size:22px}.education-path ol{grid-template-columns:1fr;gap:0}
 .education-path li{padding:12px 0 12px 20px;border-top:0;border-left:1px solid var(--color-hairline)}
 .education-path li::before{top:18px;left:-4px}.education-path h4{display:inline;margin-left:12px;font-size:23px}
 .education-path p{margin-top:6px}.education-detail{margin-top:3px}
}
@media(max-width:650px){
 #biography{background:linear-gradient(180deg,var(--color-cream),var(--color-white) 45%)}
 .biography-grid{grid-template-columns:1fr;gap:36px}
 .biography-portrait{padding-right:16px}.biography-portrait img{aspect-ratio:1/1;object-position:center 30%}
 .biography-portrait figcaption{margin:-28px 16px 0 16px;padding:20px}.bio-caption-title{font-size:28px}
 .biography-grid h2{font-size:42px;margin-bottom:22px}.biography-intro{font-size:23px}.biography-copy{font-size:15px}
 .education-path{margin-top:24px}.education-path ol{grid-template-columns:1fr;gap:0}
 .education-path li{padding:14px 0 14px 24px;border-top:0;border-left:1px solid var(--color-hairline)}
 .education-path li::before{top:20px;left:-4px}.education-path h4{display:inline;margin-left:14px;font-size:27px}
 .education-path p{margin-top:6px;font-size:13px}.education-detail{font-size:11px;margin-top:3px;max-width:34ch}
 .biography-links{gap:12px 24px;margin-top:20px}.biography-links .text-link{font-size:12px}
}
@media print{#biography{background:var(--color-white)}.biography-portrait figcaption{margin-top:12px;box-shadow:none}}

/* Interactive publication feature. The source cover remains unchanged. */
.book-section{background:var(--color-white);border-top:0}
.book-grid{grid-template-columns:1fr 1fr;gap:72px;align-items:center}
.book-showcase{min-width:0;text-align:center;position:relative;padding:28px 16px 22px;background:linear-gradient(145deg,color-mix(in srgb,var(--color-olive) 11%,var(--color-white)),var(--color-white) 70%);border:1px solid var(--color-hairline);border-radius:3px;box-shadow:var(--shadow-paper);isolation:isolate}
.book-showcase::before{content:"";position:absolute;inset:16px 16px 106px;border:1px solid color-mix(in srgb,var(--color-olive) 16%,transparent);pointer-events:none;z-index:-1}
.book-showcase>.eyebrow{font:500 11px/1.5 var(--font-body);letter-spacing:.08em;margin-inline:auto;background:var(--color-white);display:table;padding:6px 12px;border:1px solid var(--color-hairline);border-radius:2px}
.book-stage{position:relative;perspective:1300px;min-height:480px;display:grid;place-items:center;padding:32px 40px 44px;isolation:isolate}
.book-stage::before{content:"";position:absolute;inset:8% 0 6%;border-radius:50%;background:radial-gradient(ellipse,color-mix(in srgb,var(--color-olive) 11%,transparent),transparent 68%);z-index:-1}
.book-stage::after{content:"";position:absolute;width:62%;height:24px;left:20%;bottom:24px;border-radius:50%;background:var(--color-ink);opacity:.15;filter:blur(13px);z-index:-1}
.book-model{--book-yaw:-20deg;--book-pitch:3deg;position:relative;display:block;width:clamp(230px,22vw,300px);aspect-ratio:2/3;padding:0;margin:0;border:0;border-radius:0;background:transparent;transform-style:preserve-3d;transform:rotateX(var(--book-pitch)) rotateY(var(--book-yaw));transition:transform 450ms var(--ease-standard);cursor:zoom-in;outline-offset:12px}
.book-model:disabled{cursor:default}
.book-front{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:fill;transform:translateZ(18px);border-radius:1px 3px 3px 1px;box-shadow:inset 2px 0 4px color-mix(in srgb,var(--color-ink) 30%,transparent);backface-visibility:hidden}
.book-back{position:absolute;inset:0;background:var(--color-ink);transform:translateZ(-18px);box-shadow:16px 22px 30px color-mix(in srgb,var(--color-ink) 17%,transparent);border-radius:2px}
.book-pages{position:absolute;top:3px;bottom:3px;right:-16px;width:34px;transform:rotateY(90deg);background:repeating-linear-gradient(90deg,var(--color-white) 0px,var(--color-white) 2px,var(--color-hairline) 2px,var(--color-hairline) 3px);border-block:1px solid var(--color-hairline)}
.book-spine{position:absolute;top:0;bottom:0;left:-18px;width:36px;transform:rotateY(90deg);background:linear-gradient(90deg,var(--color-ink),var(--color-olive));border-radius:2px}
.book-stage.is-front .book-model{transform:rotateX(0deg) rotateY(0deg)}
.book-view-controls{display:flex;align-items:center;justify-content:center;gap:4px;margin-top:8px;flex-wrap:wrap;border-top:1px solid var(--color-hairline);padding-top:16px}
.book-view-controls button{min-height:44px;padding:10px 16px;background:transparent;border:1px solid transparent;border-radius:4px;font-size:11px;color:var(--color-olive);line-height:1.4}
.book-view-controls button[aria-pressed=true]{background:var(--color-white);border-color:var(--color-hairline);box-shadow:var(--shadow-paper)}
.book-view-controls button:hover{background:var(--color-white)}
#book-enlarge{margin-left:8px;display:flex;align-items:center;gap:10px}
.book-interaction-note{font-size:10px;line-height:1.7;max-width:43ch;margin:12px auto 0;color:var(--color-olive)}
.book-copy{width:100%;max-width:520px;margin-left:auto;min-width:0}
.book-copy .book-publisher{font:500 11px/1.5 var(--font-body);letter-spacing:.045em;max-width:none;width:100%;margin:0;padding-bottom:18px;border-bottom:1px solid var(--color-hairline);text-transform:none;color:var(--color-olive)}
.book-copy h2{font:500 clamp(48px,4.5vw,64px)/1.02 var(--font-display);letter-spacing:-.025em;margin-block:24px 16px;width:100%;max-width:none;text-wrap:initial}
.book-copy .book-subtitle{font:400 16px/1.65 var(--font-body);color:var(--color-olive);width:100%;max-width:none;margin:0;text-wrap:pretty}
.book-copy .book-introduction{font:400 15px/1.8 var(--font-body);width:100%;max-width:none;margin-top:24px;text-wrap:pretty}
.book-introduction strong{display:block;font-weight:500;margin-bottom:6px;color:var(--color-ink)}
.book-purchase{display:flex;flex-direction:column-reverse;align-items:stretch;gap:16px;margin-top:24px;width:100%;padding-top:20px;border-top:1px solid var(--color-hairline)}
.book-purchase .button{font:500 13px/1.5 var(--font-body);gap:24px;padding-inline:20px;width:100%;justify-content:space-between;min-height:48px}
.book-edition{font:400 12px/1.5 var(--font-body);white-space:normal;color:var(--color-olive)}
.book-story{margin-top:16px;border-block:1px solid var(--color-hairline);width:100%}
.book-story>summary{font-family:var(--font-body);list-style:none;display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:56px;padding-block:16px;font-size:12px;font-weight:500}
.book-story>summary::-webkit-details-marker{display:none}
.book-story>summary>span:last-child{font-size:20px;line-height:1;color:var(--color-olive)}
.book-story[open]>summary>span:last-child{transform:rotate(45deg)}
.book-story-content{padding-block:4px 24px}
.book-story .book-synopsis{font-size:14px;line-height:1.8}
.book-story .book-specs{margin-block:24px 0;padding-block:16px 0}
.book-story .book-specs dt,.book-story .book-specs dd{font-family:var(--font-body);font-size:11px}.book-section .praise-heading h3,.book-section .praise-controls p{font-family:var(--font-body)}
.book-section .praise{margin-top:56px;padding:24px 0 0;background:transparent;border:0;border-top:1px solid var(--color-hairline);box-shadow:none}
.book-section .praise-slide{max-width:1000px;padding-block:24px 16px}
.book-section .praise-slide blockquote{font:400 21px/1.6 var(--font-body)}
#book-cover-dialog{width:min(650px,calc(100% - 32px));max-width:none;max-height:calc(100dvh - 32px);padding:24px;background:var(--color-white);border:1px solid var(--color-hairline);border-radius:5px;box-shadow:var(--shadow-portrait);overflow:auto}
#book-cover-dialog::backdrop{background:color-mix(in srgb,var(--color-ink) 55%,transparent);opacity:1;backdrop-filter:blur(5px)}
.cover-dialog-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:20px}
#book-cover-dialog h2{font:28px/1.2 var(--font-display);margin:0}
#book-cover-close{display:flex;align-items:center;gap:16px;padding:10px 12px;min-height:44px;background:var(--color-cream);border:1px solid var(--color-hairline);border-radius:3px;font-size:12px}
#book-cover-dialog>img{width:auto;max-width:100%;height:auto;max-height:calc(100dvh - 200px);margin-inline:auto;box-shadow:var(--shadow-paper);object-fit:contain}
#book-cover-dialog>p{text-align:center;font-size:10px;line-height:1.6;margin:20px auto 0}
@media(max-width:1150px){.book-grid{gap:48px}.book-stage{padding-inline:24px;min-height:430px}.book-model{width:250px}.book-copy h2{font-size:54px}}
@media(max-width:950px){.book-grid{grid-template-columns:.9fr 1.1fr;gap:32px;align-items:start}.book-showcase{padding:24px 12px 18px}.book-showcase::before{inset:14px 14px 116px}.book-stage{min-height:350px;padding:28px 12px 36px}.book-model{width:196px}.book-copy h2{font-size:48px;margin-top:20px}.book-copy .book-publisher{font-size:10px}.book-copy .book-subtitle{font-size:15px}.book-copy .book-introduction{font-size:14px}.book-view-controls{gap:0}.book-view-controls button{padding-inline:9px}#book-enlarge{margin-left:0}.book-story>summary{font-size:11px}.book-copy{max-width:none}}
@media(max-width:650px){.book-grid{grid-template-columns:1fr;gap:32px}.book-showcase{padding:24px 16px 20px}.book-stage{min-height:370px;padding:24px 20px 36px}.book-model{width:220px}.book-showcase>.eyebrow{font-size:10px}.book-view-controls button{padding-inline:12px}.book-interaction-note{max-width:34ch}.book-copy h2{font-size:50px;margin-block:20px 16px}.book-copy .book-subtitle{font-size:15px}.book-copy .book-introduction{font-size:15px;line-height:1.75;margin-top:22px}.book-purchase{margin-top:22px}.book-story>summary{font-size:12px}.book-section .praise{padding-top:24px;margin-top:40px}.book-section .praise-slide blockquote{font-size:18px;line-height:1.65}#book-cover-dialog{padding:16px}.cover-dialog-heading{margin-bottom:16px}#book-cover-dialog h2{font-size:24px}.book-section .praise-heading{display:grid;grid-template-columns:1fr;gap:16px;align-items:start}.book-section .praise-heading h3{max-width:none;font-size:11px}.book-section .praise-controls{width:100%;justify-content:space-between}.book-section .praise-controls p{font-size:11px}}
@media(max-width:360px){.book-model{width:190px}.book-stage{min-height:325px;padding-inline:20px}.book-view-controls button{padding-inline:9px;font-size:10px}.book-copy h2{font-size:46px}}
@media(prefers-reduced-motion:reduce){.book-model{transition:none}}
@media print{.book-view-controls,.book-interaction-note,#book-cover-dialog{display:none!important}.book-stage{min-height:0;padding:16px}.book-model{transform:none!important;width:180px}.book-back,.book-spine,.book-pages{display:none}.book-front{position:static;transform:none}.book-section,.book-showcase{background:var(--color-white)}.book-showcase{box-shadow:none}.book-showcase::before{display:none}}

/* Consulting introduction: shared editorial grid and branded paper inset. */
.consulting-introduction{margin-bottom:48px}
.consulting-kicker{display:flex;align-items:center;gap:16px;font:500 11px/1.5 var(--font-body);letter-spacing:.1em;color:var(--color-olive);margin-bottom:32px}
.consulting-kicker::before{content:"";width:32px;height:1px;background:var(--color-olive)}
.consulting-introduction .consulting-heading{grid-template-columns:minmax(0,1.45fr) minmax(0,.85fr);gap:80px;align-items:center;margin:0}
.consulting-intro-copy{min-width:0}
.consulting-introduction h2{font:500 clamp(48px,4.8vw,66px)/1.04 var(--font-display);letter-spacing:-.025em;margin:0 0 24px;max-width:none;text-wrap:initial}
.consulting-introduction h2 span{color:var(--color-olive)}
.consulting-lead{font:400 17px/1.75 var(--font-body);max-width:42ch}
.consulting-assurance{margin-top:28px;padding-top:20px;border-top:1px solid var(--color-hairline);max-width:520px}
.consulting-assurance p{font:400 13px/1.7 var(--font-body);max-width:none}
.consulting-remote{display:flex;align-items:center;gap:8px;margin-top:10px;font:500 11px/1.6 var(--font-body);color:var(--color-olive)}
.consulting-remote>span{width:5px;height:5px;border-radius:50%;background:var(--color-olive)}
.consulting-brand-panel{position:relative;isolation:isolate;background:linear-gradient(145deg,var(--color-cream),var(--color-white));border:1px solid var(--color-hairline);padding:24px 30px 28px;box-shadow:var(--shadow-paper);width:100%;max-width:400px;justify-self:end;border-radius:3px}
.consulting-brand-panel::before{content:"";position:absolute;inset:12px -12px -12px 12px;z-index:-1;border:1px solid var(--color-hairline);background:var(--color-cream)}
.consulting-brand-signature{display:flex;align-items:center;gap:18px;padding-bottom:20px;border-bottom:1px solid var(--color-hairline)}
.consulting-brand-signature img{flex:none;width:66px;height:78px;object-fit:cover;object-position:53% 50%;mix-blend-mode:multiply}
.consulting-brand-signature strong{display:block;font:500 16px/1.5 var(--font-body);letter-spacing:.09em;text-transform:uppercase}
.consulting-brand-signature div>span{display:block;font:400 10px/1.6 var(--font-body);margin-top:4px;color:var(--color-olive)}
.consulting-motto-steps{list-style:none;margin:20px 0 0;padding:0}
.consulting-motto-steps li{display:flex;align-items:center;gap:22px;padding:10px 0;font:400 23px/1.25 var(--font-body);letter-spacing:-.025em}
.consulting-motto-steps li>span{font:500 10px/1.5 var(--font-body);letter-spacing:0;color:var(--color-olive)}
@media(max-width:1100px){.consulting-introduction .consulting-heading{gap:48px;grid-template-columns:1.3fr .9fr}.consulting-introduction h2{font-size:54px}.consulting-brand-panel{padding-inline:24px}}
@media(max-width:950px){.consulting-introduction .consulting-heading{gap:32px;grid-template-columns:1.25fr 1fr}.consulting-introduction h2{font-size:46px}.consulting-lead{font-size:15px}.consulting-brand-signature{gap:12px}.consulting-brand-signature img{width:52px;height:62px}.consulting-brand-signature strong{font-size:14px}.consulting-brand-signature div>span{font-size:9px}.consulting-brand-panel{padding:20px}.consulting-motto-steps li{font-size:21px}}
@media(max-width:700px){.consulting-introduction{margin-bottom:32px}.consulting-kicker{font-size:10px;gap:12px;margin-bottom:24px}.consulting-introduction .consulting-heading{grid-template-columns:1fr;gap:32px}.consulting-introduction h2{font-size:clamp(40px,10.8vw,58px);margin-bottom:20px}.consulting-lead{font-size:16px}.consulting-assurance{margin-top:24px;padding-top:16px}.consulting-brand-panel{justify-self:start;max-width:none;padding:20px 24px}.consulting-brand-panel::before{inset:8px -8px -8px 8px}.consulting-brand-signature{padding-bottom:16px;gap:16px}.consulting-brand-signature img{width:58px;height:68px}.consulting-brand-signature strong{font-size:15px}.consulting-brand-signature div>span{font-size:10px}.consulting-motto-steps{display:flex;justify-content:space-between;gap:12px;margin-top:16px}.consulting-motto-steps li{display:flex;flex-direction:column;align-items:flex-start;gap:8px;font-size:19px;padding:0}}
@media(max-width:360px){.consulting-introduction h2{font-size:clamp(33px,10.5vw,38px)}.consulting-kicker{letter-spacing:.06em}.consulting-brand-panel{padding-inline:18px}.consulting-motto-steps li{font-size:17px}.consulting-brand-signature div>span{font-size:9px}}
@media print{.consulting-brand-panel{box-shadow:none}.consulting-brand-panel::before{display:none}}

/* Conceptual editorial imagery supports section openings, never body text. */
.consulting-brand-panel{padding:0;overflow:visible;max-width:420px;background:var(--color-white)}
.consulting-workspace-image{width:100%;aspect-ratio:3/2;object-fit:cover;border-radius:2px 2px 0 0}
.consulting-brand-signature{margin:0 24px;padding:16px 0;gap:16px}
.consulting-brand-signature img{width:48px;height:58px}
.consulting-motto-steps{display:flex;justify-content:space-between;gap:12px;margin:0;padding:18px 24px 20px}
.consulting-motto-steps li{flex-direction:column;align-items:flex-start;gap:6px;font-size:17px;padding:0}
.editorial-scene{position:relative;min-width:0;padding:0 12px 12px 0;isolation:isolate}
.editorial-scene::before{content:"";position:absolute;inset:16px 0 0 16px;background:var(--color-cream);border:1px solid var(--color-hairline);z-index:-1}
.editorial-scene img{width:100%;aspect-ratio:3/2;object-fit:cover;box-shadow:var(--shadow-paper);border-radius:2px}
.editorial-scene figcaption{position:relative;display:table;background:var(--color-white);border:1px solid var(--color-hairline);padding:12px 16px;margin:-18px 16px 0;font:400 11px/1.6 var(--font-body);color:var(--color-olive)}
.speaking-introduction{display:grid;grid-template-columns:1.15fr .85fr;gap:72px;align-items:center;margin-bottom:48px}
.speaking-introduction .section-heading{margin:0;max-width:none}
.speaking-introduction h2{font-size:clamp(48px,4.8vw,64px);line-height:1.06;margin-bottom:0}
.cv-section .cv-heading{display:grid;grid-template-columns:1.2fr .8fr;align-items:center;gap:72px;margin-bottom:40px}
.cv-heading-copy{min-width:0}
.cv-heading-copy h2{margin-block:16px 24px}
.cv-heading-copy .cv-downloads{justify-content:flex-start;flex-wrap:wrap;gap:12px 20px}
.cv-introduction{margin-top:24px;font:400 14px/1.8 var(--font-body);max-width:48ch}
@media(max-width:950px){.speaking-introduction,.cv-section .cv-heading{gap:32px;grid-template-columns:1.1fr .9fr}.speaking-introduction h2{font-size:46px}.cv-heading-copy h2{font-size:46px}.cv-heading-copy .cv-downloads .button{font-size:12px}.cv-introduction{font-size:13px}.consulting-brand-signature{margin-inline:20px}.consulting-motto-steps{padding-inline:20px}.consulting-motto-steps li{font-size:15px}.consulting-brand-signature strong{font-size:14px}}
@media(max-width:700px){.speaking-introduction,.cv-section .cv-heading{grid-template-columns:1fr;gap:28px;margin-bottom:32px}.speaking-introduction h2,.cv-heading-copy h2{font-size:46px}.consulting-brand-panel{max-width:none}.consulting-brand-signature{margin-inline:24px}.consulting-motto-steps{padding-inline:24px}.consulting-brand-signature strong{font-size:15px}.consulting-brand-signature img{width:48px;height:58px}.consulting-motto-steps li{font-size:17px}.editorial-scene{padding:0 8px 8px 0}.editorial-scene::before{inset:12px 0 0 12px}.editorial-scene figcaption{margin-inline:12px;font-size:10px}.cv-introduction{font-size:14px}.cv-heading-copy .cv-downloads .button{font-size:13px}}
@media(max-width:360px){.consulting-brand-signature{margin-inline:18px;gap:12px}.consulting-motto-steps{padding-inline:18px}.consulting-motto-steps li{font-size:16px}.consulting-brand-signature strong{font-size:13px}.consulting-brand-signature div>span{font-size:9px}.speaking-introduction h2,.cv-heading-copy h2{font-size:40px}}
@media print{.consulting-workspace-image,.speaking-scene,.cv-study-scene{display:none}.speaking-introduction,.cv-section .cv-heading{display:block}}

/* Panoramic section openings, with real text above responsive image crops. */
.section.full-bleed-section{padding-block:0}
.full-bleed-section .section-body{padding-block:72px 96px}
.section-image-hero{position:relative;isolation:isolate;min-height:620px;display:flex;align-items:center;padding-block:80px;background:var(--color-olive);color:var(--color-white);overflow:hidden}
.section-hero-art{position:absolute;inset:0;z-index:-2}
.section-hero-art img{width:100%;height:100%;object-fit:cover;object-position:center;max-width:none}
.section-image-hero::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,color-mix(in srgb,var(--color-ink) 78%,transparent) 0%,color-mix(in srgb,var(--color-ink) 64%,transparent) 34%,color-mix(in srgb,var(--color-ink) 18%,transparent) 68%,transparent 100%)}
.section-hero-copy{max-width:650px;width:55%}
.section-hero-copy>.eyebrow{font:500 11px/1.7 var(--font-body);letter-spacing:.1em;color:var(--color-white);margin-bottom:24px}
.section-hero-copy h2{font:500 clamp(56px,5.3vw,78px)/1.03 var(--font-display);letter-spacing:-.025em;color:var(--color-white);margin:0;max-width:none;text-wrap:initial}
.section-hero-lead{font:400 17px/1.8 var(--font-body);max-width:43ch;margin-top:24px;color:var(--color-white)}
.section-image-hero .button.primary{margin-top:28px;background:var(--color-white);color:var(--color-olive);border-color:var(--color-white);font:500 13px/1.5 var(--font-body);min-height:48px;padding-inline:20px;gap:32px;box-shadow:none}
.section-image-hero .button.primary::before{background:var(--color-white)}
.section-image-hero .button:hover::before{filter:none;background:var(--color-cream)}
.section-image-hero :focus-visible{outline-color:var(--color-white);outline-offset:5px}
.section-hero-note{margin-top:28px;padding-top:20px;border-top:1px solid color-mix(in srgb,var(--color-white) 35%,transparent);max-width:490px}
.section-hero-note p{font:400 12px/1.7 var(--font-body);color:var(--color-white)}
.section-hero-note>span{display:block;font:400 11px/1.6 var(--font-body);margin-top:8px}
.section-hero-motto{font:500 11px/1.5 var(--font-body);letter-spacing:.07em;text-transform:uppercase;margin-top:24px}
.speaking-image-hero{min-height:580px}
@media(min-width:1800px){.section-image-hero{min-height:680px}}
@media(max-width:1100px){.section-hero-copy{width:62%;max-width:600px}.section-hero-copy h2{font-size:60px}.section-hero-lead{font-size:16px}.section-image-hero::after{background:linear-gradient(90deg,color-mix(in srgb,var(--color-ink) 82%,transparent),color-mix(in srgb,var(--color-ink) 70%,transparent) 45%,color-mix(in srgb,var(--color-ink) 15%,transparent))}}
@media(max-width:950px){.section-hero-copy{width:70%;max-width:550px}.section-hero-copy h2{font-size:56px}.section-image-hero{padding-block:64px;min-height:600px}.speaking-image-hero{min-height:540px}.full-bleed-section .section-body{padding-block:48px 64px}}
@media(max-width:700px){.section-image-hero{align-items:flex-end;min-height:740px;padding-block:240px 48px}.section-hero-art img{object-position:center top}.section-image-hero::after{background:linear-gradient(180deg,transparent 0%,color-mix(in srgb,var(--color-ink) 14%,transparent) 17%,color-mix(in srgb,var(--color-ink) 84%,transparent) 40%,color-mix(in srgb,var(--color-ink) 94%,transparent) 70%,var(--color-ink) 100%)}
.section-hero-copy{width:100%;max-width:none}.section-hero-copy>.eyebrow{font-size:10px;letter-spacing:.08em;margin-bottom:20px;max-width:36ch}.section-hero-copy h2{font-size:clamp(38px,10.3vw,56px);line-height:1.07}.section-hero-lead{font-size:15px;line-height:1.75;margin-top:20px;max-width:40ch}.section-image-hero .button.primary{margin-top:24px;font-size:12px;gap:24px}.section-hero-note{margin-top:24px;padding-top:16px}.section-hero-note p{font-size:11px}.section-hero-motto{margin-top:20px;font-size:10px}.speaking-image-hero{min-height:660px;padding-block:260px 48px}.speaking-image-hero h2{font-size:clamp(40px,10.5vw,56px)}.full-bleed-section .section-body{padding-block:40px 56px}}
@media(max-width:360px){.section-hero-copy h2{font-size:34px}.speaking-image-hero h2{font-size:36px}.section-hero-copy>.eyebrow{font-size:9px}.section-image-hero{padding-top:220px}.speaking-image-hero{padding-top:240px}.section-image-hero .button.primary{padding-inline:16px;font-size:11px}}
@media print{.section-image-hero{background:var(--color-white);color:var(--color-ink);min-height:0;padding-block:32px}.section-image-hero::after,.section-hero-art{display:none}.section-hero-copy{width:100%;max-width:none}.section-hero-copy h2,.section-hero-copy>.eyebrow,.section-hero-lead,.section-hero-note p{color:var(--color-ink)}.section-image-hero .button{display:none}.section-hero-note{border-color:var(--color-hairline)}}
/* Keep the learning groups visible without placing copy across their faces. */
.speaking-image-hero .section-hero-art img{object-position:70% center}
@media(min-width:701px) and (max-width:1100px){
 .section-hero-art img{object-position:58% center}
 .speaking-image-hero .section-hero-art img{object-position:75% center}
}
@media(max-width:700px){
 .section-image-hero{background:var(--color-ink);padding-top:280px}
 .section-hero-art{bottom:auto;height:clamp(260px,66.67vw,467px)}
 .section-hero-art img,.speaking-image-hero .section-hero-art img{object-position:center top}
 .section-image-hero::after{background:linear-gradient(180deg,transparent 0,transparent 150px,color-mix(in srgb,var(--color-ink) 18%,transparent) 205px,var(--color-ink) 310px)}
 .speaking-image-hero{padding-top:290px}
}
@media(min-width:480px) and (max-width:700px){
 .section-image-hero,.speaking-image-hero{padding-top:390px}
 .section-image-hero::after{background:linear-gradient(180deg,transparent 0,transparent 240px,color-mix(in srgb,var(--color-ink) 18%,transparent) 290px,var(--color-ink) 420px)}
}
@media(min-width:701px) and (max-width:1100px){
 .section-image-hero,.speaking-image-hero{align-items:flex-end;min-height:0;padding-block:clamp(300px,42vw,440px) 56px;background:var(--color-ink)}
 .section-hero-art{bottom:auto;height:clamp(320px,45vw,450px)}
 .section-hero-art img,.speaking-image-hero .section-hero-art img{object-position:center 30%}
 .section-image-hero::after{background:linear-gradient(180deg,transparent 0,transparent 180px,color-mix(in srgb,var(--color-ink) 40%,transparent) 270px,var(--color-ink) clamp(320px,45vw,450px))}
 .section-hero-copy{width:100%;max-width:650px}
}
@media(max-width:700px){
 .section-image-hero,.speaking-image-hero{min-height:0}
 .section-image-hero::after{background:linear-gradient(180deg,transparent 0,transparent 140px,color-mix(in srgb,var(--color-ink) 25%,transparent) 205px,var(--color-ink) 265px)}
}
@media(min-width:480px) and (max-width:700px){.section-image-hero::after{background:linear-gradient(180deg,transparent 0,transparent 230px,color-mix(in srgb,var(--color-ink) 25%,transparent) 300px,var(--color-ink) 400px)}}

/* Shared rhythm for service disclosures, practical details and media panels. */
.consulting-disclosures{margin-top:32px;border:1px solid var(--color-hairline);border-radius:4px;background:var(--color-white);overflow:hidden}
.consulting-disclosures>.service-details,.consulting-disclosures>.experience-details{margin:0;border:0}
.consulting-disclosures>.experience-details{border-top:1px solid var(--color-hairline)}
.consulting-disclosures>details>summary{display:flex;align-items:center;gap:24px;padding:28px 32px;list-style:none;cursor:pointer;transition:background .2s}
.consulting-disclosures>details>summary::-webkit-details-marker,.faq-questions summary::-webkit-details-marker{display:none}
.consulting-disclosures>details>summary:hover,.faq-questions summary:hover{background:color-mix(in srgb,var(--color-cream) 55%,var(--color-white))}
.disclosure-index{font:400 11px/1.5 var(--font-body);color:var(--color-olive)}
.disclosure-copy{flex:1;min-width:0;display:grid;gap:8px}
.disclosure-title{font:500 27px/1.15 var(--font-display);letter-spacing:-.01em}
.disclosure-caption{font:400 12px/1.65 var(--font-body);color:var(--color-olive)}
.disclosure-icon{position:relative;flex:0 0 32px;width:32px;height:32px;border:1px solid var(--color-hairline);border-radius:50%;color:var(--color-olive)}
.disclosure-icon::before,.disclosure-icon::after{content:"";position:absolute;left:10px;right:10px;top:15px;height:1px;background:currentColor}
.disclosure-icon::after{transform:rotate(90deg);transition:transform .2s}
 details[open]>summary .disclosure-icon::after{transform:rotate(0)}
.consulting-disclosures>details[open]>summary{background:var(--color-cream)}
.consulting-disclosures .service-catalog{padding:8px 32px 24px 69px;margin:0;gap:0 36px;align-items:start}
.consulting-disclosures .service-catalog summary{font:500 15px/1.6 var(--font-body);padding:20px 0;cursor:pointer}
.consulting-disclosures .service-detail-content{padding-bottom:24px}
.consulting-disclosures .consulting-history{padding:28px 32px 16px 69px;columns:auto;display:grid;grid-template-columns:1fr 1fr;gap:36px;font:400 14px/1.85 var(--font-body)}
.consulting-history .consulting-more{margin:0}
.consulting-history details summary{font:500 13px/1.6 var(--font-body);padding:12px 0;cursor:pointer}
.consultation-card{margin-top:48px;grid-template-columns:1.15fr .85fr;align-items:start;gap:56px;padding:48px;background:linear-gradient(120deg,var(--color-white),var(--color-cream));border:1px solid var(--color-hairline);border-top:3px solid var(--color-olive);border-radius:4px;box-shadow:var(--shadow-paper)}
.consultation-card .eyebrow{font:500 10px/1.7 var(--font-body);letter-spacing:.12em;color:var(--color-olive);margin:0 0 24px}
.consultation-card h3{font:500 clamp(34px,3.1vw,44px)/1.08 var(--font-display);letter-spacing:-.02em;margin:0}
.consultation-intro>p:not(.eyebrow){font:400 14px/1.85 var(--font-body);max-width:44ch;margin:20px 0 24px}
.consultation-card .button{font-size:13px}
.consultation-fee{border-left:1px solid var(--color-hairline);padding-left:48px}
.consultation-fee h4{display:flex;align-items:center;gap:24px;font:500 19px/1.35 var(--font-display);margin:0}
.consultation-price{font:500 70px/1 var(--font-display);letter-spacing:-.045em}
.consultation-fee .fee-credit{font:500 13px/1.65 var(--font-body);margin:24px 0 16px;padding-bottom:16px;border-bottom:1px solid var(--color-hairline)}
.consultation-fee .fee-terms{font:400 12px/1.85 var(--font-body);margin:0;max-width:48ch}
.consulting-faq{margin-top:64px;display:grid;grid-template-columns:.65fr 1.35fr;gap:64px;align-items:start}
.faq-intro .eyebrow{font:500 10px/1.7 var(--font-body);letter-spacing:.1em;color:var(--color-olive);margin:0 0 16px}
.faq-intro h3{font:500 36px/1.1 var(--font-display);margin:0 0 16px;letter-spacing:-.02em}
.faq-intro>p:last-child{font:400 13px/1.8 var(--font-body);max-width:25ch}
.faq-questions{border-top:1px solid var(--color-hairline)}
.faq-questions details{margin:0;border-bottom:1px solid var(--color-hairline)}
.faq-questions summary{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:80px;padding:20px 0;list-style:none;font:500 14px/1.65 var(--font-body);cursor:pointer}
.faq-questions summary>span:first-child{max-width:51ch}
.faq-questions .disclosure-icon{border:0}
.faq-questions .service-detail-content{padding:0 56px 24px 0;max-width:66ch}
.faq-questions .service-detail-content p{font:400 14px/1.85 var(--font-body);margin:0}
.media-grid{gap:32px;align-items:stretch}
.media-grid .media-panel{display:flex;flex-direction:column;min-width:0;padding:40px;border:1px solid var(--color-hairline);border-top:3px solid var(--color-olive);border-radius:4px;background:linear-gradient(135deg,var(--color-cream),color-mix(in srgb,var(--color-white) 60%,var(--color-cream)));box-shadow:var(--shadow-paper);color:var(--color-ink)}
.media-grid .media-panel>.eyebrow{font:500 10px/1.7 var(--font-body);letter-spacing:.11em;color:var(--color-olive);margin:0 0 24px}
.media-grid .media-panel>h3{font:500 44px/1.07 var(--font-display);letter-spacing:-.015em;margin:0 0 24px}
.media-grid .media-panel-intro{font:400 14px/1.8 var(--font-body);min-height:52px;margin:0}
.media-grid .media-panel-list{list-style:none;padding:0;margin:28px 0 32px}
.media-grid .media-panel-list li{display:flex;align-items:flex-start;gap:20px;min-height:112px;padding:22px 0;border-top:1px solid var(--color-hairline)}
.media-grid .media-item-number{flex:0 0 18px;font:400 10px/2 var(--font-body);color:var(--color-olive)}
.media-grid .media-panel-list h4{font:500 14px/1.55 var(--font-body);margin:0}
.media-grid .media-panel-list h4 em{font-style:normal}
.media-grid .media-panel-list p{font:400 12px/1.8 var(--font-body);margin:6px 0 0}
.media-grid .media-panel>.button{align-self:flex-start;min-height:48px;margin-top:auto;font-size:12px}
.cv-section .cv-heading{grid-template-columns:minmax(0,1fr) auto;gap:56px;align-items:center;margin-bottom:40px}
.cv-heading-copy h2{margin:16px 0 20px}
.cv-heading-copy .cv-introduction{max-width:62ch;margin:0}
.cv-heading>.cv-downloads{align-items:flex-end;gap:18px;min-width:230px}
@media(max-width:1100px){.consultation-card{padding:36px;gap:32px}.consultation-fee{padding-left:32px}.consultation-fee h4{gap:16px;font-size:17px}.consultation-price{font-size:60px}.consulting-faq{gap:40px}.media-grid{gap:24px}.media-grid .media-panel{padding:32px}.media-grid .media-panel>h3{font-size:38px}.media-grid .media-panel-list li{min-height:125px}.cv-section .cv-heading{gap:32px}}
@media(max-width:800px){.consultation-card{grid-template-columns:1fr 1fr;gap:24px;padding:32px}.consultation-fee{padding-left:24px}.consultation-fee h4{display:block}.consultation-price{display:block;margin-bottom:16px}.consulting-faq{grid-template-columns:1fr;gap:24px}.faq-intro>p:last-child{max-width:none}.media-grid{grid-template-columns:1fr}.media-grid .media-panel-list li{min-height:0}.media-grid .media-panel-intro{min-height:0}.cv-section .cv-heading{grid-template-columns:1fr;gap:24px}.cv-heading>.cv-downloads{align-items:flex-start;width:auto;flex-direction:row;flex-wrap:wrap;align-items:center;gap:16px 24px}.cv-heading>.cv-downloads>.button{width:auto}}
@media(max-width:600px){.consulting-disclosures>details>summary{gap:16px;padding:24px 20px}.disclosure-index{display:none}.disclosure-title{font-size:24px}.disclosure-caption{font-size:11px;max-width:30ch}.consulting-disclosures .service-catalog{grid-template-columns:1fr;padding:8px 20px 20px}.consulting-disclosures .consulting-history{grid-template-columns:1fr;gap:0;padding:24px 20px 12px}.consultation-card{grid-template-columns:1fr;padding:28px 24px;gap:32px;margin-top:32px}.consultation-card h3{font-size:34px}.consultation-fee{border-left:0;border-top:1px solid var(--color-hairline);padding:28px 0 0}.consultation-fee h4{display:flex;font-size:19px;gap:24px}.consultation-price{margin:0;font-size:64px}.consultation-card .eyebrow{margin-bottom:20px}.consulting-faq{margin-top:40px}.faq-intro h3{font-size:34px}.faq-questions summary{font-size:13px;gap:12px;min-height:76px}.faq-questions .service-detail-content{padding-right:28px}.media-grid .media-panel{padding:28px 24px}.media-grid .media-panel>h3{font-size:38px}.media-grid .media-panel>.button{width:100%;font-size:12px}.cv-heading>.cv-downloads{flex-direction:column;align-items:flex-start}.cv-heading>.cv-downloads>.button{width:100%}}
@media(prefers-reduced-motion:reduce){.disclosure-icon::after,.consulting-disclosures>details>summary{transition:none}}

/* A consistent editorial finish from client stories through the footer. */
.testimonials-section{margin-top:64px;padding-top:56px}
.testimonials-section .section-header{align-items:end;margin-bottom:32px}
.testimonials-section .section-kicker{font:500 10px/1.7 var(--font-body);letter-spacing:.12em}
.testimonials-section .section-title{font:500 48px/1.08 var(--font-display);letter-spacing:-.025em;margin-top:16px}
.testimonials-intro{font:400 13px/1.8 var(--font-body);max-width:33ch}
.testimonials-featured{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;align-items:start}
.testimonials-featured>.testimonial-story,.testimonials-featured>.testimonial-story:first-child{grid-column:auto;padding:28px;background:var(--color-white);border:1px solid var(--color-hairline);border-radius:4px;box-shadow:0 8px 24px color-mix(in srgb,var(--color-ink) 4%,transparent)}
.testimonials-featured>.testimonial-story:first-child{background:var(--color-white)}
.testimonials-featured>.testimonial-story>summary{display:flex;flex-direction:column;min-height:355px;cursor:pointer;padding:0}
.testimonials-featured .testimonial-category{font:500 9px/1.7 var(--font-body);letter-spacing:.11em;margin-bottom:24px}
.testimonials-featured .testimonial-excerpt,.testimonials-featured>.testimonial-story:first-child .testimonial-excerpt{font:500 27px/1.22 var(--font-display);letter-spacing:-.01em;min-height:0;max-width:none;margin-bottom:24px;text-wrap:pretty}
.testimonials-featured .testimonial-person,.testimonials-featured>.testimonial-story:first-child .testimonial-person{font:400 11px/1.65 var(--font-body);min-height:76px;margin-top:auto}
.testimonials-featured .testimonial-person strong{font-weight:500;font-size:12px}
.testimonials-featured .testimonial-toggle{width:100%;font-size:11px;margin-top:16px;padding-top:12px;min-height:44px}
.testimonial-toggle>span:last-child{background:transparent}
.testimonials-featured .testimonial-full{padding-top:24px}
.testimonials-featured .testimonial-full blockquote p{font-size:14px;line-height:1.85}
.testimonials-more{margin-top:20px;padding:0;background:var(--color-white);border-radius:4px}
.testimonials-more>summary{padding:24px 28px;gap:24px;cursor:pointer}
.archive-copy{display:grid;gap:8px;min-width:0}
.archive-title{font:500 25px/1.2 var(--font-display);letter-spacing:-.01em}
.archive-caption{font:400 12px/1.7 var(--font-body);color:var(--color-olive)}
.testimonial-count{display:inline-flex;align-items:center;justify-content:center;min-width:27px;height:27px;margin-left:8px;border:1px solid var(--color-hairline);border-radius:50%;font:400 10px/1 var(--font-body);vertical-align:middle}
.archive-hint{font:500 11px/1.6 var(--font-body);gap:20px;flex:none}
.testimonials-more .when-open{display:none}.testimonials-more[open] .when-open{display:inline}.testimonials-more[open] .when-closed{display:none}
.testimonials-more>summary:hover{background:color-mix(in srgb,var(--color-cream) 45%,var(--color-white))}
.testimonials-more[open]>summary{border-bottom:1px solid var(--color-hairline)}
.testimonials-archive{display:grid;grid-template-columns:1fr 1fr;column-gap:40px;align-items:start;padding:12px 28px 28px}
.testimonials-archive .archive-story{border-top:0;border-bottom:1px solid var(--color-hairline)}
.testimonials-archive .archive-story>summary{font:500 12px/1.75 var(--font-body);padding-block:20px;min-height:80px;cursor:pointer}
.testimonials-archive .testimonial-full blockquote p{font:400 14px/1.85 var(--font-body)}
.speaking-image-hero{min-height:560px;padding-block:72px}
.speaking-image-hero .section-hero-copy{width:43%;max-width:530px}
.speaking-image-hero .section-hero-copy h2{font-size:clamp(48px,4.5vw,66px);line-height:1.06;letter-spacing:-.025em}
.speaking-image-hero .section-hero-copy>.eyebrow{font-size:10px;letter-spacing:.14em;margin-bottom:24px}
.speaking-image-hero .section-hero-lead{font-size:15px;line-height:1.85;max-width:39ch}
.speaking-image-hero::after{background:linear-gradient(90deg,color-mix(in srgb,var(--color-ink) 84%,transparent),color-mix(in srgb,var(--color-ink) 64%,transparent) 32%,color-mix(in srgb,var(--color-ink) 15%,transparent) 63%,transparent 100%)}
#speaking>.section-body{padding-block:56px 80px}
.media-grid{gap:24px}
.media-grid .media-panel{padding:36px;border-top-width:1px;background:var(--color-white);box-shadow:0 8px 24px color-mix(in srgb,var(--color-ink) 4%,transparent)}
.media-grid .media-resources{background:linear-gradient(135deg,var(--color-cream),var(--color-white))}
.media-grid .media-panel>.eyebrow{margin-bottom:20px;font-size:9px}
.media-grid .media-panel>h3{font-size:40px;margin-bottom:20px}
.media-grid .media-panel-intro{font-size:13px;line-height:1.8;min-height:48px;max-width:52ch}
.media-grid .media-panel-list{margin:24px 0}
.media-grid .media-panel-list li{min-height:94px;padding:18px 0;gap:16px}
.media-grid .media-panel-list li:last-child{border-bottom:1px solid var(--color-hairline)}
.media-grid .media-panel-list h4{font-size:13px}
.media-grid .media-panel-list p{font-size:12px;margin-top:4px}
.media-grid .media-panel>.button{font-size:11px;min-height:46px;box-shadow:none}
.speaking-feature{margin-top:56px;padding:40px;background:color-mix(in srgb,var(--color-cream) 55%,var(--color-white));border:1px solid var(--color-hairline);border-radius:4px;grid-template-columns:1fr 1.05fr;gap:56px;align-items:center}
.speaking-feature .video-frame{aspect-ratio:4/3;border:0;outline:0;border-radius:3px;box-shadow:var(--shadow-paper)}
.video-frame button{isolation:isolate;cursor:pointer}
.video-frame button::after{content:"";position:absolute;inset:45% 0 0;background:linear-gradient(transparent,color-mix(in srgb,var(--color-ink) 85%,transparent));z-index:0;pointer-events:none}
.video-frame img{opacity:1;object-position:center 29%}
.video-frame .play-disc{left:24px;top:auto;bottom:22px;transform:none;width:48px;height:48px;font-size:15px;z-index:1;box-shadow:0 0 0 6px color-mix(in srgb,var(--color-white) 18%,transparent)}
.video-frame .video-caption{left:90px;right:16px;bottom:35px;background:none;padding:0;text-align:left;z-index:1;color:var(--color-white);font:500 12px/1.7 var(--font-body)}
.interview-copy>.eyebrow{font:500 10px/1.7 var(--font-body);letter-spacing:.11em;margin-bottom:20px}
.interview-copy h3{font:500 42px/1.08 var(--font-display);letter-spacing:-.02em;margin-bottom:20px}
.speaking-feature .interview-copy>p:not(.eyebrow){font:400 14px/1.85 var(--font-body);max-width:44ch}
.interview-copy>.text-link{font-size:12px;margin-top:24px}
.interview-appearances{margin-top:28px;border-top:1px solid var(--color-hairline)}
.interview-appearances summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:16px;list-style:none;font:500 12px/1.6 var(--font-body);cursor:pointer}
.interview-appearances summary::-webkit-details-marker{display:none}
.interview-appearances .disclosure-icon{border:0}
.speaking-feature .interview-appearances p{font:400 12px/1.85 var(--font-body);padding-top:16px}
.cv-section{background:var(--color-white);padding-block:88px}
.cv-section .cv-heading{align-items:start;margin-bottom:36px;gap:48px}
.cv-heading-copy>.eyebrow{font:500 10px/1.7 var(--font-body);letter-spacing:.12em}
.cv-heading-copy h2{font:500 54px/1.08 var(--font-display);letter-spacing:-.025em;margin:16px 0 20px}
.cv-heading-copy .cv-introduction{font-size:13px;max-width:58ch}
.cv-heading>.cv-downloads{padding-top:28px;gap:12px}
.cv-downloads>.button{font-size:12px}
.cv-tools{border:0;border-block:1px solid var(--color-hairline);padding:20px 0;box-shadow:none;border-radius:0;margin-top:0;align-items:end;background:none;gap:20px}
.cv-filters{gap:6px;align-self:end}
.cv-filter{font:500 11px/1.5 var(--font-body);padding:10px 13px;border-radius:4px;min-height:44px;border:1px solid transparent}
.cv-filter:hover{border-color:var(--color-hairline);background:var(--color-cream)}
.cv-filter.is-active{background:var(--color-olive);color:var(--color-white);border-color:var(--color-olive)}
.cv-search{grid-template-columns:minmax(0,1fr) auto;gap:8px 12px;width:290px}
.cv-search label{font:500 10px/1.6 var(--font-body);color:var(--color-olive)}
.cv-search input{font-size:12px;width:100%;height:44px;min-height:44px;border-color:var(--color-hairline);border-radius:4px;padding:10px 12px;background:var(--color-white)}
.cv-search button{font:400 11px/1.5 var(--font-body);min-height:44px;color:var(--color-olive)}
#cv-status{font:400 11px/1.7 var(--font-body);color:var(--color-olive);padding:16px 0}
.cv-entry{grid-template-columns:100px minmax(0,1fr);gap:32px;padding:24px 0;background:none}
.cv-entry:nth-child(2n){background:none}
.cv-entry>div:last-child{border-left:0;padding-left:0}
.cv-entry>div:last-child::before{display:none}
.cv-year{font:500 12px/1.7 var(--font-body);padding-top:0;color:var(--color-olive)}
.cv-entry-type{display:block;font:500 9px/1.7 var(--font-body);text-transform:uppercase;letter-spacing:.09em;color:var(--color-olive);margin-bottom:7px}
.cv-entry h3{font:500 28px/1.16 var(--font-display);letter-spacing:-.01em}
.cv-entry p{font:400 12px/1.8 var(--font-body);margin-top:8px;max-width:80ch}
.contact-section{padding-block:88px;background:linear-gradient(115deg,var(--color-cream),color-mix(in srgb,var(--color-white) 70%,var(--color-cream)))}
.contact-grid{grid-template-columns:.9fr 1.1fr;gap:88px;align-items:start}
.contact-copy{padding-top:16px}
.contact-copy>.eyebrow{font:500 10px/1.7 var(--font-body);letter-spacing:.12em;color:var(--color-olive)}
.contact-copy h2{font:500 58px/1.06 var(--font-display);letter-spacing:-.025em;margin:24px 0}
.contact-copy>p:not(.eyebrow):not(.disclaimer){font:400 14px/1.85 var(--font-body);max-width:42ch}
.contact-copy dl{margin:36px 0 24px}
.contact-copy dt{font:500 10px/1.7 var(--font-body);letter-spacing:.09em;color:var(--color-olive);margin-top:24px}
.contact-copy dd{margin-top:4px}
.contact-copy dd a{font-size:15px;text-decoration-thickness:1px;text-underline-offset:5px}
.contact-copy .disclaimer{margin-top:32px;padding-top:20px;font:400 11px/1.8 var(--font-body);max-width:40ch}
.inquiry-panel{padding:40px;border-top-width:1px;border-radius:5px;box-shadow:var(--shadow-paper)}
.inquiry-panel>.eyebrow{font:500 9px/1.7 var(--font-body);letter-spacing:.11em;color:var(--color-olive);margin:0 0 20px}
.inquiry-panel h3{font:500 38px/1.08 var(--font-display);letter-spacing:-.02em;max-width:18ch}
.inquiry-panel>p:not(.eyebrow){font:400 13px/1.8 var(--font-body);margin-top:16px}
.inquiry-panel form{margin-top:28px}
.inquiry-panel label{font:500 11px/1.6 var(--font-body);margin-bottom:8px}
.inquiry-panel input,.inquiry-panel select,.inquiry-panel textarea{background:var(--color-white);border:1px solid color-mix(in srgb,var(--color-olive) 50%,var(--color-white));border-radius:4px;box-shadow:none;font:400 14px/1.7 var(--font-body);padding:12px;min-height:48px}
.inquiry-panel textarea{min-height:132px;resize:vertical}
.inquiry-panel button[type=submit]{font-size:13px;min-height:48px;justify-content:space-between;padding-inline:20px}
.inquiry-panel .form-note{font:400 11px/1.8 var(--font-body);color:var(--color-olive);max-width:56ch;margin-top:16px}
.inquiry-panel #email-inquiry{font-size:13px;margin-top:16px}
.site-footer{padding-block:48px 24px;background:var(--color-white)}
.footer-top{display:flex;align-items:center;gap:40px;padding-bottom:36px}
.footer-top>.footer-brand{display:flex;align-items:center;gap:20px;text-decoration:none;color:var(--color-ink);margin:0;min-height:68px}
.footer-brand img{width:52px;height:64px;object-fit:cover;object-position:53% 50%;mix-blend-mode:multiply;flex:none}
.footer-brand>span{display:grid;gap:8px}
.footer-brand .footer-name{font:500 30px/1.1 var(--font-display);letter-spacing:-.015em}
.footer-descriptor{font:400 10px/1.7 var(--font-body);color:var(--color-olive)}
.footer-nav{display:flex;gap:20px;flex-wrap:wrap;margin-left:auto}
.footer-nav a{font:500 11px/1.5 var(--font-body);min-height:44px;display:flex;align-items:center;text-decoration:none}
.footer-nav a:hover{text-decoration:underline;text-underline-offset:5px}
.footer-top>.footer-return{font:400 11px/1.5 var(--font-body);gap:12px;text-decoration:none;margin:0;flex:none}
.footer-return span{width:36px;height:36px;border:1px solid var(--color-hairline);border-radius:50%;display:grid;place-items:center;font-size:16px}
.footer-bottom{font:400 10px/1.8 var(--font-body);padding-top:20px;align-items:baseline;gap:24px;color:var(--color-olive)}
@media(max-width:1100px){
 .testimonials-featured>.testimonial-story,.testimonials-featured>.testimonial-story:first-child{padding:24px}
 .testimonials-featured>.testimonial-story>summary{min-height:395px}
 .testimonials-featured .testimonial-excerpt,.testimonials-featured>.testimonial-story:first-child .testimonial-excerpt{font-size:25px}
 .speaking-image-hero{min-height:0;padding-block:clamp(300px,42vw,440px) 56px}
 .speaking-image-hero .section-hero-copy{width:100%;max-width:620px}
 .speaking-image-hero::after{background:linear-gradient(180deg,transparent 0,transparent 180px,color-mix(in srgb,var(--color-ink) 40%,transparent) 270px,var(--color-ink) clamp(320px,45vw,450px))}
 .speaking-image-hero .section-hero-copy h2{font-size:56px}
 .media-grid .media-panel{padding:28px}.media-grid .media-panel>h3{font-size:36px}
 .media-grid .media-panel-list li{min-height:110px}
 .speaking-feature{padding:32px;gap:32px}.interview-copy h3{font-size:36px}
 .cv-tools{align-items:start}.cv-search{width:100%;max-width:360px}
 .contact-grid{gap:48px}.contact-copy h2{font-size:48px}.inquiry-panel{padding:32px}
 .footer-top{gap:28px;flex-wrap:wrap}.footer-nav{gap:16px}.footer-brand .footer-name{font-size:28px}
}
@media(max-width:800px){
 .testimonials-featured{grid-template-columns:1fr;gap:16px}
 .testimonials-featured>.testimonial-story>summary{min-height:0}
 .testimonials-featured .testimonial-person{min-height:0;margin-top:8px}
 .testimonials-section .section-header{display:block}.testimonials-intro{margin-top:20px;max-width:45ch}
 .testimonials-archive{grid-template-columns:1fr}
 .archive-hint>.when-closed,.archive-hint>.when-open{display:none!important}
 .media-grid .media-panel-list li{min-height:0}.media-grid .media-panel-intro{min-height:0}
 .speaking-feature{grid-template-columns:1fr;gap:32px;padding:32px;max-width:100%}
 .speaking-feature .video-frame{aspect-ratio:16/10}.interview-copy h3{font-size:40px}
 .cv-section .cv-heading{gap:24px}.cv-heading>.cv-downloads{padding:0;flex-direction:row}
 .contact-grid{grid-template-columns:1fr;gap:36px}.contact-copy{padding:0}.contact-copy h2{font-size:52px}
 .contact-copy dl{display:grid;grid-template-columns:1fr 1fr;gap:0 24px;margin-top:24px}.contact-copy dt:nth-of-type(2){grid-column:2;grid-row:1}.contact-copy dd:nth-of-type(2){grid-column:2;grid-row:2}
 .contact-copy .disclaimer{max-width:none;margin-top:24px}
 .footer-nav{margin-left:0}.footer-top>.footer-return{margin-left:auto}
}
@media(max-width:600px){
 .testimonials-section{margin-top:48px;padding-top:40px}.testimonials-section .section-title{font-size:40px}
 .testimonials-featured{grid-template-columns:repeat(3,88%);gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;padding:0 0 12px;overscroll-behavior-inline:contain;scrollbar-color:var(--color-hairline) transparent;scrollbar-width:thin}
 .testimonials-featured>.testimonial-story,.testimonials-featured>.testimonial-story:first-child{padding:24px;scroll-snap-align:start;box-shadow:none}
 .testimonials-featured>.testimonial-story>summary{min-height:370px}
 .testimonials-featured .testimonial-excerpt,.testimonials-featured>.testimonial-story:first-child .testimonial-excerpt{font-size:26px}
 .testimonials-featured .testimonial-person{margin-top:auto;min-height:84px}
 .testimonials-more>summary{padding:22px 20px;gap:16px}.archive-title{font-size:23px}.archive-caption{font-size:11px}.testimonial-count{height:24px;min-width:24px;font-size:9px;margin-left:4px}.testimonials-archive{padding:8px 20px 20px}
 .speaking-image-hero{padding-block:280px 40px}.speaking-image-hero .section-hero-copy h2{font-size:42px}.speaking-image-hero .section-hero-lead{font-size:14px}.speaking-image-hero::after{background:linear-gradient(180deg,transparent 0,transparent 140px,color-mix(in srgb,var(--color-ink) 25%,transparent) 205px,var(--color-ink) 265px)}
 #speaking>.section-body{padding-block:32px 56px}.media-grid{gap:20px}.media-grid .media-panel{padding:28px 24px}.media-grid .media-panel>h3{font-size:36px}.media-grid .media-panel-list li{padding:18px 0}
 .speaking-feature{margin-top:32px;padding:0;background:transparent;border:0;gap:28px}.speaking-feature .video-frame{aspect-ratio:4/3}.interview-copy h3{font-size:38px}.interview-copy>.eyebrow{font-size:9px}.video-frame .video-caption{font-size:11px;left:84px}.video-frame .play-disc{left:20px}
 .cv-section,.contact-section{padding-block:56px}.cv-heading-copy h2{font-size:44px}.cv-heading-copy .cv-introduction{font-size:13px}.cv-heading>.cv-downloads{flex-direction:column;align-items:flex-start}.cv-heading>.cv-downloads>.button{width:100%}
 .cv-tools{gap:24px;padding-block:20px}.cv-filters{gap:4px}.cv-filter{font-size:10px;padding-inline:11px}.cv-search{max-width:none}.cv-search input{font-size:12px}
 .cv-entry{grid-template-columns:1fr;gap:8px;padding-block:24px}.cv-year{font-size:11px}.cv-entry>div:last-child{padding:0}.cv-entry-type{font-size:9px}.cv-entry h3{font-size:27px}.cv-entry p{font-size:12px}
 .contact-copy h2{font-size:46px}.contact-copy dl{display:block;margin-top:28px}.contact-copy dt{margin-top:20px}.contact-copy dd a{font-size:15px}
 .inquiry-panel{padding:28px 24px}.inquiry-panel h3{font-size:34px}.inquiry-panel .form-row{grid-template-columns:1fr;gap:20px}.inquiry-panel input,.inquiry-panel select,.inquiry-panel textarea{font-size:16px}.inquiry-panel>.eyebrow{margin-bottom:16px}
 .site-footer{padding-block:32px 24px}.footer-top{display:grid;grid-template-columns:1fr;gap:24px;padding-bottom:28px}.footer-top>.footer-brand{gap:16px}.footer-brand .footer-name{font-size:27px}.footer-brand img{width:42px;height:58px}.footer-descriptor{font-size:9px}.footer-nav{gap:24px}.footer-top>.footer-return{margin:0;justify-content:space-between;border-top:1px solid var(--color-hairline);padding-top:16px}.footer-bottom{flex-direction:column;align-items:start;gap:12px;font-size:9px}
}
@media(min-width:601px) and (max-width:700px){.speaking-image-hero{padding-top:390px}.speaking-image-hero::after{background:linear-gradient(180deg,transparent 0,transparent 230px,color-mix(in srgb,var(--color-ink) 25%,transparent) 300px,var(--color-ink) 400px)}}
@media(max-width:360px){.testimonials-featured{grid-template-columns:repeat(3,94%)}.testimonials-featured>.testimonial-story>summary{min-height:400px}.archive-title{font-size:21px}.speaking-image-hero .section-hero-copy h2{font-size:38px}.inquiry-panel{padding:24px 20px}.footer-brand .footer-name{font-size:24px}}
@media print{.testimonials-featured{display:block;overflow:visible}.testimonials-featured>.testimonial-story>summary{min-height:0}.testimonials-featured>.testimonial-story{break-inside:avoid}.speaking-image-hero{padding-block:24px}.speaking-image-hero .section-hero-copy{width:100%}.speaking-feature{display:block}.cv-section{padding-block:32px}}

.testimonial-scroll-hint{display:none}
@media(max-width:600px){.testimonial-scroll-hint{display:flex;justify-content:space-between;gap:16px;font:400 11px/1.7 var(--font-body);color:var(--color-olive);margin-bottom:12px}}

/* October 8 review: balanced identity, portraits and shared content alignment. */
.site-header .wordmark{gap:16px;min-height:68px}
.site-header .brand-quill{width:58px;height:68px;object-fit:cover;object-position:53% 50%}
.site-header .wordmark .brand-title{font:500 17px/1.2 var(--font-body);letter-spacing:.17em}
.site-header .wordmark .brand-descriptor{font:400 9px/1.55 var(--font-body);letter-spacing:.015em;margin-top:6px}
.site-header .brand-type{padding-bottom:2px}
.hero{padding-top:48px;background:var(--color-white)}
.hero-grid{grid-template-columns:1.12fr .88fr;gap:72px;align-items:center}
.hero-copy{padding:20px 0;align-self:center}
.hero-eyebrow{font:500 9px/1.8 var(--font-body);letter-spacing:.12em;margin-bottom:24px;max-width:none;gap:12px}
.hero-eyebrow::before{width:24px}
.hero h1{font:500 clamp(46px,4.6vw,66px)/1.08 var(--font-display);letter-spacing:-.03em;text-wrap:initial}
.hero-subline{max-width:45ch;margin-top:28px;font:400 15px/1.85 var(--font-body)}
.hero-affiliation{font:400 12px/1.8 var(--font-body);margin-top:12px;max-width:47ch}
.hero-actions{margin-top:28px;gap:12px}
.hero-actions .button{font-size:12px;min-height:48px;padding-inline:20px;gap:20px}
.credentials{font:400 9px/1.7 var(--font-body);letter-spacing:.1em;margin-top:28px;padding-top:20px;border-top:1px solid var(--color-hairline)}
.credentials span+span{margin-left:16px;padding-left:16px}
.hero-band{padding:0;background:transparent}
.hero-portrait{width:100%;max-width:470px;padding:0;margin-left:auto;background:var(--color-white);border:1px solid var(--color-hairline);border-radius:4px;overflow:hidden;box-shadow:var(--shadow-paper)}
.hero-portrait::before{display:none}
.hero-portrait img{aspect-ratio:4/5;max-height:520px;object-fit:cover;object-position:center 40%;border-radius:0;box-shadow:none}
.hero-portrait figcaption{margin:0;padding:20px 24px;background:var(--color-white);border:0;box-shadow:none;font:500 27px/1.15 var(--font-display);letter-spacing:-.01em;display:block}
.hero-portrait figcaption span{display:block;margin-top:7px;max-width:none;font:400 9px/1.6 var(--font-body);letter-spacing:.09em;color:var(--color-olive)}
.hero-footer{margin-top:40px;padding-block:18px;font:400 10px/1.7 var(--font-body)}
.hero-footer a{font-size:11px}
#biography{padding-block:80px;background:linear-gradient(115deg,color-mix(in srgb,var(--color-cream) 75%,var(--color-white)),var(--color-white) 65%);border-top:1px solid var(--color-hairline)}
.biography-grid{grid-template-columns:.86fr 1.14fr;gap:80px;align-items:center}
.biography-portrait{padding:0;margin:0}
.biography-portrait::before{display:none}
.biography-portrait img{aspect-ratio:4/5;max-height:580px;object-fit:cover;object-position:center 38%;border-radius:4px;box-shadow:var(--shadow-paper)}
.biography-portrait figcaption{display:block;margin:0;padding:20px 0 0;border:0;background:transparent;box-shadow:none;font:400 11px/1.7 var(--font-body)}
.bio-caption-title{font:500 27px/1.15 var(--font-display);margin-bottom:6px}
.biography-story>.eyebrow{font:500 10px/1.7 var(--font-body);letter-spacing:.12em}
.biography-grid h2{font:500 52px/1.06 var(--font-display);letter-spacing:-.025em;margin:20px 0 24px}
.biography-intro{font:400 16px/1.8 var(--font-body);max-width:54ch;margin-bottom:16px}
.biography-copy{font:400 14px/1.85 var(--font-body);max-width:62ch}
.education-path{margin-top:28px;padding-top:20px}
.education-path>h3{font:500 9px/1.7 var(--font-body);letter-spacing:.1em;margin-bottom:12px}
.education-path ol{display:block}
.education-path li{display:grid;grid-template-columns:42px 116px minmax(0,1fr);align-items:baseline;gap:16px;padding:16px 0;border-top:1px solid var(--color-hairline);border-left:0}
.education-path li::before{display:none}
.education-year{font:400 10px/1.6 var(--font-body)}
.education-path h4{display:block;margin:0;font:500 25px/1.15 var(--font-display)}
.education-path p{font:400 12px/1.6 var(--font-body);margin:0}
.education-detail{font:400 10px/1.7 var(--font-body);margin-top:4px;max-width:34ch}
.biography-links{padding-top:8px;margin-top:16px;gap:24px}
.offering-grid{grid-template-rows:repeat(7,auto);row-gap:0;align-items:stretch}
.offering-grid>.offering-card{display:grid;grid-template-rows:subgrid;grid-row:span 7;gap:0;min-width:0;padding:28px 24px}
.offering-card>.number-circle{margin:0 0 24px;align-self:start;justify-self:start}
.offering-card>h3{margin:0 0 18px;min-height:0;font:500 26px/1.12 var(--font-display)}
.offering-card>p{margin:0 0 24px;font:400 14px/1.8 var(--font-body)}
.offering-card>.checked-list{display:grid;grid-template-rows:subgrid;grid-row:span 3;margin:0 0 24px;align-self:stretch;font-size:13px}
.offering-card>.checked-list li{min-height:0;padding-block:10px;align-items:start}
.offering-card>.button{margin-top:0;align-self:end;font-size:13px}
.consulting-disclosures .service-catalog{padding:24px 32px 32px;gap:16px 24px;align-items:start}
.consulting-disclosures .service-catalog>.service-detail{border:1px solid var(--color-hairline);border-radius:4px;background:var(--color-white);overflow:hidden}
.consulting-disclosures .service-catalog summary{display:flex;align-items:center;gap:16px;list-style:none;padding:20px;min-height:88px;font:500 14px/1.6 var(--font-body)}
.consulting-disclosures .service-catalog summary::-webkit-details-marker{display:none}
.catalog-number{flex:0 0 18px;font:400 10px/1.6 var(--font-body);color:var(--color-olive)}
.catalog-title{flex:1;min-width:0}
.service-catalog .disclosure-icon{border:0;width:24px;flex-basis:24px;height:24px}
.service-catalog .disclosure-icon::before,.service-catalog .disclosure-icon::after{left:7px;right:7px;top:11px}
.consulting-disclosures .service-catalog summary:hover,.consulting-disclosures .service-catalog details[open]>summary{background:var(--color-cream)}
.consulting-disclosures .service-catalog .service-detail-content{padding:0 20px 24px}
.consulting-disclosures .service-catalog details[open]>.service-detail-content{padding-top:20px}
.consulting-disclosures .service-catalog .service-detail-content p{font:400 13px/1.85 var(--font-body);margin-bottom:20px}
.service-catalog .service-inquiry{font-size:12px}
.consulting-faq{grid-template-columns:.8fr 1.4fr;gap:64px}
.faq-intro{border-top:1px solid var(--color-hairline);padding-top:24px}
.faq-intro .eyebrow{margin-bottom:16px}
.faq-intro h3{font:500 38px/1.1 var(--font-display);letter-spacing:-.02em;margin-bottom:14px}
.faq-intro>p:last-child{max-width:none;font:400 13px/1.8 var(--font-body);margin:0}
.testimonials-section .section-header{justify-content:flex-start;margin-bottom:32px}
.testimonials-featured>.testimonial-story:first-child{background:var(--color-white)}
@media(max-width:1150px){
 .hero-grid{gap:48px;grid-template-columns:1.08fr .92fr}.hero h1{font-size:52px}.hero-eyebrow{font-size:8px;letter-spacing:.08em}.hero-actions .button{padding-inline:16px;gap:16px;font-size:11px}.hero-portrait figcaption{font-size:25px;padding:18px 20px}
 .biography-grid{gap:48px}.biography-grid h2{font-size:46px}.education-path li{grid-template-columns:36px 100px minmax(0,1fr);gap:12px}.education-path h4{font-size:23px}
 .offering-grid{row-gap:24px}.offering-card>.checked-list li{min-height:0}
}
@media(max-width:950px){
 .site-header .wordmark{min-height:64px}.site-header .brand-quill{width:54px;height:64px}
 .hero-grid{grid-template-columns:1fr .9fr;gap:36px}.hero{padding-top:36px}.hero h1{font-size:46px}.hero-eyebrow{max-width:30ch;font-size:9px}.hero-actions{flex-direction:column;width:100%;align-items:stretch}.hero-actions .button{font-size:12px}.hero-subline{font-size:14px}.hero-affiliation{font-size:11px}.hero-portrait figcaption{font-size:24px}.hero-portrait img{aspect-ratio:3/4;max-height:none}
 .biography-grid{grid-template-columns:.78fr 1.22fr;gap:32px;align-items:start}.biography-portrait{margin-top:42px}.biography-portrait img{aspect-ratio:3/4}.biography-grid h2{font-size:43px}.biography-intro{font-size:15px}.biography-copy{font-size:13px}
 .education-path li{grid-template-columns:38px 1fr;gap:6px 14px}.education-path h4{font-size:25px}.education-qualification{grid-column:2}.education-path p{font-size:12px}.bio-caption-title{font-size:25px}
 .consulting-faq{gap:32px}.faq-intro h3{font-size:34px}
 .consulting-disclosures .service-catalog{padding:20px;gap:12px}.consulting-disclosures .service-catalog summary{gap:10px;font-size:13px;padding:18px;min-height:96px}
}
@media(max-width:800px){.consulting-faq{grid-template-columns:1fr;gap:24px}.faq-intro{padding-top:20px}.faq-intro>p:last-child{max-width:none}}
@media(max-width:650px){
 .site-header .wordmark{gap:10px;min-height:54px}.site-header .brand-quill{width:46px;height:54px}.site-header .wordmark .brand-title{font-size:14px;letter-spacing:.12em}.site-header .wordmark .brand-descriptor{display:none}
 .hero{padding-top:28px}.hero-grid{grid-template-columns:1fr;gap:32px}.hero-copy{padding:0}.hero h1{font-size:clamp(39px,10.7vw,56px);line-height:1.08}.hero-eyebrow{font-size:8px;max-width:none;letter-spacing:.06em;gap:10px}.hero-eyebrow::before{width:18px}.hero-subline{font-size:15px;margin-top:24px}.hero-affiliation{font-size:12px}.hero-actions{margin-top:24px}.hero-actions .button{font-size:13px}.credentials{margin-top:24px;padding-top:18px;font-size:9px}.hero-portrait{max-width:none}.hero-portrait img{aspect-ratio:4/5;max-height:520px}.hero-portrait figcaption{padding:20px;font-size:27px}.hero-footer{margin-top:28px;padding-block:16px;gap:8px}
 #biography{padding-block:48px;background:linear-gradient(180deg,var(--color-cream),var(--color-white) 55%)}.biography-grid{grid-template-columns:1fr;gap:32px}.biography-portrait{margin-top:0}.biography-portrait img{aspect-ratio:1/1;max-height:none;object-position:center 30%}.biography-portrait figcaption{padding-top:16px}.biography-grid h2{font-size:42px}.biography-intro{font-size:15px}.biography-copy{font-size:14px}.education-path li{padding:16px 0}.education-path p{font-size:13px}.education-detail{font-size:11px}.biography-links{gap:12px 24px}
 .offering-grid{display:grid;grid-template-columns:1fr;grid-template-rows:none;row-gap:20px}.offering-grid>.offering-card{display:flex;grid-row:auto;padding:28px 24px}.offering-card>.checked-list{display:block;grid-row:auto}.offering-card>.checked-list li{min-height:0}.offering-card>.button{align-self:stretch;margin-top:0}
 .consulting-disclosures .service-catalog{grid-template-columns:1fr;padding:16px;gap:12px}.consulting-disclosures .service-catalog summary{min-height:80px;font-size:13px;padding:16px;gap:12px}.consulting-disclosures .service-catalog .service-detail-content{padding:16px}.consulting-disclosures .service-catalog .service-detail-content p{font-size:14px}
 .faq-intro h3{font-size:36px}.testimonials-section .section-header{margin-bottom:28px}
}
@media(max-width:360px){.site-header .wordmark{gap:8px}.site-header .brand-quill{width:40px;height:48px}.site-header .wordmark .brand-title{font-size:13px;letter-spacing:.08em}.hero h1{font-size:35px}.hero-eyebrow{font-size:7px}.hero-portrait figcaption{font-size:24px}.biography-grid h2{font-size:38px}}
@media print{.hero-portrait,.biography-portrait img{box-shadow:none}.hero-grid,.biography-grid{gap:32px}.offering-grid>.offering-card{display:block}.service-catalog details{break-inside:avoid}}

/* Shared shop, bag, and policy pages. */
.site-header{gap:20px}.site-header ul{gap:20px}.site-header .nav-contact{font-size:11px;padding-inline:14px;white-space:nowrap}.site-header .nav-contact .arrow{display:none}.mobile-contact-link{display:none}.bag-toggle{position:relative;display:grid;place-items:center;width:44px;height:44px;flex-shrink:0;background:transparent;border:0;color:var(--color-olive);cursor:pointer}.bag-toggle svg{width:22px;height:24px;fill:none;stroke:currentColor;stroke-width:1.4}.bag-count{position:absolute;right:0;top:0;min-width:16px;height:16px;border-radius:50%;background:var(--color-olive);color:var(--color-white);font:500 9px/16px var(--font-body)}.bag-count:empty{display:none}.footer-policy-nav{display:flex;gap:24px;flex-wrap:wrap;padding-top:22px;font-size:11px}.footer-policy-nav a{text-decoration:none;color:var(--color-olive)}
.experience-catalog{display:grid!important;grid-template-columns:1fr 1fr;gap:14px!important;max-width:none!important}.experience-catalog>details:last-child{grid-column:1/-1}.experience-catalog .service-detail-content{padding:0 26px 24px 66px}.experience-catalog .service-detail-content p{max-width:80ch;font:400 14px/1.9 var(--font-body)}
.consulting-image-hero .section-hero-copy{max-width:540px}.consulting-image-hero h2{font-size:clamp(48px,4.5vw,68px);line-height:1.08}.consulting-image-hero .section-hero-lead{font-size:16px;max-width:40ch}.consulting-image-hero .section-hero-note{display:grid;grid-template-columns:1fr auto;gap:16px;align-items:center;margin-top:30px;padding-top:16px}.consulting-image-hero .section-hero-note p{max-width:28ch;font-size:11px}.consulting-image-hero .section-hero-note>span{margin:0;font-size:11px}.consulting-image-hero .section-hero-motto{font-size:10px;letter-spacing:.16em;margin-top:18px}
.commerce-main{padding-top:var(--nav-height-desktop);min-height:70vh}.commerce-main h1{font:500 clamp(44px,5.2vw,72px)/1.05 var(--font-display);letter-spacing:-.025em;margin:0}.commerce-main h1 em{color:var(--color-olive);font-weight:400}.commerce-main p{line-height:1.8}.shop-intro{display:grid;grid-template-columns:1.5fr 1fr;gap:80px;align-items:end;padding-block:76px 60px}.shop-intro .eyebrow{margin-bottom:20px}.shop-intro-note{max-width:360px;justify-self:end}.shop-intro-note>p:first-child{font-size:17px;margin:0 0 24px}.preview-label{display:inline-block;border:1px solid var(--color-hairline);padding:6px 10px;border-radius:3px;font:500 10px/1.5 var(--font-body);letter-spacing:.08em;text-transform:uppercase;color:var(--color-olive)}.small-copy{font-size:12px!important;line-height:1.8!important}.shop-intro-note .small-copy{margin:12px 0 0}.shop-toolbar{border-top:1px solid var(--color-hairline);padding:24px 0;display:flex;align-items:center;justify-content:space-between;gap:20px}.shop-toolbar>p{font-size:12px;margin:0;color:var(--color-olive)}.shop-filters{display:flex;gap:8px;flex-wrap:wrap}.shop-filters button{font:500 12px/1.5 var(--font-body);padding:10px 18px;min-height:44px;background:transparent;border:1px solid transparent;border-radius:3px;cursor:pointer}.shop-filters button[aria-pressed=true]{background:var(--color-cream);border-color:var(--color-hairline);color:var(--color-olive)}.shop-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px 24px}.product-card[hidden]{display:none}.product-image-button{display:block;width:100%;border:1px solid var(--color-hairline);padding:0;background:var(--color-cream);cursor:pointer;overflow:hidden;border-radius:3px}.product-image-button img{display:block;width:100%;aspect-ratio:1;object-fit:cover;transition:transform .35s}.product-image-button:hover img{transform:scale(1.035)}.product-info{padding:18px 0 0;display:grid;grid-template-columns:1fr auto;gap:8px}.product-info h2{font:500 25px/1.2 var(--font-display);margin:0}.product-info p{font-size:11px;color:var(--color-olive);margin:4px 0 0}.product-price{font-size:13px;padding-top:4px}.product-shop-button{margin-top:14px;border:0;border-bottom:1px solid var(--color-hairline);background:none;width:100%;padding:8px 0 12px;text-align:left;display:flex;justify-content:space-between;font:500 12px/1.5 var(--font-body);cursor:pointer;min-height:44px}.shop-closing{margin-block:72px;padding-block:40px;border-block:1px solid var(--color-hairline);display:grid;grid-template-columns:1fr 1fr;gap:18px 64px}.shop-closing .eyebrow{grid-column:1/-1}.shop-closing h2{font:500 42px/1.1 var(--font-display);margin:0;grid-row:2/4}.shop-closing p{margin:0;max-width:52ch;font-size:14px}.shop-closing a{font-size:12px;justify-self:start}
.commerce-dialog{border:1px solid var(--color-hairline);background:var(--color-white);color:var(--color-ink);padding:36px;width:min(940px,calc(100vw - 32px));max-height:calc(100dvh - 40px);overflow:auto;border-radius:5px;box-shadow:0 24px 90px color-mix(in srgb,var(--color-ink) 20%,transparent)}.commerce-dialog::backdrop{background:color-mix(in srgb,var(--color-ink) 45%,transparent);backdrop-filter:blur(4px)}.dialog-close{position:absolute;right:12px;top:12px;z-index:2;width:44px;height:44px;background:var(--color-white);border:1px solid var(--color-hairline);border-radius:50%;font-size:24px;color:var(--color-olive);cursor:pointer}.product-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:36px;align-items:center}.product-detail-grid>img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:3px}.product-detail-copy h2{font:500 40px/1.05 var(--font-display);margin:12px 0}.product-detail-copy p{font-size:14px;line-height:1.8}.product-detail-copy label{display:block;font-size:12px;margin:20px 0 8px}.product-detail-copy select{width:100%;padding:12px;border:1px solid var(--color-hairline);background:transparent}.product-detail-copy .button{width:100%;margin-top:20px}.product-detail-copy .small-copy{color:var(--color-olive)}.bag-dialog{width:min(560px,calc(100vw - 24px));margin-right:12px;min-height:calc(100dvh - 24px);max-height:calc(100dvh - 24px);padding:36px 28px}.bag-dialog h2{font:500 36px/1.2 var(--font-display);margin:10px 0 24px}.bag-empty{padding-block:48px;text-align:center}.bag-item{display:grid;grid-template-columns:88px 1fr;gap:16px;padding:20px 0;border-bottom:1px solid var(--color-hairline)}.bag-item img{width:88px;aspect-ratio:1;object-fit:cover}.bag-item h3{font:500 22px/1.2 var(--font-display);margin:0 0 6px}.bag-item p{font-size:12px;margin:0 0 10px}.quantity-controls{display:flex;gap:10px;align-items:center}.quantity-controls button{width:34px;height:34px;background:transparent;border:1px solid var(--color-hairline);cursor:pointer}.quantity-controls .remove-item{width:auto;border:0;text-decoration:underline;font-size:11px;margin-left:auto}.bag-total{display:flex;justify-content:space-between;padding:24px 0 8px;font-size:16px}.bag-checkout{width:100%;margin-top:20px}.bag-feedback{padding:16px;background:var(--color-cream);font-size:13px;line-height:1.8}.bag-dialog .small-copy{margin-top:12px}.bag-live-message{font-size:12px;color:var(--color-olive)}body:has(.commerce-dialog[open]){overflow:hidden}.sample-times{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:24px}.sample-times button{border:1px solid var(--color-hairline);background:var(--color-white);font-size:12px;padding:12px 4px;min-height:44px;cursor:pointer}.sample-times button[aria-pressed=true]{border-color:var(--color-olive);background:var(--color-cream);color:var(--color-olive)}#booking-summary{background:var(--color-white);padding:20px;margin-top:20px;border:1px solid var(--color-hairline);font-size:13px;line-height:1.8}#booking-summary strong{display:block}
.policy-layout{display:grid;grid-template-columns:1fr 1.7fr;gap:80px;padding-block:80px}.policy-layout h1{font-size:54px}.policy-layout header>p{font-size:14px}.policy-layout nav{display:grid;gap:16px;margin-top:32px;font-size:13px}.policy-preview{border:1px solid var(--color-hairline);background:var(--color-cream);padding:24px;font-size:13px;margin:0}.policy-content section{padding-block:36px;border-bottom:1px solid var(--color-hairline);scroll-margin-top:110px}.policy-content h2{font:500 34px/1.2 var(--font-display);margin:0 0 20px}.policy-content p{font-size:14px}.commerce-status{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);padding:12px 24px;background:var(--color-olive);color:var(--color-white);z-index:100;font-size:13px;border-radius:3px;max-width:90vw}.commerce-status:empty{display:none}
@media(max-width:1200px){.site-header{gap:12px}.site-header ul{gap:14px}.site-header .wordmark{gap:10px}.site-header .brand-descriptor{font-size:8px}.site-header .brand-title{font-size:15px}.shop-intro{gap:48px}}
@media(max-width:1100px){.site-header nav{display:none;position:absolute;top:100%;left:0;right:0;margin:0;padding:24px 32px;background:var(--color-white);border-bottom:1px solid var(--color-hairline);max-height:calc(100dvh - 80px);overflow-y:auto}.site-header nav.is-open{display:block}.site-header nav ul{display:grid;grid-template-columns:1fr 1fr;gap:0 24px}.site-header nav a{min-height:48px;font-size:15px}.site-header .nav-contact{margin-left:auto}.mobile-contact-link{display:block}#menu-toggle{display:flex;align-items:center;justify-content:center;min-width:44px;width:44px;height:44px}.menu-label{display:none}.footer-top{flex-wrap:wrap}.footer-nav{flex-wrap:wrap;justify-content:flex-start}}
@media(max-width:800px){.shop-intro{grid-template-columns:1fr;padding-block:48px 32px;gap:24px}.shop-intro-note{justify-self:start;max-width:480px}.shop-intro-note>p:first-child{margin-bottom:16px}.shop-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 20px}.policy-layout{grid-template-columns:1fr;padding-block:48px;gap:40px}.policy-layout nav{display:flex;flex-wrap:wrap}.product-detail-grid{gap:24px}.product-detail-copy h2{font-size:32px}.experience-catalog{grid-template-columns:1fr}.experience-catalog>details:last-child{grid-column:auto}.experience-catalog .service-detail-content{padding-left:26px}}
@media(max-width:600px){.commerce-main{padding-top:var(--nav-height-mobile)}.site-header .nav-contact{font-size:10px;padding-inline:10px}.site-header{gap:8px}.site-header .wordmark{gap:8px}.site-header .brand-title{font-size:13px;letter-spacing:.08em}.site-header .brand-quill{width:38px;height:50px}.site-header .bag-toggle{width:36px;min-width:36px}.site-header nav ul{grid-template-columns:1fr}.shop-intro{padding-top:36px}.commerce-main h1{font-size:43px}.shop-filters{gap:0}.shop-filters button{padding:9px 10px;font-size:11px}.shop-toolbar>p{font-size:10px}.shop-grid{gap:26px 14px}.product-info{display:block;padding-top:12px}.product-info h2{font-size:22px}.product-price{display:block;margin-top:8px;font-size:12px}.product-shop-button{font-size:11px}.shop-closing{grid-template-columns:1fr;margin-block:48px;gap:20px}.shop-closing h2{grid-row:auto;font-size:36px}.product-detail-grid{grid-template-columns:1fr}.commerce-dialog{padding:24px}.product-detail-grid>img{max-height:300px;object-fit:contain}.product-detail-copy h2{font-size:34px}.product-detail-copy .eyebrow{margin-top:0}.bag-dialog{padding:30px 20px;margin:auto;min-height:0}.footer-policy-nav{gap:14px 22px}.consulting-image-hero .section-hero-copy{width:100%}.consulting-image-hero h2{font-size:42px}.consulting-image-hero .section-hero-note{gap:12px;grid-template-columns:1fr}.consulting-image-hero .section-hero-lead{font-size:15px}.policy-layout{padding-top:36px}.experience-catalog .service-detail-content{padding-inline:18px}}
@media(prefers-reduced-motion:reduce){.product-image-button img{transition:none}}

/* Chicago biography and the home-page collection preview. */
#biography{position:relative;isolation:isolate;padding-block:80px;background:var(--color-cream);overflow:hidden;border:0}
.biography-skyline{position:absolute;inset:0;z-index:-2}
.biography-skyline img{width:100%;height:100%;object-fit:cover;object-position:34% center}
#biography::after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,color-mix(in srgb,var(--color-ink) 30%,transparent),transparent 65%)}
#biography .biography-grid{display:grid;grid-template-columns:.78fr 1.22fr;gap:60px;align-items:end}
.biography-place{color:var(--color-white);padding-bottom:32px;text-shadow:0 2px 18px color-mix(in srgb,var(--color-ink) 65%,transparent)}
.biography-place .eyebrow{color:inherit;font-size:10px;letter-spacing:.18em}
.biography-place>p{font:400 clamp(32px,3.2vw,48px)/1.12 var(--font-display);margin:20px 0 28px;letter-spacing:-.02em}
.biography-place>p em{font-weight:400}
.biography-place-rule{display:block;width:56px;height:1px;background:currentColor}
#biography .biography-story{padding:44px 46px;background:color-mix(in srgb,var(--color-white) 97%,transparent);border:1px solid color-mix(in srgb,var(--color-white) 70%,transparent);box-shadow:0 24px 70px color-mix(in srgb,var(--color-ink) 17%,transparent);backdrop-filter:blur(12px)}
#biography .biography-story h2{font-size:clamp(40px,4vw,56px);margin:20px 0 24px}
#biography .biography-intro{font-size:15px;line-height:1.8}
#biography .biography-copy{font-size:13px;line-height:1.9}
#biography .education-path{margin-top:24px;padding-top:20px}
#biography .education-path li{grid-template-columns:32px 116px minmax(0,1fr);gap:12px;padding:14px 0}
#biography .education-path h4{font-size:24px;white-space:nowrap}
#biography .education-path p{font-size:11px}
#biography .education-detail{font-size:10px}
#biography .biography-links{gap:16px 22px;flex-wrap:wrap;margin-top:16px;font-size:11px}
.shop-preview{padding-block:80px 36px;background:var(--color-white);border-top:1px solid var(--color-hairline)}
.shop-preview-heading{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:40px}
.shop-preview-heading h2{font:500 clamp(44px,4.6vw,66px)/1.02 var(--font-display);letter-spacing:-.025em;margin:18px 0 0}
.shop-preview-heading h2 em{font-weight:400;color:var(--color-olive)}
.shop-preview-intro{padding-bottom:6px;min-width:280px}.shop-preview-intro p{font-size:14px;line-height:1.9;margin:0 0 20px}.shop-preview-intro a{font-size:12px}
.shop-preview-track{display:flex;gap:24px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding:1px;padding:1px 1px 16px;scrollbar-width:thin;scrollbar-color:var(--color-hairline) transparent;overscroll-behavior-x:contain}
.preview-piece{flex:0 0 calc((100% - 72px)/4);min-width:0;scroll-snap-align:start}.preview-piece a{display:block;text-decoration:none;color:inherit}.preview-piece-image{overflow:hidden;border:1px solid var(--color-hairline);background:var(--color-cream)}.preview-piece img{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:cover;transition:transform .45s ease}.preview-piece a:hover img{transform:scale(1.035)}.preview-piece-info{display:flex;justify-content:space-between;align-items:end;gap:12px;padding:20px 0 10px}.preview-piece-info .eyebrow{font-size:8px;letter-spacing:.14em}.preview-piece h3{font:500 25px/1.1 var(--font-display);margin:8px 0 0}.preview-piece-info>span{font-size:12px;padding-bottom:2px}
.shop-preview-bottom{display:flex;justify-content:space-between;gap:24px;align-items:center;padding-top:16px}.shop-preview-bottom>p{font-size:10px;color:var(--color-olive);margin:0}.carousel-controls{display:flex;align-items:center;gap:10px}.carousel-controls>span{font-size:10px;letter-spacing:.1em;margin-right:16px;font-variant-numeric:tabular-nums}.carousel-controls button{width:44px;height:44px;border-radius:50%;border:1px solid var(--color-hairline);background:transparent;color:var(--color-olive);font-size:20px;cursor:pointer}.carousel-controls button:disabled{opacity:.35;cursor:default}.carousel-controls button:not(:disabled):hover{background:var(--color-cream)}
.product-card{scroll-margin-top:100px}
@media(max-width:1100px){#biography .biography-grid{grid-template-columns:.65fr 1.35fr;gap:32px}#biography .biography-story{padding:36px}.preview-piece{flex-basis:calc((100% - 48px)/3)}#biography .education-path li{grid-template-columns:30px 1fr}#biography .education-qualification{grid-column:2}}
@media(max-width:760px){#biography{padding-block:0 40px}#biography .biography-grid{grid-template-columns:1fr;gap:0}.biography-skyline{height:530px}.biography-skyline img{object-position:27% center}#biography::after{height:530px;background:linear-gradient(180deg,transparent 15%,color-mix(in srgb,var(--color-ink) 50%,transparent))}.biography-place{padding:140px 8px 40px}.biography-place>p{font-size:38px;margin-block:16px}.biography-place>p br:last-child{display:none}.biography-place-rule{display:none}#biography .biography-story{padding:32px 28px}#biography .biography-story h2{font-size:44px}#biography .education-path li{grid-template-columns:32px 116px minmax(0,1fr)}#biography .education-qualification{grid-column:auto}.shop-preview{padding-top:48px}.shop-preview-heading{gap:24px;margin-bottom:28px}.shop-preview-intro{min-width:0;max-width:220px}.preview-piece{flex-basis:calc((100% - 24px)/2)}.shop-preview-track{gap:20px}}
@media(max-width:520px){.biography-place{padding-top:150px}#biography .biography-story{padding:28px 22px}#biography .biography-story h2{font-size:39px}#biography .biography-intro{font-size:14px}#biography .education-path li{grid-template-columns:32px 1fr;gap:6px 12px}#biography .education-qualification{grid-column:2}#biography .biography-links{font-size:11px;gap:14px}.shop-preview-heading{display:block}.shop-preview-intro{max-width:none;margin-top:24px}.shop-preview-intro p{display:none}.shop-preview-track{margin-right:-20px;padding-right:20px}.preview-piece{flex-basis:78%}.preview-piece h3{font-size:28px}.shop-preview-bottom{align-items:start;gap:16px}.shop-preview-bottom>p{max-width:150px;line-height:1.7}.carousel-controls{gap:6px}.carousel-controls>span{margin-right:4px;font-size:9px}.carousel-controls button{width:42px;height:42px}}
@media(prefers-reduced-motion:reduce){.preview-piece img{transition:none}}
@media print{.biography-skyline,#biography::after,.biography-place,.carousel-controls{display:none}#biography .biography-grid{display:block}#biography .biography-story{box-shadow:none}.shop-preview-track{flex-wrap:wrap;overflow:visible}}

/* Frosted glass: a shared optical surface, with a legible solid fallback. */
.site-header,
.hero-portrait figcaption,
#biography .biography-story,
.book-showcase,
.book-section #praise,
#services .offering-card,
.consultation-card,
.testimonials-featured>.testimonial-story,
.testimonials-featured>.testimonial-story:first-child,
.testimonials-more,
.media-grid .media-panel,
.speaking-feature,
.inquiry-panel{
 background:var(--glass-surface);
 border:1px solid var(--glass-edge);
 border-radius:var(--glass-radius);
 box-shadow:var(--glass-shadow);
 -webkit-backdrop-filter:blur(26px) saturate(135%);
 backdrop-filter:blur(26px) saturate(135%);
 background-clip:padding-box;
}
/* The header remains a quiet, continuous pane while content passes beneath it. */
.site-header{background:linear-gradient(110deg,color-mix(in srgb,var(--color-white) 82%,transparent),color-mix(in srgb,var(--color-white) 64%,transparent));border:0;border-bottom:1px solid var(--glass-edge);border-radius:0;box-shadow:0 5px 28px color-mix(in srgb,var(--color-ink) 6%,transparent),inset 0 -1px 0 color-mix(in srgb,var(--color-white) 50%,transparent);-webkit-backdrop-filter:blur(24px) saturate(155%);backdrop-filter:blur(24px) saturate(155%)}
.site-header .nav-contact{border-radius:999px;background:color-mix(in srgb,var(--color-white) 48%,transparent);border-color:color-mix(in srgb,var(--color-olive) 20%,transparent);box-shadow:inset 0 1px 0 var(--glass-edge),0 3px 10px color-mix(in srgb,var(--color-ink) 3%,transparent)}
.site-header .nav-contact::before{background:color-mix(in srgb,var(--color-white) 65%,transparent)}
.hero-portrait figcaption{position:relative;z-index:2;margin:-72px 22px 0 -22px;padding:24px 28px;background:linear-gradient(125deg,color-mix(in srgb,var(--color-white) 84%,transparent),color-mix(in srgb,var(--color-white) 62%,transparent));border-radius:20px;box-shadow:var(--glass-shadow);-webkit-backdrop-filter:blur(28px) saturate(125%);backdrop-filter:blur(28px) saturate(125%)}
#biography .biography-story{background:linear-gradient(130deg,color-mix(in srgb,var(--color-white) 85%,transparent),color-mix(in srgb,var(--color-white) 67%,transparent));border-radius:28px;-webkit-backdrop-filter:blur(30px) saturate(115%);backdrop-filter:blur(30px) saturate(115%);box-shadow:inset 0 1px 0 var(--color-white),inset 0 -1px 0 color-mix(in srgb,var(--color-white) 45%,transparent),0 24px 70px color-mix(in srgb,var(--color-ink) 16%,transparent)}
/* Subtle light behind the transparent panels gives the material depth. */
.book-section{background:radial-gradient(ellipse at 12% 20%,color-mix(in srgb,var(--color-olive) 14%,transparent),transparent 48%),radial-gradient(ellipse at 90% 80%,color-mix(in srgb,var(--color-hairline) 40%,transparent),transparent 55%),var(--color-cream);padding-block:88px}
#triple-ivy>.section-body{background:radial-gradient(ellipse at 12% 12%,color-mix(in srgb,var(--color-olive) 8%,transparent),transparent 42%),radial-gradient(ellipse at 92% 78%,color-mix(in srgb,var(--color-hairline) 32%,transparent),transparent 48%)}
#speaking>.section-body{background:radial-gradient(ellipse at 85% 25%,color-mix(in srgb,var(--color-olive) 10%,transparent),transparent 52%),radial-gradient(ellipse at 10% 90%,color-mix(in srgb,var(--color-hairline) 35%,transparent),transparent 56%)}
.contact-section{background:radial-gradient(ellipse at 78% 45%,color-mix(in srgb,var(--color-olive) 14%,transparent),transparent 54%),linear-gradient(125deg,var(--color-white),var(--color-cream))}
/* Book: an airy display case paired with a more deliberate editorial column. */
.book-grid{grid-template-columns:1.02fr .98fr;gap:clamp(48px,6vw,88px);align-items:center}
.book-showcase{padding:28px 24px 24px;border-radius:28px}
.book-showcase::before{display:none}
.book-showcase>.eyebrow{background:color-mix(in srgb,var(--color-white) 50%,transparent);border:1px solid var(--glass-edge);border-radius:999px;padding:8px 16px;font-size:9px;letter-spacing:.14em}
.book-stage{padding-block:26px 40px;min-height:450px}
.book-stage::before{background:radial-gradient(ellipse,color-mix(in srgb,var(--color-white) 80%,transparent),transparent 68%)}
.book-view-controls{display:flex;width:fit-content;max-width:100%;margin:8px auto 0;padding:4px;border:1px solid var(--glass-edge);border-radius:999px;background:color-mix(in srgb,var(--color-white) 36%,transparent);box-shadow:inset 0 1px 2px color-mix(in srgb,var(--color-ink) 4%,transparent)}
.book-view-controls button{border-radius:999px;padding-inline:16px}
.book-view-controls button[aria-pressed=true]{border-color:color-mix(in srgb,var(--color-white) 90%,transparent);background:color-mix(in srgb,var(--color-white) 88%,transparent);box-shadow:0 2px 7px color-mix(in srgb,var(--color-ink) 9%,transparent)}
#book-enlarge{margin-left:0}.book-interaction-note{margin-top:16px;font-size:10px}
.book-copy{max-width:520px}.book-copy .book-publisher{border:0;padding-bottom:0;font-size:10px;letter-spacing:.075em}
.book-copy h2{font-size:clamp(50px,4.8vw,70px);line-height:1.02;margin-block:24px 20px;letter-spacing:-.03em}
.book-copy .book-subtitle{max-width:32ch;font-size:17px;line-height:1.6}.book-copy .book-introduction{margin-top:28px;max-width:48ch;line-height:1.85}
.book-purchase{gap:18px;margin-top:28px;padding-top:24px}.book-purchase .button{border-radius:14px;min-height:52px}
.book-story>summary{min-height:62px}.book-section #praise{padding:32px 40px;margin-top:48px;border-radius:24px}.book-section .praise-slide{max-width:940px;padding-block:24px 16px}.book-section .praise-slide blockquote{font:500 clamp(26px,2.6vw,36px)/1.32 var(--font-display);letter-spacing:-.015em}.book-section .praise-heading h3{font-size:10px;letter-spacing:.13em}
#services .offering-card{border-radius:22px;box-shadow:var(--glass-shadow);transition:box-shadow 220ms ease,border-color 220ms ease}
#services .offering-card::before{border-radius:inherit}
#services .offering-card .card-number{background:color-mix(in srgb,var(--color-white) 48%,transparent);border-color:var(--glass-edge)}
.consultation-card{border-width:1px;border-radius:26px}
.testimonials-featured>.testimonial-story,.testimonials-featured>.testimonial-story:first-child{border-top-width:1px;border-radius:22px;box-shadow:var(--glass-shadow)}
.testimonials-more{border-radius:22px;overflow:hidden}.testimonials-more>summary{background:transparent;border-radius:inherit}.testimonials-more[open]>summary{background:color-mix(in srgb,var(--color-white) 24%,transparent)}
.media-grid .media-panel{border-top-width:1px;border-radius:24px}.speaking-feature{border-radius:26px;border-width:1px}.speaking-feature .video-frame{border-radius:16px;overflow:hidden;box-shadow:0 10px 26px color-mix(in srgb,var(--color-ink) 10%,transparent)}
.inquiry-panel{border-radius:26px;border-top-width:1px}.inquiry-panel input,.inquiry-panel select,.inquiry-panel textarea{background:color-mix(in srgb,var(--color-white) 62%,transparent);border-color:color-mix(in srgb,var(--color-olive) 38%,transparent);border-radius:10px;box-shadow:inset 0 2px 5px color-mix(in srgb,var(--color-ink) 3%,transparent)}.inquiry-panel button[type=submit]{border-radius:12px}
@media(hover:hover){#services .offering-card:hover{border-color:var(--color-white);box-shadow:inset 0 1px 0 var(--color-white),0 16px 40px color-mix(in srgb,var(--color-ink) 10%,transparent)}}
@media(max-width:1100px){.site-header nav{background:color-mix(in srgb,var(--color-white) 94%,transparent);border-radius:0 0 22px 22px;-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px)}.book-grid{gap:36px}.book-stage{min-height:390px}.book-copy h2{font-size:52px}.book-showcase{padding-inline:16px}}
@media(max-width:800px){.book-grid{grid-template-columns:1fr 1fr;gap:28px}.book-stage{min-height:350px}.book-copy h2{font-size:44px}.book-copy .book-subtitle{font-size:15px}.book-view-controls button{font-size:10px;padding-inline:10px}.book-section #praise{padding:28px}.hero-portrait figcaption{margin:-52px 12px 0 -12px;padding:22px}}
@media(max-width:650px){.book-section{padding-block:56px}.book-grid{grid-template-columns:1fr;gap:40px}.book-showcase{padding:24px 14px;border-radius:24px}.book-stage{min-height:375px}.book-copy h2{font-size:52px}.book-copy .book-introduction{font-size:15px}.book-section #praise{padding:24px;margin-top:32px}.book-section .praise-slide blockquote{font-size:28px}.book-section .praise-controls{justify-content:flex-start;gap:16px}.book-view-controls button{padding-inline:12px}.hero-portrait figcaption{margin:-48px 12px 0;padding:22px 20px;font-size:25px}#biography .biography-story{border-radius:24px}.speaking-feature{padding:22px;gap:24px;border:1px solid var(--glass-edge)}.speaking-feature .video-frame{border-radius:12px}.interview-copy h3{font-size:34px}.media-grid .media-panel{border-radius:22px}.testimonials-featured{padding-top:2px;padding-bottom:22px}.testimonials-featured>.testimonial-story{box-shadow:inset 0 1px 0 var(--color-white),0 5px 12px color-mix(in srgb,var(--color-ink) 5%,transparent)}}
@media(max-width:360px){.book-stage{min-height:325px}.book-copy h2{font-size:44px}.book-view-controls button{padding-inline:8px}.hero-portrait figcaption{font-size:22px}.book-section #praise{padding:22px}.speaking-feature{padding:18px}}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){.site-header,.hero-portrait figcaption,#biography .biography-story,.book-showcase,.book-section #praise,#services .offering-card,.consultation-card,.testimonials-featured>.testimonial-story,.testimonials-more,.media-grid .media-panel,.speaking-feature,.inquiry-panel{background:var(--color-white)}}
@media(prefers-reduced-transparency:reduce),(prefers-contrast:more){.site-header,.site-header nav,.hero-portrait figcaption,#biography .biography-story,.book-showcase,.book-section #praise,#services .offering-card,.consultation-card,.testimonials-featured>.testimonial-story,.testimonials-featured>.testimonial-story:first-child,.testimonials-more,.media-grid .media-panel,.speaking-feature,.inquiry-panel{background:var(--color-white);-webkit-backdrop-filter:none;backdrop-filter:none;border-color:var(--color-hairline)}}
@media(prefers-reduced-motion:reduce){#services .offering-card{transition:none}}
@media print{.site-header,.hero-portrait figcaption,#biography .biography-story,.book-showcase,.book-section #praise,#services .offering-card,.consultation-card,.testimonials-featured>.testimonial-story,.testimonials-more,.media-grid .media-panel,.speaking-feature,.inquiry-panel{background:var(--color-white);box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}}
/* Blend the supplied ivory logo backing into the translucent navigation pane. */
.site-header .brand-quill{mix-blend-mode:multiply}

/* Refined glass proportions and full-viewport light, October 8. */
.site-header .brand-quill,.footer-brand img{object-fit:contain;object-position:center;mix-blend-mode:normal}
.hero-portrait{position:relative}
.hero-portrait figcaption{position:absolute;left:16px;bottom:16px;width:max-content;max-width:calc(100% - 32px);margin:0;padding:14px 18px;border-radius:16px;font-size:23px;line-height:1.15;letter-spacing:-.015em;box-shadow:inset 0 1px 0 var(--color-white),0 8px 24px color-mix(in srgb,var(--color-ink) 10%,transparent)}
.hero-portrait figcaption span{font-size:8px;line-height:1.5;letter-spacing:.1em;margin-top:6px}
#biography .biography-story{background:linear-gradient(130deg,color-mix(in srgb,var(--color-white) 77%,transparent),color-mix(in srgb,var(--color-white) 57%,transparent));-webkit-backdrop-filter:blur(26px) saturate(115%);backdrop-filter:blur(26px) saturate(115%)}
#biography .biography-links{gap:12px;margin-top:22px;padding-top:0}
#biography .biography-links a{display:inline-flex;align-items:center;justify-content:space-between;gap:22px;min-height:44px;padding:11px 16px;text-decoration:none;border:1px solid color-mix(in srgb,var(--color-white) 80%,transparent);border-radius:999px;background:color-mix(in srgb,var(--color-white) 44%,transparent);box-shadow:inset 0 1px 0 color-mix(in srgb,var(--color-white) 85%,transparent),0 2px 8px color-mix(in srgb,var(--color-ink) 4%,transparent);font:500 11px/1.5 var(--font-body)}
#biography .biography-links a::after{display:none}#biography .biography-links .arrow{border:0;text-decoration:none}
#biography .biography-links a:hover{background:color-mix(in srgb,var(--color-white) 75%,transparent)}
#triple-ivy{background:radial-gradient(ellipse at 8% 38%,color-mix(in srgb,var(--color-olive) 10%,transparent),transparent 55%),radial-gradient(ellipse at 100% 80%,color-mix(in srgb,var(--color-hairline) 35%,transparent),transparent 58%),var(--color-white)}
#speaking{background:radial-gradient(ellipse at 95% 55%,color-mix(in srgb,var(--color-olive) 11%,transparent),transparent 60%),radial-gradient(ellipse at 0% 95%,color-mix(in srgb,var(--color-hairline) 35%,transparent),transparent 58%),var(--color-white)}
#triple-ivy>.section-body,#speaking>.section-body{background:none}
.consulting-disclosures{display:grid;gap:14px;overflow:visible;border:0;background:none;box-shadow:none;border-radius:0}
.consulting-disclosures>details,
.consulting-faq,
.cv-section>.container,
.shop-preview>.container{background:var(--glass-surface);border:1px solid var(--glass-edge);border-radius:24px;box-shadow:var(--glass-shadow);-webkit-backdrop-filter:blur(26px) saturate(135%);backdrop-filter:blur(26px) saturate(135%)}
.consulting-disclosures>.service-details,.consulting-disclosures>.experience-details{border:1px solid var(--glass-edge);border-radius:22px;overflow:hidden}
.consulting-disclosures>details>summary{background:transparent;padding:26px 30px}
.consulting-disclosures>details[open]>summary,.consulting-disclosures>details>summary:hover{background:color-mix(in srgb,var(--color-white) 28%,transparent)}
.consulting-disclosures .service-catalog,.consulting-disclosures .consulting-history{background:transparent}
.consulting-faq{padding:36px 40px;gap:48px}.consulting-faq .faq-intro{border:0;padding-top:14px}.consulting-faq .faq-questions>details:first-child{border-top:0}
.cv-section{background:radial-gradient(ellipse at 8% 35%,color-mix(in srgb,var(--color-olive) 12%,transparent),transparent 56%),linear-gradient(135deg,var(--color-cream),var(--color-white));border-top:1px solid var(--glass-edge)}
.cv-section>.container{padding:44px 48px}.cv-tools{border-radius:16px;padding:20px;background:color-mix(in srgb,var(--color-white) 28%,transparent);border:1px solid var(--glass-edge)}.cv-filter{border-radius:999px}.cv-search input{border-radius:10px;background:color-mix(in srgb,var(--color-white) 55%,transparent)}.cv-entry{border-color:color-mix(in srgb,var(--color-olive) 17%,transparent)}
.shop-preview{padding-block:64px 48px;border:0;background:radial-gradient(ellipse at 90% 30%,color-mix(in srgb,var(--color-olive) 11%,transparent),transparent 52%),linear-gradient(135deg,var(--color-white),var(--color-cream))}.shop-preview>.container{padding:40px 36px 24px;border-radius:28px}.shop-preview-heading{margin-bottom:32px}.preview-piece-image{border:1px solid var(--glass-edge);border-radius:18px;box-shadow:inset 0 1px 0 var(--color-white)}.preview-piece-info{padding-inline:4px}.shop-preview-track{padding-bottom:14px}.shop-preview-bottom{border-top:1px solid color-mix(in srgb,var(--color-olive) 12%,transparent);margin-top:10px;padding-top:20px}.carousel-controls button{background:color-mix(in srgb,var(--color-white) 35%,transparent);border-color:var(--glass-edge)}
.site-footer{background:var(--glass-surface);border-top:1px solid var(--glass-edge);box-shadow:inset 0 1px 0 var(--color-white),0 -12px 40px color-mix(in srgb,var(--color-ink) 3%,transparent);-webkit-backdrop-filter:blur(26px) saturate(135%);backdrop-filter:blur(26px) saturate(135%);padding-block:44px 24px}.footer-brand .footer-name{font-size:28px}.footer-top{gap:32px;padding-bottom:28px}.footer-nav{gap:22px}.footer-return span{background:color-mix(in srgb,var(--color-white) 48%,transparent);border-color:var(--glass-edge);box-shadow:var(--glass-shadow)}.footer-bottom{border-color:color-mix(in srgb,var(--color-olive) 15%,transparent)}.footer-policy-nav{padding-top:16px;gap:24px}.footer-policy-nav a{min-height:32px;display:inline-flex;align-items:center}
@media(max-width:1100px){.cv-section>.container{padding:36px}.shop-preview>.container{padding:32px 28px 24px}.consulting-faq{padding:30px;gap:30px}}
@media(max-width:800px){.hero-portrait figcaption{left:12px;bottom:12px;max-width:calc(100% - 24px);padding:12px 14px;font-size:21px}.hero-portrait figcaption span{font-size:7px}.cv-tools{padding:18px}.cv-section>.container{padding:28px}.consulting-faq .faq-intro{padding-top:0}.shop-preview-heading{gap:24px}.preview-piece h3{font-size:24px}}
@media(max-width:600px){.hero-portrait figcaption{left:14px;bottom:14px;max-width:calc(100% - 28px);padding:13px 16px;font-size:22px}.hero-portrait figcaption span{font-size:7px}#biography .biography-links{display:flex;flex-wrap:wrap;gap:10px}#biography .biography-links a{font-size:10px;padding:10px 13px;gap:14px}.consulting-disclosures>details>summary{padding:22px 20px;gap:16px}.consulting-faq{padding:26px 22px;border-radius:22px;gap:20px}.cv-section>.container{padding:28px 22px;border-radius:24px}.cv-heading-copy h2{font-size:40px}.cv-tools{padding:16px 12px;gap:20px}.cv-filters{gap:4px}.cv-filter{padding-inline:10px}.cv-entry h3{font-size:25px}.shop-preview{padding-block:40px 32px}.shop-preview>.container{padding:28px 20px 22px;border-radius:24px}.shop-preview-track{margin-right:-20px;padding-right:20px;gap:16px}.preview-piece{flex-basis:88%}.preview-piece-image{border-radius:14px}.shop-preview-heading h2{font-size:44px}.shop-preview-bottom{gap:10px}.shop-preview-bottom>p{font-size:9px;max-width:130px}.carousel-controls>span{display:none}.site-footer{padding-top:32px}.footer-brand .footer-name{font-size:26px}.footer-top{gap:22px}.footer-nav{gap:12px 24px}.footer-top>.footer-return{padding-top:18px}.footer-policy-nav{gap:8px 22px}}
@media(max-width:360px){.hero-portrait figcaption{font-size:19px;padding:12px 14px}.cv-section>.container{padding:24px 18px}.cv-heading-copy h2{font-size:35px}.consulting-faq{padding:24px 18px}.shop-preview>.container{padding-inline:16px}.shop-preview-track{margin-right:-16px;padding-right:16px}.preview-piece h3{font-size:23px}.footer-brand .footer-name{font-size:23px}.carousel-controls button{width:38px;height:38px}}
@media(prefers-reduced-transparency:reduce),(prefers-contrast:more){#biography .biography-story,.consulting-disclosures>details,.consulting-faq,.cv-section>.container,.shop-preview>.container,.site-footer{background:var(--color-white);-webkit-backdrop-filter:none;backdrop-filter:none;border-color:var(--color-hairline)}}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){#biography .biography-story,.consulting-disclosures>details,.consulting-faq,.cv-section>.container,.shop-preview>.container,.site-footer{background:var(--color-white)}}
@media print{.hero-portrait figcaption{position:static;max-width:none;width:auto}.consulting-disclosures>details,.consulting-faq,.cv-section>.container,.shop-preview>.container,.site-footer{background:var(--color-white);box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}}

/* A continuous glass portrait frame. */
.hero-portrait{padding:12px 12px 0;background:var(--glass-surface);border:1px solid var(--glass-edge);border-radius:28px;box-shadow:var(--glass-shadow);-webkit-backdrop-filter:blur(26px) saturate(135%);backdrop-filter:blur(26px) saturate(135%);overflow:hidden}
.hero-portrait>img{border-radius:18px;box-shadow:none;width:100%}
.hero-portrait figcaption{position:static;width:auto;max-width:none;margin:0;padding:20px 16px 22px;border:0;border-radius:0;background:none;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;font-size:27px}
.hero-portrait figcaption span{font-size:8px;letter-spacing:.13em;margin-top:7px}
/* Three chronological milestones, read from left to right. */
#biography .education-path{margin-top:24px;padding-top:18px}
#biography .education-path ol{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin-top:18px}
#biography .education-path li{position:relative;display:block;padding:18px 16px 0 0;border:0;border-top:1px solid color-mix(in srgb,var(--color-olive) 28%,transparent);min-width:0}
#biography .education-path li:last-child{padding-right:0}
#biography .education-path li::before{display:block;content:"";position:absolute;left:0;top:-4px;width:7px;height:7px;border:2px solid var(--color-white);background:var(--color-olive);border-radius:50%;box-shadow:0 0 0 1px color-mix(in srgb,var(--color-olive) 26%,transparent)}
#biography .education-year{display:block;font:500 10px/1.5 var(--font-body);margin-bottom:6px}
#biography .education-path h4{font-size:25px;margin-bottom:8px;white-space:normal}
#biography .education-qualification{grid-column:auto}
#biography .education-path p{font-size:11px;line-height:1.5}
#biography .education-detail{display:block;font-size:10px;line-height:1.5;margin-top:5px}
/* Optically centered plus/minus controls; the whole summary stays clickable. */
.testimonial-toggle>span:last-child{position:relative;flex:0 0 38px;width:38px;height:38px;border-radius:50%;font-size:0!important;background:color-mix(in srgb,var(--color-white) 65%,transparent);border:1px solid var(--glass-edge);box-shadow:inset 0 1px 0 var(--color-white),0 3px 9px color-mix(in srgb,var(--color-ink) 9%,transparent);transform:none!important;transition:background 180ms,box-shadow 180ms}
.testimonial-toggle>span:last-child::before,.testimonial-toggle>span:last-child::after{content:"";position:absolute;left:50%;top:50%;width:12px;height:1.5px;background:var(--color-olive);transform:translate(-50%,-50%);border-radius:2px}
.testimonial-toggle>span:last-child::after{transform:translate(-50%,-50%) rotate(90deg);transition:transform 180ms}
.testimonial-story[open] .testimonial-toggle>span:last-child::after{transform:translate(-50%,-50%) rotate(0)}
.testimonial-story summary:hover .testimonial-toggle>span:last-child{background:var(--color-white);box-shadow:inset 0 1px 0 var(--color-white),0 4px 12px color-mix(in srgb,var(--color-ink) 14%,transparent)}
/* Recorded conversations: one player, four deliberate selections. */
.speaking-feature.media-library{display:block;padding:40px;margin-top:48px}
.media-library-heading{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:30px}
.media-library-heading h3{font:500 clamp(32px,3vw,44px)/1.08 var(--font-display);max-width:24ch;letter-spacing:-.02em}
.media-library-heading .eyebrow{margin-bottom:14px}.media-library-count{font:500 10px/1.5 var(--font-body);color:var(--color-olive);white-space:nowrap;padding-bottom:4px}
.media-viewer{display:grid;grid-template-columns:1.2fr 1fr;gap:40px;align-items:center}
.media-library .video-frame{aspect-ratio:16/10;border:1px solid var(--glass-edge);border-radius:18px}
.media-library .video-frame button{background:linear-gradient(145deg,var(--color-olive),var(--color-ink));border:0;color:var(--color-white)}
.media-library .video-frame img{opacity:1;object-position:center 29%}
.media-library .play-disc{position:absolute;left:24px;top:auto;bottom:24px;transform:none;width:48px;height:48px;font-size:14px;color:var(--color-ink);background:color-mix(in srgb,var(--color-white) 88%,transparent);border:1px solid var(--color-white);box-shadow:0 0 0 5px color-mix(in srgb,var(--color-white) 24%,transparent);z-index:2}
.media-library .video-caption{padding:32px 24px 38px 92px;text-align:left;font-size:11px;line-height:20px;background:linear-gradient(transparent,color-mix(in srgb,var(--color-ink) 90%,transparent));color:var(--color-white)}
.media-library .interview-copy{min-width:0}.media-library .interview-copy>.eyebrow{margin:0 0 8px}.media-library .interview-copy .media-meta{font-size:11px;margin:0 0 18px;color:var(--color-olive)}
.media-library .interview-copy h3{font:500 clamp(29px,2.5vw,38px)/1.1 var(--font-display);letter-spacing:-.015em;margin:0 0 16px}
.media-library .interview-copy>p:not(.eyebrow):not(.media-meta){font-size:13px;line-height:1.75;max-width:45ch}
.media-actions{display:flex;align-items:center;flex-wrap:wrap;gap:14px 20px;margin-top:24px}.media-actions .button{border-radius:999px;min-height:44px;padding:12px 18px;font-size:11px;gap:20px}.media-actions .text-link{font-size:11px;margin:0}
.media-source{display:inline-flex;align-items:center;gap:8px;font-size:10px;text-decoration:underline;text-underline-offset:4px;margin-top:16px;min-height:32px}
.media-playback-note{margin-top:12px;color:var(--color-olive)}
.media-selection-heading{display:flex;justify-content:space-between;gap:16px;align-items:baseline;margin:32px 0 16px;border-top:1px solid color-mix(in srgb,var(--color-olive) 15%,transparent);padding-top:24px}
.media-selection-heading h3{font:500 12px/1.5 var(--font-body)}.media-library .media-selection-heading p{font-size:10px;color:var(--color-olive)}
.media-selection{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.media-choice{display:flex;flex-direction:column;align-items:stretch;text-align:left;padding:18px 16px;border-radius:16px;border:1px solid var(--glass-edge);background:color-mix(in srgb,var(--color-white) 28%,transparent);box-shadow:inset 0 1px 0 var(--color-white);color:var(--color-ink);transition:background 180ms,box-shadow 180ms}
.media-choice[aria-pressed=true]{background:color-mix(in srgb,var(--color-white) 86%,transparent);border-color:color-mix(in srgb,var(--color-olive) 45%,transparent);box-shadow:inset 0 1px 0 var(--color-white),0 5px 16px color-mix(in srgb,var(--color-ink) 7%,transparent)}
.media-choice-top{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:9px;line-height:1.5;color:var(--color-olive);margin-bottom:14px}.media-choice-icon{display:grid;place-items:center;width:24px;height:24px;flex-shrink:0;border-radius:50%;background:color-mix(in srgb,var(--color-white) 70%,transparent);font-size:8px}.media-choice[aria-pressed=true] .media-choice-icon{background:var(--color-olive);color:var(--color-white)}
.media-choice strong{font:500 22px/1.12 var(--font-display);margin-bottom:12px}.media-choice-host{font-size:10px;line-height:1.6;margin-top:auto}.media-choice-time{font-size:9px;color:var(--color-olive);margin-top:5px}
.media-slate{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;text-align:left;width:100%;height:100%;padding:32px 32px 104px;background:radial-gradient(ellipse at 5% 0%,color-mix(in srgb,var(--color-white) 17%,transparent),transparent 70%)}
.media-slate>span{font:500 10px/1.5 var(--font-body);letter-spacing:.12em;text-transform:uppercase;opacity:.85;margin-bottom:20px}.media-slate strong{font:400 clamp(30px,3vw,42px)/1.1 var(--font-display);max-width:16ch}
/* One centered contact surface, with no nested panel. */
#contact .contact-card{display:block;max-width:850px;padding:48px 64px;border:1px solid var(--glass-edge);border-radius:32px;background:var(--glass-surface);box-shadow:var(--glass-shadow);-webkit-backdrop-filter:blur(26px) saturate(135%);backdrop-filter:blur(26px) saturate(135%)}
.contact-card .contact-copy{text-align:center}.contact-card .contact-copy h2{font-size:clamp(38px,4vw,52px);margin:18px auto 16px;max-width:18ch}.contact-card .contact-copy>p:not(.eyebrow){font-size:14px;max-width:46ch;margin-inline:auto}
.contact-card .contact-email{display:inline-flex;align-items:center;gap:10px;padding:10px 16px;min-height:44px;border-radius:999px;border:1px solid var(--glass-edge);background:color-mix(in srgb,var(--color-white) 50%,transparent);box-shadow:inset 0 1px 0 var(--color-white);font-size:12px;margin-top:20px;text-decoration:none}
.contact-card .inquiry-panel{padding:28px 0 0;margin-top:28px;border:0;border-top:1px solid color-mix(in srgb,var(--color-olive) 15%,transparent);border-radius:0;background:none;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}
.contact-card .inquiry-panel>.inquiry-intro{margin:0;text-align:center;font-size:12px}.contact-card .inquiry-panel form{margin-top:24px}.contact-card .form-row{grid-template-columns:1fr 1fr;gap:18px}.contact-card .inquiry-panel textarea{min-height:130px}.contact-card .inquiry-panel button[type=submit]{border-radius:999px;min-height:50px}.contact-card .form-note{text-align:center;font-size:10px;line-height:1.7}
/* A floating, quiet footer with a cohesive perimeter. */
.site-footer{padding:8px 0 24px;border:0;background:linear-gradient(var(--color-white),var(--color-cream));box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}
.footer-shell{padding:32px 36px 22px;border:1px solid var(--glass-edge);border-radius:28px;background:var(--glass-surface);box-shadow:var(--glass-shadow);-webkit-backdrop-filter:blur(26px) saturate(135%);backdrop-filter:blur(26px) saturate(135%)}
.footer-top{padding-bottom:24px;gap:24px}.footer-brand{gap:16px}.footer-brand img{width:38px;height:48px}.footer-brand .footer-name{font-size:26px}.footer-descriptor{font-size:9px;letter-spacing:.015em}.footer-nav{gap:6px}.footer-nav a{padding:10px 12px;min-height:40px;border-radius:999px;font-size:10px}.footer-nav a:hover{background:color-mix(in srgb,var(--color-white) 70%,transparent)}.footer-return{gap:10px;white-space:nowrap}.footer-return span{width:38px;height:38px}.footer-bottom{padding-top:18px;font-size:9px;line-height:1.7}.footer-policy-nav{gap:24px;padding-top:10px}.footer-policy-nav a{font-size:9px;min-height:36px}
/* Glass inside the consulting disclosures. */
.consulting-disclosures .service-catalog{padding:0 24px 24px;gap:12px;background:none}
.consulting-disclosures .service-catalog>.service-detail{border:1px solid var(--glass-edge);border-radius:18px;background:linear-gradient(130deg,color-mix(in srgb,var(--color-white) 64%,transparent),color-mix(in srgb,var(--color-white) 24%,transparent));box-shadow:inset 0 1px 0 var(--color-white),0 4px 14px color-mix(in srgb,var(--color-ink) 4%,transparent);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);overflow:hidden}
.consulting-disclosures .service-catalog .service-detail>summary{padding:20px;min-height:86px;border:0;gap:14px;background:none;font-size:13px}
.consulting-disclosures .service-detail .catalog-number{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:color-mix(in srgb,var(--color-white) 55%,transparent);border:1px solid var(--glass-edge);font-size:9px}
.consulting-disclosures .service-detail .disclosure-icon{width:30px;height:30px;flex:0 0 30px;border-radius:50%;border:1px solid var(--glass-edge);background:color-mix(in srgb,var(--color-white) 55%,transparent);box-shadow:0 2px 5px color-mix(in srgb,var(--color-ink) 4%,transparent)}
.consulting-disclosures .service-catalog>.service-detail[open]{background:color-mix(in srgb,var(--color-white) 68%,transparent)}
.consulting-disclosures .service-detail-content{padding:0 24px 24px;border:0;font-size:13px;line-height:1.85}
.consulting-disclosures .experience-catalog{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:12px;padding:0 24px 24px;columns:auto}
.consulting-disclosures .experience-catalog .service-detail{grid-column:auto}
.consulting-disclosures .experience-catalog .service-detail>summary{min-height:112px;grid-template-columns:26px 1fr 30px}
/* CV: full-width segmented filters and a vertical chronological spine. */
#cv .cv-tools{display:block;margin-block:30px 36px;padding:6px;border:1px solid var(--glass-edge);border-radius:999px;background:color-mix(in srgb,var(--color-white) 35%,transparent);box-shadow:inset 0 1px 0 var(--color-white),inset 0 -1px 3px color-mix(in srgb,var(--color-ink) 4%,transparent)}
#cv .cv-filters{display:grid;grid-template-columns:1fr 1fr 1fr 1.4fr 1fr;gap:6px;width:100%}
#cv .cv-filter{min-height:48px;border:1px solid transparent;border-radius:999px;font-size:11px;padding:12px 8px;text-align:center;background:transparent;transition:background 180ms,box-shadow 180ms}
#cv .cv-filter.is-active{background:var(--color-olive);color:var(--color-white);border-color:color-mix(in srgb,var(--color-white) 70%,transparent);box-shadow:inset 0 1px 0 color-mix(in srgb,var(--color-white) 20%,transparent),0 3px 10px color-mix(in srgb,var(--color-ink) 14%,transparent)}
#cv .cv-filter:not(.is-active):hover{background:color-mix(in srgb,var(--color-white) 65%,transparent)}
#cv .cv-list{border:0;position:relative;padding:0}
#cv .cv-entry{position:relative;grid-template-columns:100px minmax(0,1fr);gap:32px;padding:0 0 20px;border:0}
#cv .cv-entry::before{content:"";position:absolute;left:112px;top:24px;bottom:-24px;width:1px;background:color-mix(in srgb,var(--color-olive) 26%,transparent)}
#cv .cv-entry:last-child::before{bottom:24px}
#cv .cv-year{font-size:11px;line-height:1.5;padding-top:27px}
#cv .cv-entry>div:last-child{position:relative;padding:24px 28px;background:color-mix(in srgb,var(--color-white) 40%,transparent);border:1px solid var(--glass-edge);border-radius:18px;box-shadow:inset 0 1px 0 var(--color-white),0 3px 10px color-mix(in srgb,var(--color-ink) 3%,transparent)}
#cv .cv-entry>div:last-child::before{content:"";position:absolute;left:-26px;top:29px;width:9px;height:9px;border-radius:50%;border:2px solid var(--color-white);background:var(--color-olive);box-shadow:0 0 0 1px color-mix(in srgb,var(--color-olive) 28%,transparent)}
#cv .cv-entry h3{font-size:29px;line-height:1.2;margin-top:5px}#cv .cv-entry p{font-size:12px;line-height:1.7;margin-top:8px}
#cv .cv-downloads{gap:10px;min-width:215px}#cv .cv-downloads>a{display:flex;align-items:center;justify-content:space-between;gap:24px;width:100%;min-height:46px;padding:12px 18px;border:1px solid var(--glass-edge);border-radius:999px;background:color-mix(in srgb,var(--color-white) 55%,transparent);box-shadow:inset 0 1px 0 var(--color-white),0 3px 10px color-mix(in srgb,var(--color-ink) 4%,transparent);text-decoration:none;font-size:11px}
#cv .cv-downloads>a::after{display:none}#cv .cv-downloads>a:hover{background:var(--color-white)}#cv .cv-downloads .arrow{border:0}
@media(max-width:1100px){.media-viewer{gap:28px}.media-selection{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-top{flex-wrap:wrap}.footer-nav{margin-left:auto}.consulting-disclosures .experience-catalog{grid-template-columns:1fr}.consulting-disclosures .experience-catalog .service-detail>summary{min-height:80px}#biography .education-path h4{font-size:23px}}
@media(max-width:760px){.media-viewer{grid-template-columns:1fr}.media-library-heading{display:block}.media-library-count{display:block;margin-top:14px}.speaking-feature.media-library{padding:28px}.media-library .interview-copy>p:not(.eyebrow):not(.media-meta){max-width:none}.media-library .video-frame{aspect-ratio:16/10}.media-slate strong{font-size:38px}#contact .contact-card{padding:36px}.footer-top{display:grid;grid-template-columns:1fr auto}.footer-brand{grid-column:1/-1}.footer-nav{margin:0;flex-wrap:wrap;gap:0}.footer-top>.footer-return{padding:0;margin:0}.footer-nav a{padding-left:0;padding-right:18px}.footer-bottom{flex-direction:column;gap:8px}#cv .cv-filter{font-size:10px}}
@media(max-width:520px){.hero-portrait{padding:10px 10px 0;border-radius:24px}.hero-portrait>img{border-radius:15px}.hero-portrait figcaption{padding:18px 12px 20px;font-size:25px}#biography .education-path h4{font-size:21px}#biography .education-path li{padding-right:10px}#biography .education-detail{font-size:9px}#biography .education-path p{font-size:10px}.speaking-feature.media-library{padding:24px 20px}.media-library-heading h3{font-size:34px}.media-library .video-frame{aspect-ratio:4/3}.media-slate{padding:24px 24px 94px}.media-slate strong{font-size:31px}.media-selection{gap:10px}.media-choice{padding:14px 12px}.media-choice strong{font-size:21px}.media-choice-top{font-size:8px;gap:4px}.media-choice-host{font-size:9px}.media-choice-icon{width:20px;height:20px}.media-selection-heading{align-items:center}.media-selection-heading p{max-width:10ch;text-align:right}.media-library .play-disc{left:20px;width:42px;height:42px}.media-library .video-caption{padding-left:80px;font-size:10px}#contact .contact-card{padding:32px 24px;border-radius:26px}.contact-card .contact-copy h2{font-size:39px}.contact-card .contact-copy>p:not(.eyebrow){font-size:13px}.contact-card .form-row{grid-template-columns:1fr;gap:22px}.contact-card .inquiry-panel{margin-top:24px;padding-top:22px}.footer-shell{padding:26px 22px 18px;border-radius:24px}.footer-top{grid-template-columns:1fr;gap:18px}.footer-brand .footer-name{font-size:24px}.footer-brand{gap:12px}.footer-top>.footer-return{justify-self:start}.footer-policy-nav{gap:0 18px;flex-wrap:wrap}.consulting-disclosures .service-catalog,.consulting-disclosures .experience-catalog{grid-template-columns:1fr;padding:0 16px 16px}.consulting-disclosures .service-catalog .service-detail>summary{padding:18px 14px;gap:10px;min-height:78px;font-size:12px}.consulting-disclosures .service-detail-content{padding:0 18px 20px;font-size:12px}#cv .cv-tools{border-radius:22px;margin-block:24px 28px}#cv .cv-filters{grid-template-columns:repeat(2,minmax(0,1fr));gap:4px}#cv .cv-filter{min-height:42px}#cv .cv-filter:first-child{grid-column:1/-1}#cv .cv-downloads{width:100%;min-width:0}#cv .cv-entry{grid-template-columns:1fr;padding:0 0 18px 22px;gap:8px}#cv .cv-entry::before{left:3px;top:12px;bottom:-12px}#cv .cv-year{padding:0;font-size:10px}#cv .cv-entry>div:last-child{padding:18px}#cv .cv-entry>div:last-child::before{left:-25px;top:-19px}#cv .cv-entry h3{font-size:25px}#cv .cv-entry p{font-size:11px}#cv .cv-entry:last-child::before{bottom:18px}}
@media(max-width:360px){#biography .education-path h4{font-size:18px}.media-choice strong{font-size:19px}.media-choice-top{font-size:7px}.hero-portrait figcaption{font-size:23px}}
@media(prefers-reduced-transparency:reduce),(prefers-contrast:more){.hero-portrait,#contact .contact-card,.footer-shell,.consulting-disclosures .service-catalog>.service-detail{background:var(--color-white);backdrop-filter:none;-webkit-backdrop-filter:none}.media-choice,#cv .cv-entry>div:last-child{background:var(--color-white)}}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){.hero-portrait,#contact .contact-card,.footer-shell,.consulting-disclosures .service-catalog>.service-detail{background:var(--color-white)}}
@media(prefers-reduced-motion:reduce){.media-choice,.testimonial-toggle>span:last-child,.testimonial-toggle>span:last-child::after,#cv .cv-filter{transition:none}}
@media print{.hero-portrait,#contact .contact-card,.footer-shell,.consulting-disclosures .service-catalog>.service-detail{background:var(--color-white);box-shadow:none;backdrop-filter:none}.media-library{display:none}#cv .cv-entry::before,#cv .cv-entry>div:last-child::before{display:none}#cv .cv-entry>div:last-child{box-shadow:none}}
.media-library .visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}

.media-library .video-frame .video-caption{left:0;right:0;bottom:0;padding:32px 24px 38px 92px;white-space:nowrap}
#cv .cv-entry>div:last-child::before{display:block}
.consulting-disclosures .service-detail .catalog-number{flex:0 0 26px}
@media(max-width:520px){.media-library .video-frame .video-caption{padding:32px 18px 35px 80px;font-size:10px}}
@media print{#cv .cv-entry>div:last-child::before{display:none}}

/* Keep catalog expand controls circular and their glyphs centered. */
.consulting-disclosures .service-detail .disclosure-icon::before,.consulting-disclosures .service-detail .disclosure-icon::after{left:calc(50% - 5px);right:auto;top:calc(50% - .5px);width:10px}

/* Editorial glass refinement: quieter hierarchy, consistent spacing and imagery. */
.hero{padding-top:56px;background:radial-gradient(ellipse at 95% 35%,color-mix(in srgb,var(--color-olive) 5%,transparent),transparent 50%),var(--color-white)}
.hero-grid{grid-template-columns:1.2fr .85fr;gap:clamp(40px,6vw,88px)}
.hero-band{border:0;border-radius:28px;background:transparent}
.hero-copy{padding-block:12px;max-width:710px}
.hero h1{font-size:clamp(46px,4.7vw,70px);line-height:1.05;letter-spacing:-.035em}
.hero h1 .hero-emphasis{font-family:var(--font-display);font-style:italic;font-weight:400;letter-spacing:-.035em;color:var(--color-olive);padding-bottom:.08em}
.hero-eyebrow{font-size:9px;letter-spacing:.13em;gap:12px;margin-bottom:28px}
.hero-subline{font-size:15px;line-height:1.85;max-width:43ch;margin-top:24px}.hero-affiliation{font-size:11px;margin-top:12px}
.hero-actions{display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;gap:12px;margin-top:28px}
.hero-actions .button{border-radius:999px;padding:13px 20px;min-height:48px;box-shadow:inset 0 1px 0 var(--glass-edge),0 4px 12px color-mix(in srgb,var(--color-ink) 4%,transparent);border-color:var(--glass-edge);background:color-mix(in srgb,var(--color-white) 70%,transparent)}
.hero-actions .button.primary{background:var(--color-olive);color:var(--color-white);border-color:var(--color-olive)}.hero-actions .button.primary::before{background:var(--color-ink)}
.hero-copy .credentials{display:flex;gap:0;width:max-content;max-width:100%;border:0;margin-top:26px;padding-top:0;font-size:8px;color:var(--color-olive)}
.hero-footer{border-color:color-mix(in srgb,var(--color-olive) 14%,transparent);margin-top:36px}
/* Compact, identifiable profile previews in the biography card. */
.biography-socials{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:26px;padding-top:22px;border-top:1px solid color-mix(in srgb,var(--color-white) 45%,transparent)}
.social-tile{display:flex;align-items:center;gap:12px;padding:10px 14px 10px 10px;border:1px solid var(--glass-edge);border-radius:18px;text-decoration:none;background:color-mix(in srgb,var(--color-white) 36%,transparent);box-shadow:inset 0 1px 0 var(--color-white),0 3px 10px color-mix(in srgb,var(--color-ink) 4%,transparent);transition:background 180ms,transform 180ms}
.social-thumbnail{position:relative;display:block;width:48px;height:48px;flex:0 0 48px;border-radius:12px;background:var(--color-white)}.social-thumbnail>img{width:100%;height:100%;object-fit:cover;object-position:center 30%;border-radius:12px}.social-thumbnail-brand>img{object-fit:contain;padding:6px}.social-monogram{position:absolute;right:-3px;bottom:-3px;display:grid;place-items:center;background:var(--color-olive);color:var(--color-white);width:20px;height:20px;border:2px solid var(--color-white);border-radius:6px;font:600 11px/1 var(--font-body)}
.social-tile-copy{display:flex;flex-direction:column;gap:4px;min-width:0}.social-tile-copy strong{font:500 12px/1.4 var(--font-body)}.social-tile-copy>span{font-size:9px;line-height:1.5;color:var(--color-olive)}.social-arrow{margin-left:auto;font-size:13px;color:var(--color-olive)}.social-tile:hover{background:color-mix(in srgb,var(--color-white) 70%,transparent);transform:translateY(-2px)}
/* One composed book display, with the controls directly beneath the object. */
#book{padding-block:72px;background:radial-gradient(ellipse at 15% 45%,color-mix(in srgb,var(--color-olive) 9%,transparent),transparent 55%),var(--color-cream)}
#book .book-grid{grid-template-columns:.95fr 1.05fr;gap:0;padding:40px;border:1px solid var(--glass-edge);border-radius:32px;background:var(--glass-surface);box-shadow:var(--glass-shadow);backdrop-filter:blur(26px) saturate(125%);-webkit-backdrop-filter:blur(26px) saturate(125%);align-items:center}
#book .book-showcase{padding:0 40px 0 0;margin:0;border:0;border-radius:0;background:none;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}
#book .book-showcase>.eyebrow{border:0;background:none;padding:0;margin:0 auto 4px;font-size:9px;letter-spacing:.15em}
#book .book-stage{min-height:430px;padding:26px 30px 36px}#book .book-model{width:clamp(210px,21vw,275px)}
#book .book-view-controls{margin-top:4px;border-radius:999px;padding:4px;background:color-mix(in srgb,var(--color-white) 42%,transparent);gap:2px;flex-wrap:nowrap}
#book .book-view-controls button{font-size:10px;padding:9px 13px;min-height:38px}#book #book-enlarge{gap:8px}
#book .book-copy{padding:12px 0 12px 40px;border-left:1px solid color-mix(in srgb,var(--color-olive) 14%,transparent);max-width:none}
#book .book-copy h2{font-size:clamp(44px,4.4vw,64px);line-height:1.02;letter-spacing:-.035em;margin:20px 0 16px}
#book .book-copy .book-publisher{font-size:9px;letter-spacing:.06em;margin:0}
#book .book-subtitle{font-size:15px;line-height:1.65;max-width:35ch}
#book .book-introduction{font-size:13px;line-height:1.85;max-width:49ch;margin-top:24px}
#book .book-introduction strong{font-weight:500;margin-bottom:8px}
#book .book-purchase{display:flex;flex-direction:column;align-items:flex-start;gap:16px;margin-top:24px;padding-top:0;border:0}
#book .book-edition{order:-1;font-size:10px;color:var(--color-olive)}
#book .book-purchase .button{width:auto;min-height:48px;border-radius:999px;padding:13px 22px;background:var(--color-olive);color:var(--color-white);border-color:var(--color-olive);font-size:11px;gap:28px}
#book .book-purchase .button::before{background:var(--color-ink)}
#book .book-story{margin-top:24px;border-top:1px solid color-mix(in srgb,var(--color-olive) 15%,transparent)}#book .book-story>summary{padding:18px 0;min-height:58px;font-size:11px}#book .book-story>summary>span:last-child{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;border:1px solid var(--glass-edge);background:color-mix(in srgb,var(--color-white) 70%,transparent);box-shadow:0 3px 8px color-mix(in srgb,var(--color-ink) 5%,transparent)}
#book #praise{margin-top:24px;padding:28px 40px;border-radius:28px}
/* Clear glass copy panels on the photographic section openings. */
.section-image-hero .section-hero-copy{width:55%;max-width:650px;padding:38px 40px;border:1px solid var(--glass-edge);border-radius:28px;background:linear-gradient(130deg,color-mix(in srgb,var(--color-white) 83%,transparent),color-mix(in srgb,var(--color-white) 60%,transparent));box-shadow:var(--glass-shadow);backdrop-filter:blur(24px) saturate(115%);-webkit-backdrop-filter:blur(24px) saturate(115%);color:var(--color-ink)}
.section-image-hero .section-hero-copy h2{font-size:clamp(40px,4.4vw,62px);color:var(--color-ink);line-height:1.05;letter-spacing:-.03em}
.section-image-hero .section-hero-copy>.eyebrow{font-size:9px;line-height:1.8;color:var(--color-olive);margin-bottom:20px}
.section-image-hero .section-hero-lead{font-size:14px;line-height:1.8;color:var(--color-ink);margin-top:20px}
.section-image-hero .section-hero-copy .button{border-radius:999px;margin-top:24px;background:color-mix(in srgb,var(--color-white) 70%,transparent);border-color:var(--glass-edge);min-height:46px;font-size:11px;box-shadow:inset 0 1px 0 var(--color-white),0 3px 10px color-mix(in srgb,var(--color-ink) 5%,transparent)}
.section-image-hero .section-hero-note{border-color:color-mix(in srgb,var(--color-olive) 18%,transparent);padding-top:16px;margin-top:24px}.section-image-hero .section-hero-note p,.section-image-hero .section-hero-note>span{color:var(--color-olive);font-size:10px}.section-image-hero .section-hero-motto{font-size:9px;letter-spacing:.1em;color:var(--color-olive);margin-top:16px}
.section-image-hero::after{background:linear-gradient(90deg,color-mix(in srgb,var(--color-ink) 12%,transparent),transparent 80%)}
.section-image-hero :focus-visible{outline-color:var(--color-ink)}
/* Illustrated media collection with matching selected-cover preview. */
.speaking-feature.media-library{padding:32px;border-radius:30px}
.media-library-heading{margin-bottom:26px;align-items:center}.media-library-heading h3{max-width:none;font-size:clamp(30px,3.2vw,44px)}.media-library-heading .eyebrow{font-size:9px;letter-spacing:.14em;margin-bottom:12px}
.media-viewer{grid-template-columns:1.35fr 1fr;gap:32px;padding:16px;background:color-mix(in srgb,var(--color-white) 26%,transparent);border:1px solid var(--glass-edge);border-radius:24px}
.media-library .video-frame{aspect-ratio:16/9;border-radius:16px;box-shadow:none}.media-library .video-frame img{object-fit:cover;object-position:center}
.media-library .interview-copy{padding:16px 16px 16px 0}.media-library .interview-copy h3{font-size:32px;line-height:1.07;margin-bottom:12px}.media-library .interview-copy>.eyebrow{font-size:9px}.media-library .interview-copy .media-meta{font-size:10px;margin-bottom:14px}.media-library .interview-copy>p:not(.eyebrow):not(.media-meta){font-size:12px;line-height:1.8}
.media-actions{margin-top:20px;gap:12px}.media-actions .button{padding:11px 16px;min-height:42px;font-size:10px}.media-actions .text-link{font-size:10px;gap:12px}.media-source{font-size:9px;margin-top:10px}
.media-selection-heading{padding-top:0;border:0;margin:24px 0 14px}.media-selection-heading h3{font-size:11px}.media-library .media-selection-heading p{font-size:9px}
.media-selection{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.media-choice{position:relative;padding:8px 8px 16px;border-radius:19px;overflow:hidden;background:color-mix(in srgb,var(--color-white) 35%,transparent)}
.media-choice-cover{display:block;aspect-ratio:16/9;overflow:hidden;border-radius:12px;margin-bottom:14px}.media-choice-cover img{width:100%;height:100%;object-fit:cover;transition:transform 350ms ease}
.media-choice-top{margin:0 8px 8px;font-size:8px}.media-choice-icon{width:22px;height:22px}.media-choice strong{font-size:22px;margin:0 8px 14px}.media-choice-host,.media-choice-time{margin-inline:8px}.media-choice-host{font-size:9px}.media-choice-time{font-size:8px;margin-top:5px}.media-choice:hover .media-choice-cover img{transform:scale(1.035)}
.media-choice[aria-pressed=true]{border-color:color-mix(in srgb,var(--color-olive) 50%,transparent);background:color-mix(in srgb,var(--color-white) 85%,transparent)}
#speaking .media-library .media-art-credit{font-size:9px;color:var(--color-olive);margin-top:14px;text-align:right}
/* A wider contact card with one continuous surface. */
#contact .contact-card{display:grid;grid-template-columns:.8fr 1.2fr;gap:48px;max-width:1160px;padding:44px 48px;align-items:center}
.contact-card .contact-copy{text-align:left}.contact-card .contact-copy h2{font-size:clamp(38px,4vw,54px);margin:20px 0 18px;max-width:13ch}.contact-card .contact-copy>p:not(.eyebrow){font-size:13px;margin-inline:0;max-width:33ch}.contact-card .contact-email{margin-top:22px;font-size:11px}
.contact-card .inquiry-panel{padding:0 0 0 40px;margin:0;border-top:0;border-left:1px solid color-mix(in srgb,var(--color-olive) 15%,transparent)}
.contact-card .inquiry-panel>.inquiry-intro{text-align:left;font-size:11px;max-width:43ch}.contact-card .inquiry-panel form{margin-top:20px}.contact-card .inquiry-panel label{font-size:11px;margin-top:16px}.contact-card .form-row label{margin-top:0}.contact-card .inquiry-panel input,.contact-card .inquiry-panel select{min-height:44px;padding:10px 12px;font-size:14px}.contact-card .inquiry-panel textarea{min-height:92px;height:92px;font-size:14px}.contact-card .inquiry-panel button[type=submit]{margin-top:18px;min-height:46px}.contact-card .form-note{text-align:left;font-size:9px;margin-top:12px}
/* A calmer retail shelf flowing into the footer on the same background. */
.shop-preview{padding-block:56px 24px;background:var(--color-cream)}
.shop-preview>.container{padding:36px 32px 24px;border-radius:30px;background:var(--glass-surface)}
.shop-preview-heading{align-items:center;gap:32px;margin-bottom:30px}.shop-preview-heading h2{font-size:clamp(38px,4vw,54px);line-height:1.04;letter-spacing:-.03em}.shop-preview-heading .eyebrow{font-size:9px;letter-spacing:.14em;margin-bottom:14px}.shop-preview-heading h2 br{display:none}.shop-preview-heading h2 em::before{content:' '}.shop-preview-intro{min-width:0;margin:0;max-width:none}
.shop-preview-intro .text-link{display:flex;align-items:center;gap:20px;border:1px solid var(--glass-edge);padding:12px 18px;border-radius:999px;min-height:44px;background:color-mix(in srgb,var(--color-white) 45%,transparent);box-shadow:inset 0 1px 0 var(--color-white);font-size:10px;text-decoration:none}.shop-preview-intro .text-link::after{display:none}
.shop-preview-track{gap:18px}.preview-piece{flex-basis:calc((100% - 54px)/4);padding:8px 8px 14px;border:1px solid var(--glass-edge);border-radius:20px;background:color-mix(in srgb,var(--color-white) 34%,transparent);box-shadow:inset 0 1px 0 var(--color-white)}.preview-piece-image{border:0;border-radius:13px;overflow:hidden}.preview-piece-info{padding:16px 6px 0;align-items:end;gap:8px}.preview-piece-info .eyebrow{font-size:8px;margin-bottom:7px}.preview-piece h3{font-size:23px;line-height:1.15}.preview-piece-info>span{font-size:10px;padding-bottom:2px}.shop-preview-bottom{margin-top:24px;padding-top:18px;border-color:color-mix(in srgb,var(--color-olive) 12%,transparent)}.shop-preview-bottom>p{font-size:9px}.carousel-controls button{width:38px;height:38px;min-height:38px;background:color-mix(in srgb,var(--color-white) 60%,transparent);border:1px solid var(--glass-edge);box-shadow:inset 0 1px 0 var(--color-white)}
.site-footer{background:var(--color-cream);padding-block:0 28px}.footer-shell{border-radius:28px;box-shadow:inset 0 1px 0 var(--color-white),0 8px 24px color-mix(in srgb,var(--color-ink) 5%,transparent)}
@media(max-width:1100px){#book .book-grid{padding:32px}#book .book-copy{padding-left:28px}#book .book-showcase{padding-right:28px}#book .book-stage{min-height:380px;padding-inline:18px}#book .book-model{width:225px}#book .book-copy h2{font-size:46px}.media-selection{grid-template-columns:repeat(2,minmax(0,1fr))}.media-viewer{grid-template-columns:1.15fr 1fr;gap:22px}.media-library .interview-copy h3{font-size:29px}.media-library .interview-copy{padding-right:0}#contact .contact-card{padding:36px;gap:28px}.contact-card .inquiry-panel{padding-left:28px}.preview-piece{flex-basis:calc((100% - 36px)/3)}.section-image-hero .section-hero-copy{width:64%;padding:32px}.section-image-hero .section-hero-copy h2{font-size:50px}}
@media(max-width:760px){.hero-grid{grid-template-columns:1fr .8fr;gap:28px}.hero h1{font-size:48px}.hero-eyebrow{font-size:8px}.hero-subline{font-size:13px}.hero-actions .button{font-size:10px;gap:12px;padding:11px 15px}.hero-actions{gap:8px}.hero-copy .credentials{font-size:7px}.biography-socials{gap:10px}.social-tile{padding:9px;gap:10px}.social-arrow{display:none}#book .book-grid{grid-template-columns:1fr;gap:32px;padding:28px}#book .book-showcase{padding:0}#book .book-stage{min-height:410px}#book .book-model{width:245px}#book .book-copy{border:0;border-top:1px solid color-mix(in srgb,var(--color-olive) 15%,transparent);padding:30px 0 0}#book .book-copy h2{font-size:52px}#book .book-copy{max-width:520px;margin-inline:auto}#book #praise{padding:28px}.media-viewer{grid-template-columns:1fr;gap:16px;padding:12px}.media-library .interview-copy{padding:8px 10px 12px}.media-library .video-frame{aspect-ratio:16/9}.speaking-feature.media-library{padding:26px}.section-image-hero .section-hero-copy{width:80%}#contact .contact-card{grid-template-columns:1fr;gap:26px;max-width:640px}.contact-card .contact-copy{text-align:center}.contact-card .contact-copy h2{max-width:none;font-size:42px;margin:16px 0}.contact-card .contact-copy>p:not(.eyebrow){margin-inline:auto;max-width:45ch}.contact-card .contact-email{margin-top:16px}.contact-card .inquiry-panel{border-left:0;border-top:1px solid color-mix(in srgb,var(--color-olive) 15%,transparent);padding:24px 0 0}.shop-preview-heading{align-items:start}.shop-preview-heading h2{font-size:42px}.shop-preview-heading h2 br{display:block}.shop-preview-heading h2 em::before{content:none}.preview-piece{flex-basis:calc((100% - 18px)/2)}}
@media(max-width:600px){.hero{padding-top:30px}.hero-grid{grid-template-columns:1fr;gap:28px}.hero h1{font-size:clamp(42px,11vw,60px);line-height:1.07}.hero-copy{padding:8px 0}.hero-eyebrow{font-size:8px;margin-bottom:22px;letter-spacing:.08em}.hero-subline{font-size:14px;max-width:42ch;margin-top:20px}.hero-affiliation{font-size:10px}.hero-actions{gap:10px;margin-top:24px}.hero-actions .button{min-height:44px;padding:12px 16px;font-size:10px}.hero-copy .credentials{font-size:8px;margin-top:22px}.hero-portrait{max-width:none}.hero-footer{margin-top:28px}.social-thumbnail{width:38px;height:38px;flex-basis:38px;border-radius:10px}.social-thumbnail>img{border-radius:10px}.social-monogram{width:18px;height:18px;font-size:10px}.social-tile-copy strong{font-size:11px}.social-tile-copy>span{font-size:8px}.biography-socials{margin-top:20px;padding-top:18px}.social-tile{border-radius:14px}#book{padding-block:44px}#book .book-grid{padding:26px 22px;border-radius:26px}#book .book-copy h2{font-size:48px}#book .book-subtitle{font-size:14px}#book .book-stage{min-height:385px;padding:24px 15px 32px}#book .book-model{width:230px}#book .book-view-controls button{padding:8px 11px;font-size:9px}#book .book-purchase .button{width:100%;justify-content:space-between}#book #praise{padding:24px;margin-top:20px}.section-image-hero{min-height:0;padding-block:210px 28px}.section-image-hero .section-hero-copy{width:100%;padding:28px 24px;border-radius:24px}.section-image-hero .section-hero-copy h2{font-size:clamp(35px,10vw,47px)}.section-image-hero .section-hero-copy>.eyebrow{font-size:8px;max-width:none}.section-image-hero .section-hero-lead{font-size:13px}.section-image-hero::after{background:linear-gradient(180deg,transparent 5%,color-mix(in srgb,var(--color-ink) 10%,transparent) 60%,color-mix(in srgb,var(--color-ink) 18%,transparent))}.section-image-hero .section-hero-copy .button{padding-inline:16px;font-size:10px;gap:16px}.speaking-feature.media-library{padding:24px 18px;border-radius:26px}.media-library-heading h3{font-size:34px;max-width:19ch}.media-library-heading{margin-bottom:20px}.media-library .interview-copy h3{font-size:30px}.media-selection{gap:10px}.media-choice{padding:6px 6px 13px;border-radius:16px}.media-choice-cover{border-radius:10px;margin-bottom:11px}.media-choice-top{margin-inline:5px;font-size:7px}.media-choice strong{font-size:21px;margin-inline:5px}.media-choice-host,.media-choice-time{margin-inline:5px}.media-choice-host{font-size:8px}#speaking .media-library .media-art-credit{text-align:left;font-size:8px}.media-library .video-frame .video-caption{padding:22px 14px 24px 67px;font-size:9px}.media-library .play-disc{width:34px;height:34px;left:16px;bottom:18px;font-size:11px}.media-choice-icon{width:18px;height:18px}#contact .contact-card{padding:30px 24px;gap:22px}.contact-card .contact-copy h2{font-size:38px}.contact-card .form-row{grid-template-columns:1fr 1fr;gap:12px}.contact-card .inquiry-panel input{font-size:16px}.contact-card .inquiry-panel select,.contact-card .inquiry-panel textarea{font-size:16px}.shop-preview{padding-top:32px;padding-bottom:20px}.shop-preview>.container{padding:26px 20px 20px;border-radius:26px}.shop-preview-heading{display:flex;flex-wrap:wrap;gap:20px;margin-bottom:22px}.shop-preview-heading h2{font-size:43px}.shop-preview-heading .eyebrow{font-size:8px}.shop-preview-intro{margin:0}.shop-preview-intro .text-link{font-size:10px;padding:10px 15px;min-height:40px}.shop-preview-track{margin-right:-20px;padding-right:20px;gap:14px}.preview-piece{flex-basis:82%;border-radius:18px}.preview-piece h3{font-size:25px}.preview-piece-info{padding-top:14px}.shop-preview-bottom>p{max-width:150px}.site-footer{padding-bottom:20px}.footer-shell{border-radius:24px}}
@media(max-width:360px){.biography-socials{grid-template-columns:1fr}.social-arrow{display:block}.hero h1{font-size:40px}.hero-actions{flex-direction:column;align-items:stretch}.hero-actions .button{justify-content:space-between}.media-choice strong{font-size:19px}.media-choice-top{font-size:6px}.media-choice-icon{width:16px;height:16px}.contact-card .form-row{grid-template-columns:1fr;gap:16px}#book .book-copy h2{font-size:42px}#book .book-model{width:205px}#book .book-stage{min-height:350px}}
@media(prefers-reduced-transparency:reduce),(prefers-contrast:more){#book .book-grid,.section-image-hero .section-hero-copy,.social-tile,.media-viewer,.media-choice,.preview-piece{background:var(--color-white);backdrop-filter:none;-webkit-backdrop-filter:none}}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){#book .book-grid,.section-image-hero .section-hero-copy{background:var(--color-white)}}
@media(prefers-reduced-motion:reduce){.social-tile,.media-choice-cover img{transition:none}.social-tile:hover,.media-choice:hover .media-choice-cover img{transform:none}}
@media print{#book .book-grid,.section-image-hero .section-hero-copy{background:var(--color-white);box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}.biography-socials{display:none}.section-image-hero .section-hero-copy{width:100%;padding:0;border:0}.section-image-hero{padding-block:24px}}

/* A unified presentation: floating navigation, an integrated hero and clear glass controls. */
body{background:var(--color-cream)}
.site-header{inset:14px 24px auto;width:calc(100% - 48px);max-width:1400px;margin-inline:auto;height:78px;padding:0 20px;border:1px solid var(--glass-edge);border-radius:24px;background:linear-gradient(125deg,color-mix(in srgb,var(--color-white) 82%,transparent),color-mix(in srgb,var(--color-white) 62%,transparent));box-shadow:inset 0 1px 0 var(--color-white),0 8px 30px color-mix(in srgb,var(--color-ink) 7%,transparent);gap:16px}
.site-header .wordmark{padding:0;gap:12px;min-height:60px}.site-header .brand-quill{width:46px;height:58px}.site-header .wordmark .brand-title{transform:translateY(5px);font-size:16px;letter-spacing:.17em}.site-header .wordmark .brand-descriptor{margin-top:6px;font-size:8px}.site-header .brand-type{padding-bottom:2px}
.site-header nav{flex:none;margin-left:auto}.site-header nav ul{gap:3px;padding:4px;border:1px solid color-mix(in srgb,var(--color-white) 60%,transparent);border-radius:999px;background:color-mix(in srgb,var(--color-white) 24%,transparent)}
.site-header nav a{min-height:38px;padding:8px 15px;font:500 11px/1.4 var(--font-body);border-radius:999px;transition:background 180ms,box-shadow 180ms}.site-header nav a::after{display:none}.site-header nav a:hover,.site-header nav a[aria-current]{text-decoration:none;background:color-mix(in srgb,var(--color-white) 70%,transparent)}.site-header nav a[aria-current]{box-shadow:inset 0 1px 0 var(--color-white),0 2px 8px color-mix(in srgb,var(--color-ink) 6%,transparent)}
.site-header .nav-contact{min-height:44px;padding:10px 18px;font-size:11px}.site-header .bag-toggle{width:40px;height:44px;padding:10px;margin:0;border:0;border-radius:50%;background:transparent}
/* Default action surfaces stay luminous, with dark text in every state. */
body .button,body button[type=submit],body .filter,body .filter-btn,body .cv-filter,body .book-view-controls button,body .media-choice-icon,body .product-shop-button,body .product-add,body .shop-filter,body .shop-filters button{
 color:var(--color-olive)!important;background:linear-gradient(145deg,color-mix(in srgb,var(--color-white) 86%,transparent),color-mix(in srgb,var(--color-white) 43%,transparent))!important;border:1px solid color-mix(in srgb,var(--color-white) 94%,transparent);border-color:color-mix(in srgb,var(--color-white) 94%,transparent)!important;border-radius:999px;box-shadow:inset 0 1px 0 var(--color-white),inset 0 -1px 0 color-mix(in srgb,var(--color-olive) 9%,transparent),0 4px 14px color-mix(in srgb,var(--color-ink) 5%,transparent);backdrop-filter:blur(14px) saturate(130%);-webkit-backdrop-filter:blur(14px) saturate(130%)}
body .button::before{display:none}body .button:hover,body button[type=submit]:hover{background:var(--color-white)!important;color:var(--color-ink)!important;box-shadow:inset 0 1px 0 var(--color-white),0 7px 18px color-mix(in srgb,var(--color-ink) 9%,transparent)}
body .button.primary{border-color:color-mix(in srgb,var(--color-olive) 16%,var(--color-white))!important;font-weight:500}
body .cv-filter.is-active,body .cv-filter[aria-pressed=true],body .filter-btn.active,body .shop-filter[aria-pressed=true],body .shop-filters button[aria-pressed=true],body .book-view-controls button[aria-pressed=true]{background:color-mix(in srgb,var(--color-olive) 12%,var(--color-white))!important;box-shadow:inset 0 1px 0 var(--color-white),0 3px 10px color-mix(in srgb,var(--color-ink) 8%,transparent)}
#home{padding:44px 0 44px;background:radial-gradient(ellipse at 12% 80%,color-mix(in srgb,var(--color-olive) 16%,transparent),transparent 58%),radial-gradient(ellipse at 90% 0%,color-mix(in srgb,var(--color-white) 80%,transparent),transparent 65%),var(--color-cream)}
#home .hero-grid{width:calc(100% - 80px);max-width:1360px;display:grid;grid-template-columns:1.3fr .85fr;gap:0 38px;padding:28px 28px 0 60px;min-height:650px;align-items:center;border:1px solid var(--glass-edge);border-radius:36px;background:linear-gradient(135deg,color-mix(in srgb,var(--color-white) 76%,transparent),color-mix(in srgb,var(--color-white) 34%,transparent));box-shadow:inset 0 1px 0 var(--color-white),0 24px 60px color-mix(in srgb,var(--color-olive) 9%,transparent);backdrop-filter:blur(30px);-webkit-backdrop-filter:blur(30px)}
#home .hero-copy{max-width:none;padding:28px 0 30px}#home .hero-eyebrow{font:500 9px/1.7 var(--font-body);letter-spacing:.13em;margin-bottom:30px}#home h1{font:400 clamp(56px,4.85vw,86px)/.99 var(--font-display);letter-spacing:-.045em;max-width:none;text-wrap:initial}#home h1 .hero-emphasis{font:inherit;font-style:italic;letter-spacing:inherit}#home .line-mask{overflow:visible}#home .hero-subline{font-size:15px;line-height:1.8;max-width:43ch;margin-top:28px}#home .hero-affiliation{font-size:10px;line-height:1.7;margin-top:12px;max-width:44ch}
#home .hero-actions{gap:12px;margin-top:28px}#home .hero-actions .button{min-height:48px;padding:13px 20px;font-size:11px;gap:22px}#home .credentials{margin-top:26px;font-size:8px;letter-spacing:.1em}
#home .hero-band{align-self:stretch;display:flex;align-items:center;padding:0;background:none;border:0}#home .hero-portrait{width:100%;max-width:none;margin:0;padding:10px 10px 0;border-radius:26px;background:color-mix(in srgb,var(--color-white) 43%,transparent);box-shadow:inset 0 1px 0 var(--color-white),0 8px 24px color-mix(in srgb,var(--color-ink) 6%,transparent)}#home .hero-portrait>img{width:100%;height:470px;max-height:none;aspect-ratio:auto;object-fit:cover;object-position:center 35%;border-radius:18px}#home .hero-portrait figcaption{padding:18px 14px 20px;font-size:27px}#home .hero-portrait figcaption span{font-size:8px;letter-spacing:.1em}
#home .hero-footer{grid-column:1/-1;width:auto;margin:24px 0 0;padding:20px 4px 22px 0;min-height:0;display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid color-mix(in srgb,var(--color-olive) 15%,transparent);font-size:10px}#home .hero-footer a{display:flex;gap:28px;align-items:center;font-size:10px;min-height:32px}#home .hero-footer a span{display:grid;place-items:center;width:32px;height:32px;border:1px solid var(--glass-edge);border-radius:50%;background:color-mix(in srgb,var(--color-white) 56%,transparent)}
/* Consistent type roles: display titles, readable body text, quiet metadata. */
#book .book-copy{padding-block:8px;padding-left:48px}#book .book-copy .book-publisher{font:500 10px/1.6 var(--font-body);letter-spacing:.045em;color:var(--color-olive)}#book .book-copy h2{font:400 clamp(46px,4vw,66px)/1.02 var(--font-display);letter-spacing:-.035em;margin:20px 0 18px}#book .book-subtitle{font:400 18px/1.5 var(--font-body);letter-spacing:-.015em;max-width:32ch;color:var(--color-olive)}#book .book-introduction{font:400 14px/1.85 var(--font-body);letter-spacing:0;margin-top:28px;max-width:46ch}#book .book-introduction strong{font:500 14px/1.65 var(--font-body);display:block;margin-bottom:10px}#book .book-purchase{gap:16px;margin-top:28px}#book .book-edition{font:400 11px/1.6 var(--font-body)}#book .book-purchase .button{font:500 12px/1.4 var(--font-body);padding:14px 22px;min-height:48px}#book .book-story>summary{font:500 12px/1.5 var(--font-body)}
.section-image-hero .section-hero-copy{width:fit-content;max-width:560px;padding:28px 30px;border-radius:24px;background:linear-gradient(130deg,color-mix(in srgb,var(--color-white) 61%,transparent),color-mix(in srgb,var(--color-white) 37%,transparent));backdrop-filter:blur(20px) saturate(110%);-webkit-backdrop-filter:blur(20px) saturate(110%)}.section-image-hero .section-hero-copy h2{font-size:clamp(38px,3.25vw,52px);max-width:18ch}.section-image-hero .section-hero-copy>.eyebrow{font-size:9px;margin-bottom:16px}.section-image-hero .section-hero-lead{max-width:43ch;font-size:13px;margin-top:18px}.section-image-hero .section-hero-copy .button{margin-top:20px}.section-image-hero .section-hero-note{max-width:100%;margin-top:20px;padding-top:14px;gap:20px}.section-image-hero .section-hero-motto{margin-top:12px}
.testimonials-featured .testimonial-excerpt,.testimonials-featured>.testimonial-story:first-child .testimonial-excerpt{font:400 clamp(21px,1.6vw,25px)/1.5 var(--font-body);letter-spacing:-.04em;text-wrap:pretty;margin-bottom:28px}.testimonials-featured>.testimonial-story>summary{min-height:350px}.testimonials-featured .testimonial-category{margin-bottom:24px;font-size:9px;letter-spacing:.09em}.testimonials-featured .testimonial-person{font-size:11px;line-height:1.7}.testimonials-featured>.testimonial-story{padding:28px}.testimonial-full blockquote p{font-family:var(--font-body);font-weight:400;letter-spacing:0}
/* The lower sections share a single continuous field, without boundary rules. */
#speaking,#speaking>.section-body,#cv,#contact,.shop-preview,.site-footer{background:var(--color-cream);border-top:0;border-bottom:0}#speaking>.section-body{margin-bottom:0;padding-bottom:48px}#cv{padding-top:24px;padding-bottom:40px}#contact{padding-top:24px;padding-bottom:40px}.shop-preview{padding-top:24px;padding-bottom:24px}.site-footer{padding-top:0}#cv::before,#cv::after,#contact::before,#contact::after,.shop-preview::before,.shop-preview::after{display:none}
.media-selection-heading{justify-content:flex-start}.media-choice-cover img,.media-library .video-frame img{object-fit:contain}.media-choice-cover{background:var(--color-cream)}.shop-preview-bottom{justify-content:flex-end;padding-top:12px;margin-top:14px;border-top:0}.shop-preview-heading h2 em::before{content:none}
.footer-shell{padding:22px 30px 18px}.footer-top{display:flex;flex-wrap:nowrap;align-items:center;gap:28px;padding-bottom:18px}.footer-top>.footer-brand{min-height:48px;gap:12px}.footer-brand img{width:34px;height:44px}.footer-brand>span{gap:5px}.footer-brand .footer-name{font-size:23px}.footer-descriptor{font-size:8px}.footer-top .footer-policy-nav{margin-left:auto;padding:0;display:flex;align-items:center;gap:20px;flex-wrap:wrap}.footer-policy-nav a{font:400 10px/1.5 var(--font-body);min-height:38px;display:flex;align-items:center;text-decoration:none}.footer-policy-nav a:hover{text-decoration:underline;text-underline-offset:4px}.footer-top>.footer-return{padding:0;border:0;margin:0;font-size:9px;gap:8px}.footer-return span{width:32px;height:32px}.footer-bottom{padding-top:14px;align-items:center;gap:24px;font-size:8px;line-height:1.6}
@media(max-width:1200px){.site-header nav a{padding-inline:10px;font-size:10px}.site-header{gap:10px}#home .hero-grid{padding-left:40px;gap:0 28px;min-height:590px;grid-template-columns:1.25fr 1fr}#home h1{font-size:64px}#home .hero-portrait>img{height:410px}.footer-top{gap:18px}.footer-top .footer-policy-nav{gap:12px}.footer-policy-nav a{font-size:9px}.footer-brand .footer-name{font-size:21px}}
@media(max-width:1100px){.site-header nav{position:absolute;top:calc(100% + 8px);left:0;right:0;width:100%;margin:0;padding:14px;border:1px solid var(--glass-edge);border-radius:22px;background:color-mix(in srgb,var(--color-white) 94%,transparent);box-shadow:var(--glass-shadow)}.site-header nav ul{border:0;background:none;border-radius:0;padding:0;gap:6px;grid-template-columns:1fr 1fr}.site-header nav a{font-size:13px;min-height:44px;padding:12px 16px}.site-header .nav-contact{margin-left:auto}.footer-top{flex-wrap:wrap}.footer-top .footer-policy-nav{margin-left:auto}.footer-bottom{font-size:9px}#book .book-copy{padding-left:30px}#book .book-subtitle{font-size:16px}}
@media(max-width:850px){#home .hero-grid{width:calc(100% - 40px);padding:28px 24px 0 32px;gap:0 24px;grid-template-columns:1.15fr 1fr}#home h1{font-size:54px}#home .hero-portrait>img{height:380px}#home .hero-portrait figcaption{font-size:22px;padding:16px 8px}#home .hero-eyebrow{font-size:8px;letter-spacing:.07em}#home .hero-subline{font-size:13px}#home .hero-actions .button{padding:12px 15px;font-size:10px;gap:12px}#home .hero-affiliation{font-size:9px}.testimonials-featured .testimonial-excerpt,.testimonials-featured>.testimonial-story:first-child .testimonial-excerpt{font-size:21px}.section-image-hero .section-hero-copy{max-width:510px}}
@media(max-width:760px){#book .book-copy{padding:28px 0 0}#book .book-copy h2{font-size:50px}.footer-top{display:grid;grid-template-columns:1fr auto;gap:16px}.footer-top>.footer-brand{grid-column:1}.footer-top .footer-policy-nav{grid-column:1/-1;grid-row:2;margin:0;gap:8px 22px}.footer-top>.footer-return{grid-column:2;grid-row:1}.footer-bottom{flex-direction:column;align-items:flex-start;gap:6px}.section-image-hero .section-hero-copy{max-width:480px;padding:26px}.section-image-hero .section-hero-copy h2{font-size:44px}}
@media(max-width:600px){.site-header{inset:8px 12px auto;width:calc(100% - 24px);height:66px;padding:0 10px;border-radius:20px;gap:6px}.site-header .wordmark{min-height:52px;gap:7px}.site-header .brand-quill{width:34px;height:46px}.site-header .wordmark .brand-title{font-size:12px;letter-spacing:.12em;transform:translateY(3px)}.site-header .wordmark .brand-descriptor{display:block;font-size:5px;letter-spacing:0;margin-top:4px;line-height:1.5}.site-header .nav-contact{font-size:9px;padding:7px 10px;min-height:36px}.site-header .bag-toggle{width:30px;padding:7px}#menu-toggle{width:34px;min-width:34px;padding:8px}.site-header nav ul{grid-template-columns:1fr 1fr}#home{padding:28px 0 30px}#home .hero-grid{width:calc(100% - 28px);grid-template-columns:1fr;padding:28px 22px 0;gap:26px;border-radius:28px;min-height:0}#home .hero-copy{padding:0}#home h1{font-size:clamp(46px,12vw,68px);max-width:none;line-height:1.03}#home .hero-eyebrow{font-size:7px;margin-bottom:22px;gap:8px}#home .hero-eyebrow::before{width:16px}#home .hero-subline{font-size:13px;margin-top:22px}#home .hero-affiliation{font-size:9px}#home .hero-actions{gap:10px;margin-top:22px}#home .hero-actions .button{font-size:10px;padding:12px 14px;gap:12px}#home .credentials{font-size:7px;margin-top:22px}#home .hero-portrait{border-radius:22px;padding:8px 8px 0}#home .hero-portrait>img{height:auto;aspect-ratio:4/4.6;object-position:center 35%;border-radius:15px}#home .hero-portrait figcaption{font-size:25px;padding:16px 10px 18px}#home .hero-portrait figcaption span{font-size:7px}#home .hero-footer{margin:0;flex-direction:column;align-items:flex-start;gap:8px;padding:18px 0;font-size:9px}#home .hero-footer a{width:100%;justify-content:space-between;font-size:10px}#book .book-copy h2{font-size:46px}#book .book-subtitle{font-size:16px}#book .book-introduction{font-size:13px}#book .book-introduction strong{font-size:13px}.section-image-hero .section-hero-copy{width:100%;max-width:none;padding:24px;background:linear-gradient(130deg,color-mix(in srgb,var(--color-white) 68%,transparent),color-mix(in srgb,var(--color-white) 48%,transparent))}.section-image-hero .section-hero-copy h2{font-size:38px}.section-image-hero .section-hero-copy>.eyebrow{font-size:8px}.section-image-hero .section-hero-lead{font-size:12px}.testimonials-featured>.testimonial-story>summary{min-height:350px}.testimonials-featured .testimonial-excerpt,.testimonials-featured>.testimonial-story:first-child .testimonial-excerpt{font-size:22px;line-height:1.5}.footer-shell{padding:22px 20px 16px}.footer-top>.footer-brand{gap:8px}.footer-brand .footer-name{font-size:21px}.footer-brand img{width:29px;height:38px}.footer-descriptor{font-size:7px}.footer-top>.footer-return{font-size:0}.footer-return span{font-size:14px}.footer-top .footer-policy-nav{display:grid;grid-template-columns:1fr 1fr;gap:0 12px}.footer-policy-nav a{font-size:9px;min-height:34px}.footer-bottom{font-size:8px}.shop-preview-bottom{margin-top:12px;padding-top:0}#cv{padding-bottom:24px}#contact{padding-bottom:24px}}
@media(max-width:360px){.site-header .brand-quill{width:28px}.site-header .wordmark .brand-title{font-size:10px}.site-header .wordmark .brand-descriptor{font-size:4.5px}.site-header .nav-contact{padding-inline:8px}.site-header .bag-toggle{width:26px}#home .hero-grid{padding:24px 18px 0}#home h1{font-size:43px}#home .hero-eyebrow{font-size:6px}#home .hero-actions{flex-direction:column}#home .hero-portrait figcaption{font-size:23px}.section-image-hero .section-hero-copy{padding:22px}.section-image-hero .section-hero-copy h2{font-size:34px}}
@media(prefers-reduced-transparency:reduce),(prefers-contrast:more){#home .hero-grid,.site-header,.section-image-hero .section-hero-copy,body .button{background:var(--color-white)!important;backdrop-filter:none;-webkit-backdrop-filter:none}}
@media(prefers-reduced-motion:reduce){.site-header nav a{transition:none}}
@media print{.site-header{display:none}#home .hero-grid{width:100%;padding:0;border:0;box-shadow:none;background:var(--color-white);backdrop-filter:none}.section-image-hero .section-hero-copy{background:var(--color-white);padding:0}body .button{box-shadow:none;backdrop-filter:none}}

body .product-shop-button{padding:12px 18px}body .book-view-controls button[aria-pressed=true]{border-color:color-mix(in srgb,var(--color-olive) 20%,var(--color-white))!important}

#menu-toggle{border-radius:50%;background:color-mix(in srgb,var(--color-white) 55%,transparent);border-color:var(--glass-edge);box-shadow:inset 0 1px 0 var(--color-white)}

/* Annotation finish: continuous backdrop, concise hierarchy and consistent controls. */
body,#home{background:var(--color-cream)}
#home .hero-copy .credentials{margin:20px 0 0;padding:0;font-size:8px;line-height:1.6}
#home .hero-actions{margin-top:26px}
#home .hero-portrait figcaption .hero-affiliation{font:400 10px/1.65 var(--font-body);letter-spacing:0;text-transform:none;color:var(--color-olive);margin:10px 0 0;max-width:none}
#biography .biography-intro,#biography .biography-copy{font:400 13px/1.9 var(--font-body);letter-spacing:0;max-width:62ch}
#book .book-copy{font-family:var(--font-body)}
#book .book-copy h2{font:500 clamp(36px,3.25vw,48px)/1.12 var(--font-body);letter-spacing:-.045em;margin:20px 0 18px}
#book .book-copy .book-publisher{font:400 11px/1.7 var(--font-body);letter-spacing:.015em}
#book .book-subtitle{font:400 15px/1.7 var(--font-body);letter-spacing:0;max-width:38ch}
#book .book-introduction{font:400 14px/1.8 var(--font-body);letter-spacing:0;max-width:49ch;margin-top:24px}
#book .book-introduction strong{font:400 14px/1.8 var(--font-body);margin-bottom:12px}
#book .book-edition{font:400 11px/1.7 var(--font-body)}
#book .book-purchase{margin-top:24px;gap:14px}
.consulting-image-hero .section-hero-note{display:flex;flex-direction:column;align-items:flex-start;gap:12px;margin-top:22px;padding-top:18px;border-color:color-mix(in srgb,var(--color-olive) 17%,transparent)}
.consulting-image-hero .section-hero-note p{font:400 11px/1.7 var(--font-body);max-width:38ch;margin:0}
.consulting-image-hero .section-hero-note>span{font:400 10px/1.5 var(--font-body);display:inline-flex;align-items:center;gap:7px;padding:6px 10px;border:1px solid var(--glass-edge);border-radius:999px;background:color-mix(in srgb,var(--color-white) 30%,transparent)}
.consulting-image-hero .section-hero-note>span::before{content:'';width:4px;height:4px;border-radius:50%;background:var(--color-olive)}
#triple-ivy .consultation-intro>.button,#speaking .media-panel>.button{display:inline-flex;align-items:center;justify-content:space-between;width:fit-content;max-width:100%;min-height:46px;border-radius:999px;padding:13px 20px;gap:24px;font:500 11px/1.5 var(--font-body);letter-spacing:0;box-shadow:inset 0 1px 0 var(--color-white),0 4px 14px color-mix(in srgb,var(--color-ink) 6%,transparent);text-decoration:none}
#triple-ivy .consultation-intro>.button .arrow,#speaking .media-panel>.button .arrow{flex:none}
#triple-ivy .testimonials-featured .testimonial-excerpt,#triple-ivy .testimonials-featured>.testimonial-story:first-child .testimonial-excerpt{font:italic 400 20px/1.55 var(--font-body);letter-spacing:-.025em}
.contact-card .inquiry-panel form{margin-top:0}
@media(min-width:1101px) and (max-width:1350px){#services.offering-grid>.offering-card{padding-inline:18px}#services .checked-list{font-size:12px}#services .checked-list li{gap:8px}}
@media(max-width:600px){#home .hero-copy .credentials{font-size:7px;margin-top:18px}#home .hero-portrait figcaption .hero-affiliation{font-size:9px;line-height:1.7}#book .book-copy h2{font-size:36px}#book .book-subtitle,#book .book-introduction,#book .book-introduction strong{font-size:13px;line-height:1.85}#triple-ivy .testimonials-featured .testimonial-excerpt,#triple-ivy .testimonials-featured>.testimonial-story:first-child .testimonial-excerpt{font-size:20px}#triple-ivy .consultation-intro>.button,#speaking .media-panel>.button{padding-inline:17px;font-size:10px;gap:18px}}

/* Read immediately; interaction feedback remains, entrance delays do not. */
.hero-line,.hero-eyebrow,.hero-subline,.hero-actions .button,.reveal{animation:none!important;opacity:1!important}
.book-tabs{display:flex;gap:4px;padding:4px;margin-top:26px;width:fit-content;max-width:100%;border:1px solid var(--glass-edge);border-radius:999px;background:color-mix(in srgb,var(--color-white) 38%,transparent)}
.book-tabs a{display:flex;align-items:center;justify-content:center;min-height:42px;padding:11px 20px;border-radius:999px;font:500 11px/1.4 var(--font-body);text-decoration:none;color:var(--color-olive)}
.book-tabs a[aria-selected=true]{background:color-mix(in srgb,var(--color-white) 86%,transparent);box-shadow:inset 0 1px 0 var(--color-white),0 3px 10px color-mix(in srgb,var(--color-ink) 6%,transparent)}
.book-tab-panel[hidden]{display:none}.book-tab-panel{scroll-margin-top:120px}.instructor-guide{padding-top:24px}.guide-status{display:inline-block;font:500 9px/1.5 var(--font-body);letter-spacing:.04em;color:var(--color-olive);border:1px solid var(--color-hairline);border-radius:999px;padding:5px 10px}
#book .instructor-guide h3{font:500 24px/1.25 var(--font-body);letter-spacing:-.03em;margin:16px 0 12px}.instructor-guide>p{font:400 13px/1.8 var(--font-body);max-width:48ch}.instructor-guide .guide-download{margin-top:20px;min-height:46px;padding:12px 20px;gap:22px;font-size:11px}.guide-file-note{display:block;margin-top:10px;font:400 10px/1.6 var(--font-body);color:var(--color-olive)}
.guide-chapters{margin-top:24px}.guide-chapter{border-top:1px solid color-mix(in srgb,var(--color-olive) 16%,transparent)}.guide-chapter summary{display:flex;align-items:center;gap:12px;list-style:none;cursor:pointer;padding:15px 0;font:500 11px/1.6 var(--font-body)}.guide-chapter summary::-webkit-details-marker{display:none}.guide-chapter-number{font-size:9px;color:var(--color-olive)}.guide-plus{margin-left:auto;font-size:16px;color:var(--color-olive)}.guide-chapter[open] .guide-plus{transform:rotate(45deg)}.guide-chapter ol{padding-left:24px;margin:0 0 20px;font:400 12px/1.8 var(--font-body)}.guide-chapter li+li{margin-top:12px}.instructor-guide>.guide-review-note{font-size:10px;margin-top:18px;color:var(--color-olive)}
@media(max-width:600px){.book-tabs a{padding-inline:15px;font-size:10px}.instructor-guide .guide-download{width:100%;justify-content:space-between}}
@media print{.book-tabs{display:none}.book-tab-panel[hidden]{display:block}.guide-chapter{break-inside:avoid}}

/* Review refinements: consulting hierarchy and a focused recording workspace. */
#triple-ivy .consulting-image-hero .section-hero-copy{position:relative;padding-top:76px}
.consulting-image-hero .remote-badge{position:absolute;top:22px;right:24px;display:inline-flex;align-items:center;gap:7px;padding:6px 11px;border:1px solid var(--glass-edge);border-radius:999px;background:color-mix(in srgb,var(--color-white) 38%,transparent);font:400 10px/1.5 var(--font-body);color:var(--color-olive)}
.consulting-image-hero .remote-badge::before{content:'';width:5px;height:5px;border-radius:50%;background:var(--color-olive)}
#triple-ivy .section-hero-motto{font:500 15px/1.6 var(--font-body);letter-spacing:.06em;text-align:center;width:100%;margin:24px 0 0}
#services.offering-grid>.offering-card>a.button.text-button{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:48px;padding:12px 16px;border:1px solid var(--glass-edge);border-radius:999px;background:color-mix(in srgb,var(--color-white) 65%,transparent);box-shadow:inset 0 1px 0 var(--color-white),0 4px 12px color-mix(in srgb,var(--color-ink) 5%,transparent);font:500 11px/1.45 var(--font-body);text-decoration:none}
#services.offering-grid>.offering-card>a.button.text-button .arrow{flex:none}
#speaking .media-library{padding:32px;background:color-mix(in srgb,var(--color-white) 40%,transparent)}
#speaking .media-library-heading{margin-bottom:28px;padding-bottom:24px;border-bottom:1px solid var(--glass-edge)}
#speaking .media-library-heading h3{font-size:clamp(32px,3.2vw,46px);max-width:22ch;line-height:1.12}
.media-workspace{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);gap:28px;align-items:start}
#speaking .media-viewer{display:flex;flex-direction:column;gap:0;padding:0;border:0;border-radius:20px;overflow:hidden;background:color-mix(in srgb,var(--color-white) 50%,transparent)}
#speaking .media-viewer .video-frame{width:100%;border-radius:0;aspect-ratio:16/9}
#speaking .media-viewer .interview-copy{padding:24px;width:100%}
#speaking .media-viewer .interview-copy h3{font-size:32px;line-height:1.1;margin:12px 0}
#speaking .media-viewer .media-meta{font-size:11px;margin:8px 0}
#speaking .media-viewer #media-description{font-size:12px;line-height:1.8;margin:0;min-height:44px}
#speaking .media-actions{margin-top:18px}
#speaking .media-source{display:inline-block;margin-top:16px}
#speaking .media-source[hidden]{display:none}
#speaking .media-playlist{min-width:0}
#speaking .media-selection-heading{display:flex;justify-content:space-between;align-items:center;margin:0 0 16px;padding:0 2px}
#speaking .media-selection-heading h3{font:500 12px/1.5 var(--font-body);margin:0}
#speaking .media-selection-heading>span{font:400 10px/1.5 var(--font-body);color:var(--color-olive)}
#speaking .media-selection{display:flex;flex-direction:column;gap:10px;margin:0}
#speaking .media-choice{display:grid;grid-template-columns:104px minmax(0,1fr);grid-template-rows:auto auto auto auto;column-gap:14px;row-gap:4px;align-items:start;text-align:left;padding:12px;min-height:116px;border:1px solid transparent;border-radius:16px;background:color-mix(in srgb,var(--color-white) 35%,transparent);box-shadow:none;transform:none}
#speaking .media-choice:hover{background:color-mix(in srgb,var(--color-white) 75%,transparent)}
#speaking .media-choice[aria-pressed=true]{border-color:color-mix(in srgb,var(--color-olive) 50%,transparent);background:color-mix(in srgb,var(--color-white) 86%,transparent);box-shadow:0 5px 20px color-mix(in srgb,var(--color-ink) 5%,transparent)}
#speaking .media-choice-cover{grid-column:1;grid-row:1/5;width:104px;aspect-ratio:16/10;border-radius:9px;align-self:center;margin:0;overflow:hidden}
#speaking .media-choice-cover img{height:100%;width:100%;object-fit:cover}
#speaking .media-choice-top{grid-column:2;margin:0;font-size:8px;line-height:1.5;gap:4px}
#speaking .media-choice-icon{width:18px;height:18px;min-width:18px;font-size:7px}
#speaking .media-choice strong{grid-column:2;font:500 15px/1.2 var(--font-body);letter-spacing:-.025em;margin:0}
#speaking .media-choice-host{grid-column:2;font-size:9px;line-height:1.5;margin:0}
#speaking .media-choice-time{grid-column:2;font-size:9px;line-height:1.5;margin:0}
@media(max-width:1000px){.media-workspace{grid-template-columns:1fr}#speaking .media-selection{display:grid;grid-template-columns:1fr 1fr}#speaking .media-library{padding:24px}#speaking .media-choice{grid-template-columns:88px minmax(0,1fr)}#speaking .media-choice-cover{width:88px}}
@media(max-width:600px){#triple-ivy .section-hero-motto{font-size:13px;letter-spacing:.035em}#triple-ivy .consulting-image-hero .section-hero-copy{padding-top:70px}#speaking .media-library{padding:18px}#speaking .media-library-heading{padding-bottom:18px;margin-bottom:18px}#speaking .media-library-heading h3{font-size:32px}#speaking .media-selection{grid-template-columns:1fr}#speaking .media-choice{grid-template-columns:92px minmax(0,1fr);min-height:112px}#speaking .media-choice-cover{width:92px}#speaking .media-viewer .interview-copy{padding:20px}#speaking .media-viewer .interview-copy h3{font-size:28px}}

/* Stable scroll rendering and the latest type refinements. */
#triple-ivy .consulting-image-hero .section-hero-copy{background:linear-gradient(130deg,color-mix(in srgb,var(--color-cream) 97%,var(--color-white)),color-mix(in srgb,var(--color-cream) 91%,var(--color-white)));backdrop-filter:none;-webkit-backdrop-filter:none;transform:none;transition:none;isolation:isolate}
#triple-ivy .consulting-image-hero .section-hero-copy .button{backdrop-filter:none;-webkit-backdrop-filter:none}
#services .offering-card>.number-circle{align-self:center;margin-inline:auto}
.shop-preview .preview-piece-info h3{font:500 13px/1.5 var(--font-body);text-transform:uppercase;letter-spacing:.065em}
#praise .praise-slide blockquote p{font:italic 300 clamp(22px,2.3vw,30px)/1.55 var(--font-body);letter-spacing:-.025em}
#triple-ivy .testimonials-featured .testimonial-excerpt,#triple-ivy .testimonials-featured>.testimonial-story:first-child .testimonial-excerpt{font-weight:300;font-synthesis:none}
.shop-page .product-info h2{font:500 13px/1.5 var(--font-body);text-transform:uppercase;letter-spacing:.065em}
#home .hero-portrait figcaption{display:flex;flex-direction:column;gap:8px;padding:19px 16px 17px;margin:0;text-align:left;font-family:var(--font-body)}
#home .hero-portrait figcaption .portrait-name{font:400 clamp(18px,1.8vw,24px)/1.3 var(--font-body);letter-spacing:-.035em;text-transform:none;color:var(--color-ink);margin:0}
#home .hero-portrait figcaption .portrait-roles{font:500 clamp(11px,1.05vw,14px)/1.6 var(--font-body);letter-spacing:.035em;text-transform:none;margin:3px 0 2px;color:var(--color-olive)}
#home .hero-portrait figcaption .hero-affiliation{font:400 10px/1.7 var(--font-body);margin:4px 0 0;padding-top:10px;border-top:1px solid color-mix(in srgb,var(--color-olive) 14%,transparent);max-width:none;letter-spacing:0}
@media(max-width:600px){#home .hero-portrait figcaption{padding:17px 12px 14px;gap:6px}#home .hero-portrait figcaption .portrait-name{font-size:19px}#home .hero-portrait figcaption .hero-affiliation{font-size:10px}}

/* Chicago copy stays beneath the shoreline, with a compact vertical rhythm. */
#biography .biography-place{padding-bottom:0}
#biography .biography-place>p{margin:12px 0 18px;line-height:1.1}
@media(max-width:760px){#biography .biography-skyline,#biography::after{height:600px}#biography .biography-place{height:600px;padding:0 8px 34px;display:flex;flex-direction:column;justify-content:flex-end}#biography .biography-place>p{font-size:36px;max-width:12ch;margin:12px 0 18px}#biography .biography-place-rule{display:block}}

/* A shared glass surface: restrained reflections, a bright edge and soft depth. */
#triple-ivy .offering-card,#triple-ivy .consulting-disclosures>details,#triple-ivy .consultation-card,#triple-ivy .consulting-faq,#triple-ivy .testimonial-story,#triple-ivy .testimonials-more,#speaking .media-panel,#speaking .media-library,#cv>.container{
 background:radial-gradient(ellipse at 0 0,color-mix(in srgb,var(--color-white) 91%,transparent),transparent 66%),linear-gradient(145deg,color-mix(in srgb,var(--color-white) 58%,transparent),color-mix(in srgb,var(--color-white) 25%,transparent));
 border:1px solid color-mix(in srgb,var(--color-white) 92%,transparent);border-radius:28px;
 box-shadow:inset 0 1px 0 var(--color-white),inset 0 -1px 0 color-mix(in srgb,var(--color-olive) 9%,transparent),0 2px 4px color-mix(in srgb,var(--color-ink) 2%,transparent),0 14px 36px -12px color-mix(in srgb,var(--color-ink) 12%,transparent);
 backdrop-filter:none;-webkit-backdrop-filter:none;
}
#triple-ivy .consulting-image-hero .section-hero-copy{background:linear-gradient(135deg,color-mix(in srgb,var(--color-white) 88%,transparent),color-mix(in srgb,var(--color-cream) 80%,transparent));border:1px solid color-mix(in srgb,var(--color-white) 95%,transparent);border-radius:28px;box-shadow:inset 0 1px 0 var(--color-white),inset 0 -1px 0 color-mix(in srgb,var(--color-white) 45%,transparent),0 18px 44px -18px color-mix(in srgb,var(--color-ink) 30%,transparent);overflow:hidden}
#services .number-circle{background:linear-gradient(145deg,var(--color-white),color-mix(in srgb,var(--color-white) 28%,transparent));border:1px solid color-mix(in srgb,var(--color-white) 90%,transparent);box-shadow:inset 0 1px 0 var(--color-white),0 4px 12px color-mix(in srgb,var(--color-ink) 5%,transparent)}
#triple-ivy .consulting-disclosures>details>summary,#triple-ivy .testimonials-more>summary{border-radius:inherit;background:transparent;box-shadow:none}
#triple-ivy .consulting-disclosures>details[open]>summary,#triple-ivy .testimonials-more[open]>summary{border-radius:28px 28px 0 0}
#triple-ivy .consulting-faq details,#speaking .media-panel-list li{border-color:color-mix(in srgb,var(--color-olive) 12%,transparent)}
#triple-ivy .testimonial-story>summary{background:transparent}
#speaking .media-library .media-viewer{border:1px solid color-mix(in srgb,var(--color-white) 80%,transparent);box-shadow:0 8px 24px -16px color-mix(in srgb,var(--color-ink) 18%,transparent)}
#speaking .media-viewer .interview-copy{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:20px;row-gap:8px;padding:20px 22px}
#speaking #media-publisher{grid-column:1;grid-row:1;margin:0;line-height:1.5}
#speaking #media-meta{grid-column:1;grid-row:2;margin:0;font-size:10px}
#speaking #media-recording-title{grid-column:1/-1;grid-row:3;margin:3px 0 0;font-size:28px}
#speaking .media-viewer #media-description{grid-column:1/-1;grid-row:4;min-height:0;max-width:none;font-size:12px;line-height:1.7}
#speaking .media-actions{grid-column:2;grid-row:1/3;margin:0;align-self:center}
#speaking .media-actions .button{min-height:42px;padding:10px 16px;font-size:10px;gap:16px}
#speaking #media-source{grid-column:1/-1;grid-row:5;margin:2px 0 0;font-size:10px;justify-self:start}
#cv .cv-timeline>article{background:color-mix(in srgb,var(--color-white) 30%,transparent);border-color:color-mix(in srgb,var(--color-white) 80%,transparent);box-shadow:inset 0 1px 0 var(--color-white)}
@media(max-width:600px){#speaking .media-viewer .interview-copy{padding:18px;column-gap:10px}#speaking #media-recording-title{font-size:27px}#speaking .media-actions{grid-column:1/-1;grid-row:5;margin-top:6px;justify-self:start}#speaking #media-source{grid-row:6;margin-top:4px}#triple-ivy .offering-card,#triple-ivy .testimonial-story,#speaking .media-panel,#speaking .media-library,#cv>.container{border-radius:24px}}
@media(prefers-reduced-transparency:reduce),(prefers-contrast:more){#triple-ivy .consulting-image-hero .section-hero-copy,#triple-ivy .offering-card,#triple-ivy .consulting-disclosures>details,#triple-ivy .consultation-card,#triple-ivy .consulting-faq,#triple-ivy .testimonial-story,#triple-ivy .testimonials-more,#speaking .media-panel,#speaking .media-library,#cv>.container{background:var(--color-white)}}
/* More transparent glass, with the photograph frosted on a single isolated layer. */
#triple-ivy .offering-card,#triple-ivy .consulting-disclosures>details,#triple-ivy .consultation-card,#triple-ivy .consulting-faq,#triple-ivy .testimonial-story,#triple-ivy .testimonials-more,#speaking .media-panel,#speaking .media-library,#cv>.container{background:radial-gradient(ellipse at 0 0,color-mix(in srgb,var(--color-white) 66%,transparent),transparent 64%),linear-gradient(145deg,color-mix(in srgb,var(--color-white) 30%,transparent),color-mix(in srgb,var(--color-white) 12%,transparent))}
#triple-ivy .consulting-image-hero .section-hero-copy{background:linear-gradient(135deg,color-mix(in srgb,var(--color-white) 64%,transparent),color-mix(in srgb,var(--color-cream) 40%,transparent))}
#triple-ivy .consulting-image-hero .section-hero-copy::before{content:'';position:absolute;inset:0;z-index:-1;border-radius:inherit;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);pointer-events:none;transform:translateZ(0)}
@media(prefers-reduced-transparency:reduce),(prefers-contrast:more){#triple-ivy .consulting-image-hero .section-hero-copy,#triple-ivy .offering-card,#triple-ivy .consulting-disclosures>details,#triple-ivy .consultation-card,#triple-ivy .consulting-faq,#triple-ivy .testimonial-story,#triple-ivy .testimonials-more,#speaking .media-panel,#speaking .media-library,#cv>.container{background:var(--color-white)}#triple-ivy .consulting-image-hero .section-hero-copy::before{backdrop-filter:none;-webkit-backdrop-filter:none}}
#praise .praise-slide blockquote p{font:italic 300 clamp(18px,1.65vw,22px)/1.65 var(--font-body);letter-spacing:0;font-synthesis:none;max-width:76ch}
#triple-ivy .consulting-image-hero .section-hero-note p{max-width:none;width:100%;font-size:10px;letter-spacing:-.01em}
#services.offering-grid>.offering-card{text-align:center;align-items:center}
#services.offering-grid>.offering-card>h3,#services.offering-grid>.offering-card>p{width:100%;text-align:center}
#services.offering-grid>.offering-card>h3{font-size:26px;letter-spacing:-.015em}
@media(min-width:1151px){#services.offering-grid>.offering-card>h3{font-size:clamp(22px,1.88vw,26px)}}
@media(max-width:360px){#services.offering-grid>.offering-card>h3{font-size:22px}}
#services .checked-list{width:100%;text-align:center}
#services .checked-list li{display:flex;justify-content:center;align-items:baseline;text-align:center}
#services.offering-grid>.offering-card>a.button.text-button{justify-content:center;text-align:center;gap:12px}

/* A quiet, aligned consultation price and a compact recording introduction. */
#speaking .media-library-heading{padding-bottom:18px;margin-bottom:24px}
#speaking .media-library-heading .eyebrow{margin:0;font-size:11px}
#triple-ivy .consultation-fee{padding-left:36px;align-self:stretch;display:flex;flex-direction:column;justify-content:center}
#triple-ivy .consultation-fee>.eyebrow{margin:0 0 18px;font-size:9px;letter-spacing:.12em}
#triple-ivy .consultation-fee h4{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:20px;margin:0}
#triple-ivy .consultation-price{font:400 54px/1 var(--font-body);letter-spacing:-.055em;margin:0}
#triple-ivy .consultation-fee-label{font:400 14px/1.55 var(--font-body);letter-spacing:0;max-width:19ch}
#triple-ivy .consultation-fee .fee-credit{font:500 12px/1.7 var(--font-body);margin:22px 0 14px;padding-bottom:16px}
#triple-ivy .consultation-fee .fee-terms{font:400 11px/1.85 var(--font-body);max-width:48ch;margin:0}
@media(max-width:800px){#triple-ivy .consultation-fee{padding-left:24px}#triple-ivy .consultation-price{font-size:46px}#triple-ivy .consultation-fee h4{gap:16px}#triple-ivy .consultation-fee-label{font-size:12px}}
@media(max-width:600px){#triple-ivy .consultation-fee{padding:26px 0 0}#triple-ivy .consultation-fee-label{font-size:14px}#triple-ivy .consultation-fee h4{gap:22px}#triple-ivy .consultation-fee .fee-credit{margin-top:20px}#speaking .media-library-heading{margin-bottom:18px}}
@media(max-width:760px){#biography .biography-place>p{font-size:32px;max-width:18ch}#biography .education-path h4{font-size:clamp(14px,4.3vw,20px);overflow-wrap:normal;word-break:normal}}
/* The consulting promise gets its own signature banner. */
#triple-ivy .section-hero-motto{display:block;width:100%;margin:24px 0 0;padding:16px 10px;border:1px solid color-mix(in srgb,var(--color-white) 30%,transparent);border-radius:14px;background:linear-gradient(115deg,var(--color-olive),color-mix(in srgb,var(--color-olive) 84%,var(--color-ink)));color:var(--color-white);box-shadow:inset 0 1px 0 color-mix(in srgb,var(--color-white) 18%,transparent),0 8px 22px -10px color-mix(in srgb,var(--color-ink) 40%,transparent);font:500 12px/1.6 var(--font-body);letter-spacing:.09em;text-align:center;text-wrap:balance}
@media(max-width:600px){#triple-ivy .section-hero-motto{font-size:10px;letter-spacing:.075em;padding:15px 8px;margin-top:20px}}

/* Consulting introduction: editorial hierarchy within the existing glass. */
#triple-ivy .consulting-image-hero .section-hero-copy{width:448px;max-width:100%;padding:30px 32px 0}
#triple-ivy .consulting-card-top{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:32px}
#triple-ivy .consulting-card-top>.eyebrow{font:500 11px/1.5 var(--font-body);letter-spacing:.16em;margin:0}
#triple-ivy .consulting-card-top .remote-badge{position:static;background:none;border:0;box-shadow:none;padding:0;font-size:9px;gap:6px;white-space:nowrap}
#triple-ivy .consulting-card-category{font:400 9px/1.5 var(--font-body);letter-spacing:.045em;margin:0 0 14px;color:var(--color-olive)}
#triple-ivy .consulting-image-hero .section-hero-copy h2{font:400 clamp(38px,3.4vw,44px)/1.08 var(--font-display);letter-spacing:-.025em;margin:0;max-width:none;text-wrap:normal}
#triple-ivy .consulting-image-hero .section-hero-copy h2 em{font-weight:400;color:var(--color-olive)}
#triple-ivy .consulting-image-hero .section-hero-lead{font:400 13px/1.8 var(--font-body);margin:20px 0 24px;max-width:39ch}
#triple-ivy .consulting-image-hero .section-hero-copy>.button{display:flex;justify-content:space-between;gap:24px;width:100%;min-height:48px;margin:0;padding:13px 20px;background:color-mix(in srgb,var(--color-white) 70%,transparent);border:1px solid color-mix(in srgb,var(--color-white) 85%,transparent);font:500 11px/1.6 var(--font-body)}
#triple-ivy .consulting-card-footer{margin:28px -32px 0;padding:0 24px 22px;background:linear-gradient(145deg,color-mix(in srgb,var(--color-white) 23%,transparent),color-mix(in srgb,var(--color-white) 8%,transparent));border-top:1px solid color-mix(in srgb,var(--color-white) 45%,transparent)}
#triple-ivy .consulting-card-footer .section-hero-motto{display:grid;grid-template-columns:repeat(3,1fr);align-items:center;width:100%;margin:0;padding:21px 0 18px;background:none;border:0;border-radius:0;box-shadow:none;font:400 24px/1.1 var(--font-display);letter-spacing:-.015em;text-transform:none;color:var(--color-ink)}
#triple-ivy .section-hero-motto>span+span{border-left:1px solid color-mix(in srgb,var(--color-olive) 20%,transparent)}
#triple-ivy .consulting-card-footer .section-hero-note{margin:0;padding:0;border:0;display:block}
#triple-ivy .consulting-card-footer .section-hero-note p{margin:0;max-width:none;width:100%;text-align:center;font:400 9px/1.6 var(--font-body);letter-spacing:0}
@media(max-width:600px){#triple-ivy .consulting-image-hero .section-hero-copy{padding:24px 24px 0;width:100%}#triple-ivy .consulting-card-top{margin-bottom:26px;gap:10px}#triple-ivy .consulting-card-top>.eyebrow{font-size:10px}#triple-ivy .consulting-card-top .remote-badge{font-size:8px}#triple-ivy .consulting-image-hero .section-hero-copy h2{font-size:clamp(31px,8.4vw,42px)}#triple-ivy .consulting-image-hero .section-hero-lead{font-size:12px;margin:18px 0 22px}#triple-ivy .consulting-card-footer{margin:24px -24px 0;padding:0 18px 20px}#triple-ivy .consulting-card-footer .section-hero-motto{font-size:clamp(18px,5.6vw,22px);padding:19px 0 16px}#triple-ivy .consulting-card-footer .section-hero-note p{font-size:8px}}
/* A compact brand lockup, literary quotes and a deeper field behind the glass. */
#triple-ivy .consulting-card-top{margin-bottom:5px}
#triple-ivy .consulting-card-category{margin-bottom:28px}
#praise .praise-slide blockquote p,
#triple-ivy .testimonials-featured .testimonial-excerpt,
#triple-ivy .testimonials-featured>.testimonial-story:first-child .testimonial-excerpt{
 font:italic 400 19px/1.6 Georgia,'Times New Roman',serif;letter-spacing:0;font-synthesis:none;
}
#triple-ivy .testimonial-full blockquote p,
#triple-ivy .testimonials-archive .testimonial-full blockquote p{
 font:italic 400 16px/1.8 Georgia,'Times New Roman',serif;letter-spacing:0;font-synthesis:none;
}
body{background:radial-gradient(ellipse 75vw 640px at 10% 0,color-mix(in srgb,var(--color-white) 48%,transparent),transparent 75%),radial-gradient(ellipse 65vw 950px at 100% 600px,color-mix(in srgb,var(--color-olive) 12%,transparent),transparent 76%),color-mix(in srgb,var(--color-hairline) 65%,var(--color-cream));background-repeat:no-repeat}
#home,#book,#triple-ivy,#triple-ivy>.section-body,#speaking,#speaking>.section-body,#cv,#contact,.shop-preview,.site-footer{background:transparent}
@media(max-width:600px){#triple-ivy .consulting-card-top{margin-bottom:5px}#triple-ivy .consulting-card-category{margin-bottom:24px}#praise .praise-slide blockquote p,#triple-ivy .testimonials-featured .testimonial-excerpt,#triple-ivy .testimonials-featured>.testimonial-story:first-child .testimonial-excerpt{font-size:18px}}
@media print{body{background:var(--color-white)}}

/* Collection details share the same luminous glass and considered spacing. */
#product-dialog{width:880px;max-width:calc(100vw - 48px);max-height:calc(100dvh - 48px);margin:auto;padding:28px;border:1px solid color-mix(in srgb,var(--color-white) 92%,transparent);border-radius:28px;background:linear-gradient(135deg,color-mix(in srgb,var(--color-white) 83%,transparent),color-mix(in srgb,var(--color-cream) 66%,transparent));backdrop-filter:blur(28px) saturate(125%);-webkit-backdrop-filter:blur(28px) saturate(125%);box-shadow:inset 0 1px 0 var(--color-white),inset 0 -1px 0 color-mix(in srgb,var(--color-white) 38%,transparent),0 32px 90px -30px color-mix(in srgb,var(--color-ink) 38%,transparent);scrollbar-width:thin}
#product-dialog::backdrop{background:color-mix(in srgb,var(--color-ink) 28%,transparent);backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px)}
#product-dialog .dialog-close{top:14px;right:14px;width:40px;height:40px;background:color-mix(in srgb,var(--color-white) 78%,transparent);border:1px solid var(--glass-edge);box-shadow:inset 0 1px 0 var(--color-white),0 3px 12px color-mix(in srgb,var(--color-ink) 6%,transparent);font:400 24px/1 var(--font-body)}
#product-dialog .product-detail-grid{grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:32px;align-items:center}
#product-dialog .product-detail-visual{padding:8px;border:1px solid color-mix(in srgb,var(--color-white) 80%,transparent);border-radius:22px;background:color-mix(in srgb,var(--color-white) 22%,transparent);box-shadow:inset 0 1px 0 var(--color-white);overflow:hidden}
#product-dialog .product-detail-visual img{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:contain;border-radius:15px}
#product-dialog .product-detail-copy{min-width:0;padding:22px 8px 4px 0}
#product-dialog .product-detail-copy>.eyebrow{display:block;font:400 9px/1.6 var(--font-body);letter-spacing:.12em;color:var(--color-olive);padding-right:30px}
#product-dialog .product-detail-copy h2{font:400 38px/1.08 var(--font-display);letter-spacing:-.02em;margin:13px 0 16px;text-wrap:balance}
#product-dialog .product-detail-description{font:400 13px/1.75 var(--font-body);margin:0;max-width:38ch}
#product-dialog .product-detail-price{display:flex;align-items:baseline;gap:12px;margin:22px 0 0;padding-bottom:20px;border-bottom:1px solid color-mix(in srgb,var(--color-olive) 15%,transparent)}
#product-dialog .product-detail-price strong{font:400 25px/1.2 var(--font-body);letter-spacing:-.035em}
#product-dialog .product-detail-price>span{font:400 10px/1.5 var(--font-body);color:var(--color-olive)}
#product-dialog .product-detail-copy label{font:500 10px/1.5 var(--font-body);margin:18px 0 8px}
#product-dialog .product-detail-copy select{min-height:46px;width:100%;padding:11px 14px;border-radius:12px;border:1px solid color-mix(in srgb,var(--color-white) 90%,transparent);background:color-mix(in srgb,var(--color-white) 45%,transparent);box-shadow:inset 0 1px 0 var(--color-white);font:400 13px/1.5 var(--font-body)}
#product-dialog #add-to-bag{margin-top:12px;min-height:48px;padding:12px 18px;justify-content:space-between;font:500 12px/1.5 var(--font-body)}
#product-dialog #add-to-bag:disabled{opacity:.45;box-shadow:none;transform:none}
#product-dialog .product-concept-note{font:400 10px/1.75 var(--font-body)!important;margin:17px 0 0;max-width:44ch}
#product-dialog .product-detail-copy>a.small-copy{display:inline-flex;align-items:center;min-height:40px;margin-top:1px;font:400 10px/1.5 var(--font-body)!important;text-underline-offset:4px}
@media(max-width:600px){#product-dialog{width:100%;max-width:calc(100vw - 24px);max-height:calc(100dvh - 24px);padding:18px;border-radius:24px}#product-dialog .product-detail-grid{grid-template-columns:1fr;gap:20px}#product-dialog .product-detail-visual{max-width:260px;width:100%;margin:30px auto 0;padding:6px;border-radius:18px}#product-dialog .product-detail-visual img{border-radius:12px}#product-dialog .product-detail-copy{padding:0 4px}#product-dialog .product-detail-copy h2{font-size:33px;margin:10px 0 12px}#product-dialog .product-detail-description{font-size:12px}#product-dialog .product-detail-price{margin-top:18px;padding-bottom:16px}}
@media(prefers-reduced-transparency:reduce),(prefers-contrast:more){#product-dialog{background:var(--color-white);backdrop-filter:none;-webkit-backdrop-filter:none}}
/* A continuous glass collection: introduction, filters and preview bag. */
.commerce-main .shop-intro,.commerce-main .shop-toolbar{border:1px solid color-mix(in srgb,var(--color-white) 90%,transparent);background:radial-gradient(ellipse at 0 0,color-mix(in srgb,var(--color-white) 65%,transparent),transparent 70%),linear-gradient(135deg,color-mix(in srgb,var(--color-white) 30%,transparent),color-mix(in srgb,var(--color-white) 12%,transparent));box-shadow:inset 0 1px 0 var(--color-white),inset 0 -1px 0 color-mix(in srgb,var(--color-olive) 7%,transparent),0 16px 38px -22px color-mix(in srgb,var(--color-ink) 18%,transparent)}
.commerce-main .shop-intro{margin-top:44px;margin-bottom:28px;padding:44px 46px;border-radius:30px;grid-template-columns:1.25fr .85fr;gap:64px;align-items:center}
.commerce-main .shop-intro .eyebrow{font:400 9px/1.65 var(--font-body);letter-spacing:.12em;margin-bottom:24px;color:var(--color-olive)}
.commerce-main .shop-intro h1{font-size:clamp(46px,4.9vw,66px);line-height:1.04}
.commerce-main .shop-intro-note{padding-left:32px;border-left:1px solid color-mix(in srgb,var(--color-olive) 15%,transparent);max-width:none;justify-self:stretch}
.commerce-main .shop-intro-note>p:first-child{font-size:16px;line-height:1.7;margin-bottom:24px;max-width:30ch}
.commerce-main .preview-label,#bag-dialog>.preview-label{padding:6px 10px;border-radius:999px;border:1px solid var(--glass-edge);background:color-mix(in srgb,var(--color-white) 30%,transparent);font:400 9px/1.5 var(--font-body);letter-spacing:.07em}
.commerce-main .shop-intro-note .small-copy{font-size:10px!important;line-height:1.8;margin-top:12px;max-width:43ch}
.commerce-main .shop-toolbar{margin:0 0 28px;padding:10px 16px 10px 10px;border-radius:22px;gap:20px;min-height:66px}
.commerce-main .shop-filters{gap:5px}
.commerce-main .shop-filters button{min-height:44px;padding:11px 22px;font-size:11px;border:1px solid transparent!important;background:transparent!important;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}
.commerce-main .shop-filters button[aria-pressed=true]{border-color:var(--glass-edge)!important;background:color-mix(in srgb,var(--color-white) 78%,transparent)!important;box-shadow:inset 0 1px 0 var(--color-white),0 4px 12px color-mix(in srgb,var(--color-ink) 6%,transparent)}
.commerce-main .shop-toolbar>p{font-size:10px;white-space:nowrap;padding:0 8px;margin:0}
#product-dialog #add-to-bag{border-radius:999px}

/* Service actions share the quiet glass controls used throughout the site. */
#triple-ivy .service-inquiry{border-radius:999px;border:1px solid var(--glass-edge);box-shadow:inset 0 1px 0 var(--color-white),0 4px 14px color-mix(in srgb,var(--color-ink) 6%,transparent);min-height:46px;padding:12px 20px;gap:22px;font:500 11px/1.5 var(--font-body);text-decoration:none}
#triple-ivy .service-inquiry span{transition:transform 320ms var(--interaction-ease)}
@media(hover:hover) and (pointer:fine){#triple-ivy .service-inquiry:hover span{transform:translateX(4px)}}
@media(prefers-reduced-motion:reduce){#triple-ivy .service-inquiry span{transition:none}#triple-ivy .service-inquiry:hover span{transform:none}}

/* The original brand mark, built into a shallow dimensional sculpture. */
#contact .contact-card{grid-template-columns:1.12fr 1fr;gap:32px;padding-inline:36px}
#contact .contact-copy{display:grid;grid-template-columns:minmax(0,1fr) 190px;column-gap:14px;align-items:start;padding:0;text-align:left}
#contact .contact-copy>.eyebrow,#contact .contact-copy>h2,#contact .contact-copy>p,#contact .contact-copy>.contact-email{grid-column:1}
#contact .contact-copy h2{font-size:42px;max-width:13ch;margin:20px 0 18px}
#contact .contact-copy>p:not(.eyebrow){font-size:13px;margin-inline:0}
#contact .contact-copy>.contact-email{justify-self:start;white-space:nowrap}
.contact-logo-stage{grid-column:2;grid-row:1/5;position:relative;align-self:center;height:280px;display:grid;place-items:center;perspective:750px;isolation:isolate}
@media(min-width:1051px){.contact-logo-stage{left:-60px;top:-24px}}
.contact-logo-stage::after{content:"";position:absolute;bottom:10px;left:15%;width:70%;height:18px;border-radius:50%;background:color-mix(in srgb,var(--color-ink) 17%,transparent);filter:blur(9px);z-index:-1}
.contact-logo-sculpture{position:relative;width:210px;aspect-ratio:248/312;transform-style:preserve-3d;transform:rotateX(7deg) rotateY(-17deg) rotateZ(-3deg);animation:contact-logo-float 8s ease-in-out infinite;animation-play-state:paused}
.contact-logo-stage.is-moving .contact-logo-sculpture{animation-play-state:running}
.contact-logo-sculpture img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;backface-visibility:hidden;pointer-events:none}
.contact-logo-layer{filter:brightness(.42) saturate(.55)}
.contact-logo-layer-1{transform:translateZ(-10px)}
.contact-logo-layer-2{transform:translateZ(-8px)}
.contact-logo-layer-3{transform:translateZ(-6px)}
.contact-logo-layer-4{transform:translateZ(-4px)}
.contact-logo-layer-5{transform:translateZ(-2px)}
.contact-logo-face{transform:translateZ(0);filter:drop-shadow(1px 1px 0 color-mix(in srgb,var(--color-white) 75%,transparent)) drop-shadow(9px 13px 12px color-mix(in srgb,var(--color-ink) 18%,transparent))}
.contact-logo-motion{position:absolute;bottom:-18px;right:0;display:grid;place-items:center;width:36px;height:36px;border:1px solid var(--glass-edge);border-radius:50%;color:var(--color-olive);background:color-mix(in srgb,var(--color-white) 36%,transparent);font-size:11px}
@keyframes contact-logo-float{0%,100%{transform:translateY(4px) rotateX(7deg) rotateY(-17deg) rotateZ(-3deg)}50%{transform:translateY(-7px) rotateX(-3deg) rotateY(17deg) rotateZ(2deg)}}
@media(max-width:1050px){#contact .contact-card{grid-template-columns:1fr;max-width:720px}#contact .inquiry-panel{border-left:0;border-top:1px solid color-mix(in srgb,var(--color-olive) 15%,transparent);padding:26px 0 0}#contact .contact-copy{grid-template-columns:minmax(0,1fr) 190px;gap:0 24px}.contact-logo-sculpture{width:210px}}
@media(max-width:600px){#contact .contact-card{padding-inline:24px}#contact .contact-copy{grid-template-columns:minmax(0,1fr) 105px;gap:0 8px}#contact .contact-copy h2{font-size:34px;grid-column:1/-1;max-width:none;margin-bottom:22px}#contact .contact-copy>.eyebrow{grid-column:1/-1}#contact .contact-copy>p:not(.eyebrow){font-size:12px}.contact-logo-stage{grid-row:3/5;height:160px}.contact-logo-sculpture{width:128px}.contact-logo-stage::after{bottom:-2px}.contact-logo-motion{bottom:-28px;right:4px}#contact .contact-copy>.contact-email{grid-column:1/-1;margin-top:24px}#contact .contact-card{gap:36px}}
@media(prefers-reduced-motion:reduce){.contact-logo-sculpture{animation:none}.contact-logo-motion{display:none}}

/* Smoked glass gives the recording room a distinct, cinematic atmosphere. */
#speaking .media-library{
 color:var(--color-white);
 background:radial-gradient(ellipse at 10% 0,color-mix(in srgb,var(--color-white) 4%,transparent),transparent 60%),linear-gradient(145deg,color-mix(in srgb,var(--color-cinema) 98%,transparent),color-mix(in srgb,var(--color-cinema) 96%,transparent));
 border-color:color-mix(in srgb,var(--color-white) 28%,transparent);
 box-shadow:inset 0 1px 0 color-mix(in srgb,var(--color-white) 20%,transparent),inset 0 -1px 0 color-mix(in srgb,var(--color-white) 6%,transparent),0 24px 60px -22px color-mix(in srgb,var(--color-cinema) 46%,transparent);
 backdrop-filter:blur(24px) saturate(0%);-webkit-backdrop-filter:blur(24px) saturate(0%);
}
#speaking .media-library-heading{border-color:color-mix(in srgb,var(--color-white) 17%,transparent)}
#speaking .media-library .eyebrow,#speaking .media-library .media-meta,#speaking .media-library .media-choice-top,#speaking .media-library .media-choice-time,#speaking .media-library .media-selection-heading span{color:color-mix(in srgb,var(--color-white) 78%,transparent)}
#speaking .media-library .media-viewer{background:color-mix(in srgb,var(--color-cinema) 24%,transparent);border-color:color-mix(in srgb,var(--color-white) 17%,transparent);box-shadow:0 12px 32px -12px color-mix(in srgb,var(--color-cinema) 55%,transparent)}
#speaking .media-library .interview-copy{background:linear-gradient(135deg,color-mix(in srgb,var(--color-white) 5%,transparent),transparent);color:var(--color-white)}
#speaking .media-library #media-description,#speaking .media-library .media-choice-host{color:color-mix(in srgb,var(--color-white) 85%,transparent)}
#speaking .media-library .media-choice{color:var(--color-white);background:color-mix(in srgb,var(--color-white) 5%,transparent);border-color:color-mix(in srgb,var(--color-white) 9%,transparent);box-shadow:inset 0 1px 0 color-mix(in srgb,var(--color-white) 5%,transparent)}
#speaking .media-library .media-choice[aria-pressed=true]{background:linear-gradient(135deg,color-mix(in srgb,var(--color-white) 10%,transparent),color-mix(in srgb,var(--color-white) 5%,transparent));border-color:color-mix(in srgb,var(--color-white) 44%,transparent);box-shadow:inset 0 1px 0 color-mix(in srgb,var(--color-white) 16%,transparent),0 8px 24px -12px color-mix(in srgb,var(--color-cinema) 50%,transparent)}
#speaking .media-library .button,#speaking .media-library .media-choice-icon{color:var(--color-white)!important;background:linear-gradient(145deg,color-mix(in srgb,var(--color-white) 16%,transparent),color-mix(in srgb,var(--color-white) 7%,transparent))!important;border-color:color-mix(in srgb,var(--color-white) 30%,transparent)!important;box-shadow:inset 0 1px 0 color-mix(in srgb,var(--color-white) 15%,transparent),0 4px 12px color-mix(in srgb,var(--color-cinema) 12%,transparent)}
#speaking .media-library :focus-visible{outline:2px solid var(--color-white);outline-offset:4px;box-shadow:none}
@media(hover:hover) and (pointer:fine){#speaking .media-library .media-choice:hover{background:color-mix(in srgb,var(--color-white) 12%,transparent);border-color:color-mix(in srgb,var(--color-white) 38%,transparent)}}
@media(prefers-reduced-transparency:reduce),(prefers-contrast:more){#speaking .media-library{background:var(--color-cinema);backdrop-filter:none;-webkit-backdrop-filter:none}#speaking .media-library .media-choice{background:var(--color-cinema)}#speaking .media-library .media-choice[aria-pressed=true]{background:color-mix(in srgb,var(--color-white) 12%,var(--color-cinema))}}
#bag-dialog{width:500px;max-width:calc(100vw - 48px);min-height:0;max-height:calc(100dvh - 48px);margin:auto 24px auto auto;padding:38px 30px 28px;border:1px solid color-mix(in srgb,var(--color-white) 90%,transparent);border-radius:28px;background:linear-gradient(135deg,color-mix(in srgb,var(--color-white) 66%,transparent),color-mix(in srgb,var(--color-cream) 42%,transparent));backdrop-filter:blur(26px) saturate(125%);-webkit-backdrop-filter:blur(26px) saturate(125%);box-shadow:inset 0 1px 0 var(--color-white),inset 0 -1px 0 color-mix(in srgb,var(--color-white) 30%,transparent),0 28px 80px -24px color-mix(in srgb,var(--color-ink) 36%,transparent);scrollbar-width:thin}
#bag-dialog::backdrop{background:color-mix(in srgb,var(--color-ink) 24%,transparent);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}
#bag-dialog .dialog-close{top:14px;right:14px;width:40px;height:40px;border:1px solid var(--glass-edge);background:color-mix(in srgb,var(--color-white) 55%,transparent);box-shadow:inset 0 1px 0 var(--color-white);font:400 24px/1 var(--font-body)}
#bag-dialog>.eyebrow{font:400 9px/1.6 var(--font-body);letter-spacing:.1em;margin:0 36px 14px 0;color:var(--color-olive)}
#bag-dialog h2{font:400 38px/1.12 var(--font-display);letter-spacing:-.02em;margin:0 0 18px}
#bag-dialog .bag-empty{padding:44px 12px 12px}
#bag-dialog .bag-empty>p{font:400 26px/1.3 var(--font-display);margin:0 auto 24px}
#bag-dialog .button{min-height:46px;border-radius:999px;padding:12px 20px;font:500 11px/1.5 var(--font-body)}
#bag-dialog #bag-items{margin-top:10px}
#bag-dialog .bag-item{grid-template-columns:80px minmax(0,1fr);gap:18px;padding:22px 0;border-color:color-mix(in srgb,var(--color-olive) 16%,transparent)}
#bag-dialog .bag-item img{width:80px;border-radius:12px;border:1px solid var(--glass-edge)}
#bag-dialog .bag-item h3{font:400 23px/1.2 var(--font-display);margin:0 0 7px}
#bag-dialog .bag-item p{font-size:10px;line-height:1.6;margin-bottom:10px}
#bag-dialog .quantity-controls{gap:8px;flex-wrap:wrap;font-size:12px}
#bag-dialog .quantity-controls button{width:36px;height:36px;border-radius:50%;border:1px solid var(--glass-edge);background:color-mix(in srgb,var(--color-white) 38%,transparent)}
#bag-dialog .quantity-controls .remove-item{width:auto;border:0;background:none;padding:6px 0;min-height:36px;font-size:10px}
#bag-dialog .bag-total{padding:24px 0 6px;align-items:baseline;font-size:12px}
#bag-dialog .bag-total strong{font:400 25px/1.2 var(--font-body);letter-spacing:-.03em}
#bag-dialog .small-copy{font-size:10px!important;line-height:1.8;margin-top:10px}
#bag-dialog .bag-feedback{border-radius:14px;border:1px solid var(--glass-edge);background:color-mix(in srgb,var(--color-white) 45%,transparent);font-size:11px;line-height:1.8}
@media(max-width:800px){.commerce-main .shop-intro{gap:32px;padding:36px;grid-template-columns:1fr 1fr}.commerce-main .shop-intro-note{padding-left:24px}.commerce-main .shop-intro-note>p:first-child{font-size:14px}}
@media(max-width:600px){.commerce-main .shop-intro{margin-top:26px;margin-bottom:20px;padding:28px 24px;grid-template-columns:1fr;gap:26px;border-radius:26px}.commerce-main .shop-intro .eyebrow{font-size:8px;margin-bottom:18px}.commerce-main .shop-intro h1{font-size:clamp(38px,11vw,50px)}.commerce-main .shop-intro-note{border-left:0;border-top:1px solid color-mix(in srgb,var(--color-olive) 15%,transparent);padding:22px 0 0}.commerce-main .shop-intro-note>p:first-child{margin-bottom:16px;max-width:none}.commerce-main .shop-toolbar{flex-direction:column;align-items:stretch;padding:8px;gap:7px;margin-bottom:22px;border-radius:20px}.commerce-main .shop-filters{display:grid;grid-template-columns:repeat(4,1fr);gap:3px}.commerce-main .shop-filters button{font-size:10px;padding:10px 5px;white-space:nowrap}.commerce-main .shop-toolbar>p{text-align:right;font-size:9px;padding:0 8px 4px}#bag-dialog{max-width:calc(100vw - 24px);max-height:calc(100dvh - 24px);margin:auto;padding:34px 22px 24px;border-radius:24px}#bag-dialog h2{font-size:34px}#bag-dialog>.eyebrow{font-size:8px;max-width:28ch}#bag-dialog .bag-empty{padding:34px 0 6px}#bag-dialog .bag-item{grid-template-columns:64px minmax(0,1fr);gap:12px}#bag-dialog .bag-item img{width:64px}#bag-dialog .bag-item h3{font-size:21px}#bag-dialog .quantity-controls{gap:6px}#bag-dialog .quantity-controls button{width:32px;height:32px}#bag-dialog .quantity-controls .remove-item{width:auto;margin-left:0;padding-left:6px}}
@media(prefers-reduced-transparency:reduce),(prefers-contrast:more){#bag-dialog,.commerce-main .shop-intro,.commerce-main .shop-toolbar{background:var(--color-white);backdrop-filter:none;-webkit-backdrop-filter:none}}

/* Match the header brand lockup in the consulting introduction. */
#triple-ivy .consulting-card-top{margin-bottom:26px;flex-wrap:wrap;gap:12px}
#triple-ivy .consulting-brand{display:flex;align-items:center;gap:12px;flex:none}
#triple-ivy .consulting-brand .brand-quill{position:static;width:46px;height:58px;object-fit:contain}
#triple-ivy .consulting-brand .brand-type{display:flex;flex-direction:column;padding-bottom:2px}
#triple-ivy .consulting-brand .brand-title{font:500 16px/1.2 var(--font-body);letter-spacing:.17em;text-transform:uppercase;color:var(--color-ink);transform:translateY(5px)}
#triple-ivy .consulting-brand .brand-descriptor{font:400 8px/1.55 var(--font-body);letter-spacing:.015em;margin-top:6px;color:var(--color-olive)}
@media(max-width:600px){#triple-ivy .consulting-card-top{margin-bottom:24px}#triple-ivy .consulting-brand{gap:8px}#triple-ivy .consulting-brand .brand-quill{width:38px;height:48px}#triple-ivy .consulting-brand .brand-title{font-size:14px}#triple-ivy .consulting-brand .brand-descriptor{font-size:7px}#triple-ivy .consulting-card-top .remote-badge{margin-left:auto}}

/* The archive opens once; every complete quote is immediately readable. */
#triple-ivy .testimonials-more>summary{padding:30px 32px}
#triple-ivy .testimonials-archive{display:block;max-width:none;padding:4px 32px 16px;margin:0}
#triple-ivy .testimonials-archive .archive-story{display:grid;grid-template-columns:minmax(190px,.8fr) minmax(0,1.5fr);align-items:start;gap:40px;background:transparent;border:0;border-bottom:1px solid color-mix(in srgb,var(--color-olive) 17%,transparent);border-radius:0;box-shadow:none;padding:32px 12px;margin:0;overflow:visible}
#triple-ivy .testimonials-archive .archive-story:last-child{border-bottom:0}
#triple-ivy .archive-story-heading{display:grid;grid-template-columns:26px minmax(0,1fr);gap:10px 14px;align-items:baseline}
#triple-ivy .archive-number{grid-column:1;grid-row:1;font:400 10px/1.4 var(--font-mono);color:var(--color-olive);letter-spacing:.04em}
#triple-ivy .archive-person-name{grid-column:2;grid-row:1;font:400 23px/1.25 var(--font-display);letter-spacing:-.015em;text-wrap:pretty}
#triple-ivy .archive-person-context{grid-column:2;grid-row:2;font:400 11px/1.7 var(--font-body);color:var(--color-olive);max-width:38ch;text-wrap:pretty}
#triple-ivy .testimonials-archive .testimonial-full{margin:0;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}
#triple-ivy .testimonials-archive .testimonial-full blockquote p{max-width:68ch;margin:0;font-size:17px;line-height:1.85;text-wrap:pretty}
#triple-ivy .testimonials-archive .testimonial-full figcaption{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
@media(max-width:850px){#triple-ivy .testimonials-archive .archive-story{grid-template-columns:minmax(165px,.75fr) minmax(0,1.5fr);gap:24px;padding-inline:0}#triple-ivy .archive-person-name{font-size:21px}}
@media(max-width:600px){#triple-ivy .testimonials-more>summary{padding:24px 20px;gap:12px}#triple-ivy .testimonials-more .archive-title{font-size:24px}#triple-ivy .testimonials-more .archive-hint{max-width:none}#triple-ivy .testimonials-more .archive-hint>.when-open,#triple-ivy .testimonials-more .archive-hint>.when-closed{display:none}#triple-ivy .testimonials-archive{padding:0 20px 8px}#triple-ivy .testimonials-archive .archive-story{grid-template-columns:1fr;gap:20px;padding:26px 0}#triple-ivy .archive-story-heading{grid-template-columns:20px minmax(0,1fr);gap:7px 12px}#triple-ivy .archive-person-name{font-size:23px}#triple-ivy .testimonials-archive .testimonial-full blockquote p{font-size:16px;line-height:1.8}}

/* Book information: title, reading area, and publisher action form distinct groups. */
#book .book-copy{min-width:0}
#book .book-heading{padding-bottom:26px;border-bottom:1px solid color-mix(in srgb,var(--color-olive) 20%,transparent)}
#book .book-copy .book-publisher{margin:0;font-size:10px;letter-spacing:.07em}
#book .book-copy h2{margin:18px 0 16px}
#book .book-subtitle{max-width:38ch;margin:0}
#book .book-tabs{display:grid;grid-template-columns:1fr 1fr;width:100%;margin:22px 0 0;padding:5px;border-radius:16px;gap:5px;background:color-mix(in srgb,var(--color-white) 22%,transparent)}
#book .book-tabs a{min-height:44px;padding:12px 16px;border-radius:11px;font-size:11px}
#book .book-tabs a[aria-selected=true]{box-shadow:inset 0 1px 0 var(--color-white),0 4px 12px color-mix(in srgb,var(--color-ink) 7%,transparent)}
#book .book-introduction{margin:26px 0 0;padding-left:20px;border-left:2px solid color-mix(in srgb,var(--color-olive) 40%,transparent);max-width:55ch;font-size:14px;line-height:1.85}
#book .book-introduction strong{font:500 17px/1.5 var(--font-body);letter-spacing:-.02em;margin-bottom:12px;max-width:30ch;color:var(--color-ink)}
#book .book-purchase{display:grid;grid-template-columns:minmax(95px,1fr) auto;align-items:center;gap:20px;margin-top:28px;padding:18px 20px;border:1px solid var(--glass-edge);border-radius:18px;background:linear-gradient(120deg,color-mix(in srgb,var(--color-white) 55%,transparent),color-mix(in srgb,var(--color-white) 18%,transparent));box-shadow:inset 0 1px 0 var(--color-white)}
#book .book-edition{grid-column:1;grid-row:1;display:grid;gap:3px;font:400 11px/1.5 var(--font-body);color:var(--color-olive)}
#book .book-edition strong{font-size:13px;font-weight:500;color:var(--color-ink)}
#book .book-purchase .button{grid-column:2;grid-row:1;width:auto;min-height:44px;padding:12px 18px;gap:20px;font-size:11px;white-space:normal;text-align:left}
#book .book-story{margin-top:18px;border-top:0;border-bottom:1px solid color-mix(in srgb,var(--color-olive) 20%,transparent)}
#book .book-story>summary{padding:15px 0;min-height:56px;gap:20px;font-size:11px}
#book .book-story-content{padding:18px 0 24px}
@media(min-width:761px) and (max-width:1100px){#book .book-purchase{grid-template-columns:1fr}#book .book-purchase .button{grid-column:1;grid-row:2;width:100%;justify-content:space-between}#book .book-edition{display:flex;align-items:baseline;gap:12px}}
@media(max-width:600px){#book .book-heading{padding-bottom:22px}#book .book-copy .book-publisher{font-size:9px;letter-spacing:.035em}#book .book-tabs{margin-top:20px}#book .book-tabs a{font-size:10px;padding-inline:8px}#book .book-introduction{padding-left:14px;margin-top:24px;font-size:13px}#book .book-introduction strong{font-size:16px;line-height:1.5}#book .book-purchase{grid-template-columns:1fr;gap:14px;padding:16px}#book .book-edition{display:flex;align-items:baseline;justify-content:space-between;gap:12px}#book .book-purchase .button{grid-column:1;grid-row:2;width:100%;justify-content:space-between;padding-inline:15px;font-size:10px}#book .book-story>summary{font-size:10px;gap:12px}}
@media(prefers-reduced-transparency:reduce),(prefers-contrast:more){#book .book-purchase{background:var(--color-white)}}

/* Precisely centered vector play icons on circular smoked-glass controls. */
#speaking .media-library .media-choice{padding-right:60px}
#speaking .media-library .media-choice-icon{position:absolute;right:16px;top:50%;transform:translateY(-50%);display:grid;place-items:center;width:34px;height:34px;min-width:34px;flex:0 0 34px;border-radius:50%;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);transition:background 220ms ease,box-shadow 220ms ease,scale 220ms ease;box-shadow:inset 0 1px 0 color-mix(in srgb,var(--color-white) 26%,transparent),0 3px 10px color-mix(in srgb,var(--color-cinema) 22%,transparent)}
#speaking .media-play-glyph{display:block;width:16px;height:16px;flex:none}
#speaking .media-library .play-disc{display:grid;place-items:center}
#speaking .play-disc .media-play-glyph{width:22px;height:22px}
#speaking .media-library .media-choice[aria-pressed=true] .media-choice-icon{color:var(--color-cinema)!important;background:linear-gradient(145deg,var(--color-white),color-mix(in srgb,var(--color-white) 78%,transparent))!important;border-color:var(--glass-edge)!important}
#speaking #media-play>span:last-child{display:grid;place-items:center}
@media(hover:hover) and (pointer:fine){#speaking .media-library .media-choice:hover .media-choice-icon{scale:1.08;box-shadow:inset 0 1px 0 color-mix(in srgb,var(--color-white) 50%,transparent),0 0 18px color-mix(in srgb,var(--color-white) 12%,transparent)}}
#speaking .media-library .media-choice:active .media-choice-icon{scale:.96}
@media(max-width:600px){#speaking .media-library .media-choice{padding-right:52px}#speaking .media-library .media-choice-icon{width:30px;height:30px;min-width:30px;right:12px}}
@media(prefers-reduced-motion:reduce){#speaking .media-library .media-choice-icon{transition:none;scale:1}}
@media(max-width:600px){#speaking .media-library .media-choice{grid-template-columns:60px minmax(0,1fr);column-gap:10px}#speaking .media-library .media-choice-cover{width:60px}}

/* Portrait caption: quiet typography, one alignment, and a clear credential hierarchy. */
#home .hero-portrait figcaption{display:flex;flex-direction:column;align-items:flex-start;gap:0;padding:24px 20px 22px;text-align:left}
#home .hero-portrait figcaption .portrait-name{display:block;font:400 clamp(21px,1.75vw,25px)/1.3 var(--font-body);letter-spacing:-.035em;text-transform:none;margin:0;color:var(--color-ink)}
#home .hero-portrait figcaption .portrait-roles{display:flex;align-items:center;flex-wrap:wrap;gap:0 9px;font:500 13px/1.6 var(--font-body);letter-spacing:0;text-transform:none;color:var(--color-olive);margin:10px 0 0;padding:0;border:0;border-radius:0;background:none;box-shadow:none}
#home .hero-portrait figcaption .portrait-roles>span{display:inline;font:400 13px/1.6 var(--font-body);letter-spacing:0;margin:0;color:var(--color-olive)}
#home .hero-portrait figcaption .hero-affiliation{display:block;width:100%;max-width:none;padding-top:15px;margin:17px 0 0;border-top:1px solid color-mix(in srgb,var(--color-olive) 16%,transparent);font:400 11px/1.65 var(--font-body);letter-spacing:0;text-transform:none;color:var(--color-olive)}
@media(max-width:850px){#home .hero-portrait figcaption{padding:21px 14px 20px}#home .hero-portrait figcaption .portrait-name{font-size:20px}#home .hero-portrait figcaption .portrait-roles{font-size:11px;gap:0 6px}#home .hero-portrait figcaption .hero-affiliation{font-size:10px}}
@media(max-width:600px){#home .hero-portrait figcaption .portrait-name{font-size:22px}#home .hero-portrait figcaption .portrait-roles{font-size:12px;gap:0 7px}}
@media(max-width:360px){#home .hero-portrait figcaption{padding:20px 10px 18px}#home .hero-portrait figcaption .portrait-name{font-size:19px}#home .hero-portrait figcaption .portrait-roles{font-size:10px;gap:0 5px}}

/* The collection introduction is a single, uninterrupted title card. */
.commerce-main .shop-intro{grid-template-columns:1fr;gap:0}

/* Product imagery, details, and action sit within one luminous glass surface. */
.commerce-main .shop-grid{gap:26px;align-items:stretch}
.commerce-main .product-card{display:flex;flex-direction:column;min-width:0;padding:10px 10px 16px;border:1px solid color-mix(in srgb,var(--color-white) 85%,transparent);border-radius:28px;background:radial-gradient(ellipse at 0 0,color-mix(in srgb,var(--color-white) 62%,transparent),transparent 70%),linear-gradient(145deg,color-mix(in srgb,var(--color-white) 32%,transparent),color-mix(in srgb,var(--color-white) 14%,transparent));backdrop-filter:blur(16px) saturate(115%);-webkit-backdrop-filter:blur(16px) saturate(115%);box-shadow:inset 0 1px 0 var(--color-white),inset 0 -1px 0 color-mix(in srgb,var(--color-white) 35%,transparent),0 14px 30px -20px color-mix(in srgb,var(--color-ink) 26%,transparent);transition:transform 380ms var(--interaction-ease),box-shadow 380ms var(--interaction-ease),border-color 250ms ease}
.commerce-main .product-card[hidden]{display:none}
.commerce-main .product-card .product-image-button{border:1px solid color-mix(in srgb,var(--color-white) 70%,transparent);border-radius:19px;background:color-mix(in srgb,var(--color-white) 30%,transparent);isolation:isolate}
.commerce-main .product-card .product-image-button img{border-radius:inherit;object-fit:contain}
.commerce-main .product-card .product-info{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:12px;padding:20px 12px 0}
.commerce-main .product-card .product-info h2{font:400 clamp(21px,1.9vw,26px)/1.2 var(--font-display);letter-spacing:-.02em;text-transform:none;text-wrap:pretty}
.commerce-main .product-card .product-info p{font-size:11px;line-height:1.6;margin-top:7px}
.commerce-main .product-card .product-price{margin:0;padding:0;font:500 12px/1.5 var(--font-body);font-variant-numeric:tabular-nums;color:var(--color-olive)}
.commerce-main .product-card .product-shop-button{width:calc(100% - 24px);margin:20px 12px 0;min-height:44px;padding:12px 16px;font-size:11px;gap:16px}
.commerce-main .product-card .product-info{flex:1}
.commerce-main .product-card:focus-within{border-color:var(--color-white);box-shadow:inset 0 1px 0 var(--color-white),0 12px 30px -16px color-mix(in srgb,var(--color-ink) 30%,transparent)}
.commerce-main .product-card button:focus-visible{outline:2px solid var(--color-olive);outline-offset:3px}
@media(hover:hover) and (pointer:fine){.commerce-main .product-card:hover{transform:translateY(-4px);border-color:var(--color-white);box-shadow:inset 0 1px 0 var(--color-white),inset 0 -1px 0 color-mix(in srgb,var(--color-white) 45%,transparent),0 24px 40px -24px color-mix(in srgb,var(--color-ink) 35%,transparent)}}
@media(max-width:800px){.commerce-main .shop-grid{gap:20px}.commerce-main .product-card{border-radius:24px;padding:8px 8px 14px}.commerce-main .product-card .product-image-button{border-radius:16px}.commerce-main .product-card .product-info{padding:18px 10px 0;gap:8px}.commerce-main .product-card .product-shop-button{width:calc(100% - 20px);margin-inline:10px;padding-inline:14px}}
@media(max-width:480px){.commerce-main .shop-grid{grid-template-columns:1fr;gap:24px}.commerce-main .product-card{padding:10px 10px 18px;border-radius:26px}.commerce-main .product-card .product-image-button{border-radius:18px}.commerce-main .product-card .product-info h2{font-size:25px}.commerce-main .product-card .product-shop-button{margin-top:18px}}
@media(prefers-reduced-motion:reduce){.commerce-main .product-card{transition:none}.commerce-main .product-card:hover{transform:none}}
@media(prefers-reduced-transparency:reduce),(prefers-contrast:more){.commerce-main .product-card{background:var(--color-white);backdrop-filter:none;-webkit-backdrop-filter:none}}

/* The collection closing note shares the shop's glass frame. */
.commerce-main .shop-closing{margin-block:56px;padding:40px 44px;border:1px solid color-mix(in srgb,var(--color-white) 88%,transparent);border-radius:30px;background:radial-gradient(ellipse at 0 0,color-mix(in srgb,var(--color-white) 62%,transparent),transparent 70%),linear-gradient(135deg,color-mix(in srgb,var(--color-white) 30%,transparent),color-mix(in srgb,var(--color-white) 12%,transparent));box-shadow:inset 0 1px 0 var(--color-white),inset 0 -1px 0 color-mix(in srgb,var(--color-white) 35%,transparent),0 16px 38px -22px color-mix(in srgb,var(--color-ink) 18%,transparent);backdrop-filter:blur(16px) saturate(115%);-webkit-backdrop-filter:blur(16px) saturate(115%);gap:20px 56px}
.commerce-main .shop-closing .eyebrow{font:400 10px/1.6 var(--font-body);letter-spacing:.12em}
.commerce-main .shop-closing h2{font-weight:400}
.commerce-main .shop-closing p{font-size:13px;line-height:1.85}
.commerce-main .shop-closing a{min-height:44px;display:inline-flex;align-items:center;font-size:11px}
@media(max-width:800px){.commerce-main .shop-closing{padding:32px;gap:20px 32px}.commerce-main .shop-closing h2{font-size:36px}}
@media(max-width:600px){.commerce-main .shop-closing{padding:28px 24px;margin-block:32px;border-radius:26px;grid-template-columns:1fr;gap:18px}.commerce-main .shop-closing h2{grid-row:auto;font-size:34px}.commerce-main .shop-closing p{font-size:12px}.commerce-main .shop-closing .eyebrow{font-size:9px}}
@media(prefers-reduced-transparency:reduce),(prefers-contrast:more){.commerce-main .shop-closing{background:var(--color-white);backdrop-filter:none;-webkit-backdrop-filter:none}}

/* Family history gives the biography's educational purpose a personal foundation. */
#biography .biography-ethos{margin-top:26px;padding:24px 0 0;border-top:1px solid color-mix(in srgb,var(--color-olive) 20%,transparent);max-width:62ch}
#biography .biography-ethos h3{font:400 27px/1.2 var(--font-display);letter-spacing:-.015em;margin:0 0 14px}
#biography .biography-ethos p{font:400 13px/1.9 var(--font-body);margin:0 0 12px;max-width:62ch}
#biography .biography-ethos-sources{display:flex;flex-wrap:wrap;gap:4px 24px;margin-top:4px}
#biography .biography-ethos-sources a{display:inline-flex;align-items:center;gap:8px;min-height:44px;font:400 10px/1.6 var(--font-body);color:var(--color-olive);text-underline-offset:4px;text-decoration-thickness:1px}
#biography .biography-ethos-sources a:hover{color:var(--color-ink)}
@media(max-width:600px){#biography .biography-ethos{margin-top:22px;padding-top:22px}#biography .biography-ethos h3{font-size:25px}#biography .biography-ethos-sources{gap:0 18px}}

/* A small family album supports the personal history within the biography. */
#biography .biography-family-album{margin:20px 0 24px;max-width:440px}
#biography .biography-family-images{display:grid;grid-template-columns:1fr 1fr;gap:14px}
#biography .biography-family-images img{display:block;width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;object-position:center 35%;padding:5px;border:1px solid var(--glass-edge);border-radius:16px;background:color-mix(in srgb,var(--color-white) 38%,transparent);box-shadow:inset 0 1px 0 var(--color-white),0 10px 24px -14px color-mix(in srgb,var(--color-ink) 28%,transparent)}
@media(max-width:600px){#biography .biography-family-images{gap:10px}#biography .biography-family-images img{padding:4px;border-radius:13px}#biography .biography-family-album{margin-block:18px 22px}}

/* One full-width editorial card; biography content follows normal page flow. */
#biography{padding-block:64px}
#biography .biography-grid{display:block;width:calc(100% - 80px);max-width:1360px;padding:0}
#biography .biography-story{display:block;height:auto;min-height:0;padding:0;overflow:visible;border-radius:36px}
#biography .biography-story-content{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:32px 56px;padding:44px 48px 32px}
#biography .biography-overview{min-width:0}
#biography .biography-ethos{margin:0;padding:0 0 0 40px;border-top:0;border-left:1px solid color-mix(in srgb,var(--color-ink) 14%,transparent);max-width:none}
#biography .biography-family-album{max-width:380px}
#biography .biography-socials{grid-column:1/-1;margin:0;padding-top:24px;border-top:1px solid color-mix(in srgb,var(--color-white) 55%,transparent)}
@media(max-width:1000px){#biography .biography-story-content{gap:28px;padding:36px 32px 28px}#biography .biography-ethos{padding-left:28px}}
@media(max-width:850px){#biography .biography-grid{width:calc(100% - 40px)}#biography .biography-story-content{grid-template-columns:1fr}#biography .biography-ethos{padding:28px 0 0;border-left:0;border-top:1px solid color-mix(in srgb,var(--color-ink) 14%,transparent)}#biography .biography-family-album{max-width:440px}}
@media(max-width:600px){#biography{padding-block:36px}#biography .biography-grid{width:calc(100% - 28px)}#biography .biography-story{border-radius:28px}#biography .biography-story-content{padding:30px 22px 24px;gap:26px}#biography .biography-skyline,#biography::after{height:100%}}


/* A compact entrance opens the complete, source-backed academic record. */
#cv{padding-block:48px}
#cv .cv-shell{max-width:1160px;padding:0;border-radius:28px;overflow:hidden}
#cv .cv-explorer-summary{display:flex;align-items:center;justify-content:space-between;gap:32px;padding:32px 40px;cursor:pointer;list-style:none}
#cv .cv-explorer-summary::-webkit-details-marker{display:none}
#cv .cv-explorer-summary:focus-visible{outline:2px solid var(--color-olive);outline-offset:-5px;border-radius:26px}
#cv .cv-explorer-heading .eyebrow{font:500 9px/1.5 var(--font-body);letter-spacing:.1em;color:var(--color-olive);margin-bottom:12px}
#cv .cv-explorer-heading h2{font:400 36px/1.15 var(--font-display);letter-spacing:-.02em;margin:0 0 12px}
#cv .cv-explorer-heading>p:last-child{font:400 12px/1.6 var(--font-body);margin:0}
#cv .cv-open-control{display:inline-flex;align-items:center;justify-content:space-between;gap:24px;min-height:48px;flex-shrink:0;padding:10px 12px 10px 22px;border:1px solid var(--glass-edge);border-radius:999px;background:color-mix(in srgb,var(--color-white) 54%,transparent);box-shadow:inset 0 1px 0 var(--color-white),0 8px 20px -16px var(--color-ink);font:500 11px/1.5 var(--font-body);color:var(--color-olive)}
#cv .cv-explorer-summary:hover .cv-open-control{background:color-mix(in srgb,var(--color-white) 80%,transparent)}
#cv .cv-summary-actions{display:flex;align-items:center;gap:12px;flex-shrink:0}
#cv .cv-summary-download{display:inline-flex;align-items:center;justify-content:space-between;gap:22px;min-height:48px;padding:12px 20px;border:1px solid var(--glass-edge);border-radius:999px;background:color-mix(in srgb,var(--color-white) 42%,transparent);box-shadow:inset 0 1px 0 var(--color-white);font:500 11px/1.5 var(--font-body);color:var(--color-olive);white-space:nowrap}
#cv .cv-summary-download::before{background:transparent}
#cv .cv-open-icon{position:relative;display:block;width:28px;height:28px;border-radius:50%;border:1px solid color-mix(in srgb,var(--color-olive) 15%,transparent)}
#cv .cv-open-icon::before,#cv .cv-open-icon::after{content:'';position:absolute;width:10px;height:1px;left:8px;top:13px;background:var(--color-olive)}
#cv .cv-open-icon::after{transform:rotate(90deg)}
#cv .cv-close-label{display:none}
#cv .cv-explorer[open] .cv-close-label{display:inline}
#cv .cv-explorer[open] .cv-open-label,#cv .cv-explorer[open] .cv-open-icon::after{display:none}
#cv .cv-workspace{border-top:1px solid color-mix(in srgb,var(--color-olive) 16%,transparent);padding:28px 32px 18px}
#cv .cv-workspace-tools{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:24px}
#cv .cv-search-field{flex:1;max-width:540px}
#cv .cv-search-field label,#cv .cv-mobile-browse label{display:block;font:500 10px/1.5 var(--font-body);color:var(--color-olive);margin-bottom:8px}
#cv .cv-search-box{position:relative}
#cv #cv-search-input{width:100%;min-height:46px;border:1px solid color-mix(in srgb,var(--color-olive) 22%,transparent);background:color-mix(in srgb,var(--color-white) 42%,transparent);border-radius:13px;padding:12px 48px 12px 16px;font:400 13px/1.5 var(--font-body)}
#cv #cv-search-input::-webkit-search-cancel-button{display:none}
#cv #cv-search-clear{position:absolute;right:4px;top:1px;width:44px;height:44px;background:transparent;font-size:21px;border-radius:10px;color:var(--color-olive)}
#cv .cv-pdf-link{border-radius:999px;background:color-mix(in srgb,var(--color-white) 48%,transparent);border:1px solid var(--glass-edge);box-shadow:inset 0 1px 0 var(--color-white);min-height:46px;padding:12px 18px;font:500 11px/1.5 var(--font-body);gap:24px;flex-shrink:0}
#cv .cv-browser{display:grid;grid-template-columns:220px minmax(0,1fr);gap:28px}
#cv .cv-category-nav{display:flex;flex-direction:column;gap:5px;border-right:1px solid color-mix(in srgb,var(--color-olive) 15%,transparent);padding-right:20px}
#cv .cv-category{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:44px;padding:10px 12px;border:1px solid transparent;border-radius:12px;background:none;text-align:left;font:400 11px/1.5 var(--font-body);color:var(--color-olive)}
#cv .cv-category>span:last-child{font-size:9px;font-variant-numeric:tabular-nums;opacity:.75}
#cv .cv-category[aria-pressed=true]{font-weight:600;border-color:var(--glass-edge);background:color-mix(in srgb,var(--color-white) 58%,transparent);box-shadow:inset 0 1px 0 var(--color-white)}
#cv .cv-category:hover{background:color-mix(in srgb,var(--color-white) 32%,transparent)}
#cv .cv-mobile-browse{display:none}
#cv .cv-results-panel{min-width:0}
#cv .cv-results-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:4px 10px 16px 0;border-bottom:1px solid color-mix(in srgb,var(--color-olive) 18%,transparent)}
#cv .cv-results-heading h3{font:400 24px/1.3 var(--font-display);letter-spacing:-.01em;margin:0}
#cv .cv-results-heading p{font:400 10px/1.5 var(--font-body);color:var(--color-olive);margin:0;white-space:nowrap}
#cv .cv-results-scroll{max-height:480px;overflow:auto;padding:8px 12px 12px 0;scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--color-olive) 40%,transparent) transparent;scroll-padding-block:16px}
#cv .cv-results-scroll:focus-visible{outline:2px solid var(--color-olive);outline-offset:-2px;border-radius:6px}
#cv .cv-record-group>h3{font:500 9px/1.5 var(--font-body);letter-spacing:.09em;text-transform:uppercase;color:var(--color-olive);margin:20px 0 6px}
#cv .cv-record{display:grid;grid-template-columns:100px minmax(0,1fr);gap:20px;padding:20px 0;border-bottom:1px solid color-mix(in srgb,var(--color-olive) 12%,transparent)}
#cv .cv-record:last-child{border-bottom:0}
#cv .cv-record-year{font:500 10px/1.7 var(--font-body);color:var(--color-olive)}
#cv .cv-record-copy{min-width:0}
#cv .cv-record-primary{font:500 14px/1.65 var(--font-body);margin:0;max-width:70ch;overflow-wrap:anywhere}
#cv .cv-record-detail{font:400 12px/1.8 var(--font-body);margin:8px 0 0;max-width:75ch;overflow-wrap:anywhere}
#cv .cv-record-label{font-weight:600;margin-top:16px}
#cv .cv-source-link{font:500 10px/1.7 var(--font-body);white-space:nowrap;color:var(--color-olive)}
#cv .cv-edition-note{font:400 9px/1.5 var(--font-body);color:var(--color-olive);margin:20px 0 0;padding-top:14px;border-top:1px solid color-mix(in srgb,var(--color-olive) 12%,transparent)}
#cv .cv-empty{font:400 13px/1.8 var(--font-body);padding:32px 0}
@media(max-width:1000px){#cv .cv-explorer-summary{padding:30px}#cv .cv-workspace{padding:24px}#cv .cv-browser{grid-template-columns:190px minmax(0,1fr);gap:20px}#cv .cv-category-nav{padding-right:14px}#cv .cv-category{padding:10px 8px;font-size:10px}#cv .cv-record{grid-template-columns:80px minmax(0,1fr);gap:14px}}
@media(max-width:760px){#cv .cv-category-nav{display:none}#cv .cv-mobile-browse{display:block}#cv .cv-browser{grid-template-columns:1fr;gap:20px}#cv .cv-mobile-browse select{width:100%;min-height:46px;border:1px solid color-mix(in srgb,var(--color-olive) 22%,transparent);border-radius:12px;background:color-mix(in srgb,var(--color-white) 45%,transparent);padding:10px 14px;font:400 14px/1.5 var(--font-body)}#cv .cv-results-scroll{max-height:440px}#cv .cv-workspace-tools{align-items:stretch;flex-direction:column;gap:14px}#cv .cv-search-field{max-width:none}#cv .cv-pdf-link{align-self:flex-start}}
@media(max-width:600px){#cv{padding-block:28px}#cv .cv-shell{border-radius:24px}#cv .cv-explorer-summary{align-items:flex-start;flex-direction:column;gap:20px;padding:26px 24px}#cv .cv-explorer-heading h2{font-size:31px}#cv .cv-explorer-heading>p:last-child{font-size:12px}#cv .cv-open-control{width:100%}#cv .cv-workspace{padding:22px 20px 16px}#cv #cv-search-input{font-size:16px}#cv .cv-record{grid-template-columns:1fr;gap:6px;padding:18px 0}#cv .cv-record-primary{font-size:13px}#cv .cv-record-detail{font-size:12px}#cv .cv-results-heading h3{font-size:23px}}
@media print{#cv .cv-category-nav,#cv .cv-workspace-tools,#cv .cv-mobile-browse,#cv .cv-open-control,#cv .cv-results-heading{display:none}#cv .cv-browser{display:block}#cv .cv-results-scroll{max-height:none;overflow:visible}#cv .cv-record-group[hidden],#cv .cv-record[hidden]{display:block!important}}
@media(max-width:760px){#cv .cv-explorer-summary{align-items:flex-start;flex-direction:column;gap:20px}#cv .cv-summary-actions{width:100%;justify-content:flex-start}}
@media(max-width:600px){#cv .cv-summary-actions{gap:8px}#cv .cv-open-control,#cv .cv-summary-download{flex:1;min-width:0;width:auto;font-size:10px;gap:8px;padding-inline:12px}#cv .cv-open-icon{width:24px;height:24px;flex:0 0 24px}#cv .cv-open-icon::before,#cv .cv-open-icon::after{left:6px;top:11px}}
@media print{#cv .cv-summary-actions,#cv .cv-summary-download{display:none}}
/* The PDF link is a separate action alongside the native disclosure. */
#cv .cv-shell{position:relative;--cv-download-top:58px;--cv-download-width:12rem;--cv-download-height:50px}
#cv .cv-explorer-summary{flex-wrap:wrap}
#cv .cv-summary-actions{margin-left:auto;padding-right:calc(var(--cv-download-width) + 16px)}
#cv .cv-summary-download{position:absolute;right:40px;top:var(--cv-download-top,58px)}
@media(max-width:1000px){#cv .cv-summary-download{right:30px}}
@media(max-width:760px){#cv .cv-summary-actions{justify-content:flex-end}#cv .cv-summary-download{top:var(--cv-download-top,158px)}}
@media(max-width:600px){
 #cv .cv-explorer-summary{padding-bottom:calc(26px + var(--cv-download-height) + 16px)}
 #cv .cv-summary-actions{padding-right:0;justify-content:flex-start}
 #cv .cv-open-control{flex:1;min-width:0;width:100%}
 #cv .cv-summary-download{left:25px;right:25px;width:auto;top:var(--cv-download-top,180px)}
}
/* Soft focus behind the consulting copy fades before the people. */
#triple-ivy .consulting-soft-focus{pointer-events:none;mask-image:linear-gradient(90deg,var(--color-ink) 0%,var(--color-ink) 28%,transparent 46%);-webkit-mask-image:linear-gradient(90deg,var(--color-ink) 0%,var(--color-ink) 28%,transparent 46%)}
#triple-ivy .consulting-soft-focus img{filter:blur(7px);transform:scale(1.06);transform-origin:center}
@media(max-width:1100px){#triple-ivy .consulting-soft-focus{display:none}}
/* Match the contact card's responsive width. */
@media(max-width:1050px){#cv .cv-shell{max-width:720px}}
/* Client-reviewed wording and standalone header mark. */
.site-header .wordmark{flex:0 0 52px;justify-content:center;padding:0;min-width:52px}
.site-header .wordmark .brand-quill{width:38px;height:48px}
#home .hero-portrait figcaption .hero-affiliation{display:flex;flex-direction:column;gap:5px}
#home .hero-portrait figcaption .hero-affiliation>span{font:400 11px/1.65 var(--font-body);letter-spacing:0;text-transform:none;color:var(--color-olive)}
.contact-independence{font:400 10px/1.6 var(--font-body);color:var(--color-olive);margin-top:10px}
@media(max-width:600px){.site-header .wordmark{flex-basis:40px;min-width:40px}.site-header .wordmark .brand-quill{width:32px;height:42px}#home .hero-portrait figcaption .hero-affiliation>span{font-size:10px}}

/* Compact credentials keep the opening composition within a desktop viewport. */
#home .hero-portrait figcaption{padding:18px 18px 16px}
#home .hero-portrait figcaption .portrait-name{font-size:22px;line-height:1.3}
#home .hero-portrait figcaption .portrait-roles{margin-top:5px;font-size:12px;line-height:1.5;gap:0 7px}
#home .hero-portrait figcaption .portrait-roles>span{font-size:12px;line-height:1.5}
#home .hero-portrait figcaption .hero-affiliation{margin-top:12px;padding-top:12px;gap:4px}
#home .hero-portrait figcaption .hero-affiliation>span{margin:0;font-size:11px;line-height:1.6}
@media(min-width:601px){
 #home{padding-block:24px}
 #home .hero-grid{min-height:0;padding-top:22px;grid-template-columns:minmax(0,1.3fr) minmax(0,.85fr)}
 #home .hero-copy{padding-block:20px}
 #home .hero-eyebrow{margin-bottom:22px}
 #home h1{font-size:clamp(42px,4.5vw,72px);line-height:1.02}
 #home .hero-subline{margin-top:24px;line-height:1.7}
 #home .hero-actions{margin-top:24px}
 #home .hero-portrait{padding:8px 8px 0}
 #home .hero-portrait>img{height:clamp(220px,calc(100svh - 475px),420px);object-position:center 32%}
 #home .hero-footer{margin-top:18px;padding-block:12px 16px}
 #home .hero-footer a{min-height:40px}
}
@media(min-width:601px) and (max-width:1050px){
 #home .hero-grid{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);padding-left:32px;gap:0 24px}
 #home .hero-portrait figcaption{padding-inline:12px}
 #home .hero-portrait figcaption .portrait-name{font-size:20px}
}
@media(max-width:600px){
 #home .hero-portrait figcaption{padding:18px 12px 16px}
 #home .hero-portrait figcaption .portrait-name{font-size:21px}
 #home .hero-portrait figcaption .hero-affiliation>span{font-size:11px}
}

/* Mobile review: keep complete subject crops above the cards; desktop is unchanged. */
@media screen and (max-width:700px){
 #triple-ivy .section-image-hero,#speaking .section-image-hero{display:block;padding-block:0 28px;min-height:0}
 #triple-ivy .section-hero-art:not(.consulting-soft-focus),#speaking .section-hero-art{position:relative;inset:auto;display:block;width:100%;height:auto;aspect-ratio:4/3}
 #triple-ivy .section-hero-art:not(.consulting-soft-focus) img,#speaking .section-hero-art img{display:block;width:100%;height:100%;object-fit:contain;object-position:center}
 #triple-ivy .section-image-hero::after,#speaking .section-image-hero::after{display:none}
 #triple-ivy .section-image-hero>.container,#speaking .section-image-hero>.container{position:relative;margin-top:-12px}
}
@media screen and (max-width:600px){
 #contact .contact-copy{grid-template-columns:minmax(0,1fr) 96px}
 #contact .contact-logo-stage{grid-row:3;align-self:start;justify-self:center;width:96px;height:122px;margin-top:-16px}
 #contact .contact-logo-sculpture{width:96px}
 #contact .contact-logo-stage::after{bottom:-5px;left:12%;width:76%;height:12px}
 #contact .contact-logo-motion{bottom:-25px;right:0}
}

/* Quiet, consistent interaction motion. No entrance delays or pointer tracking. */
:root{--interaction-ease:cubic-bezier(.22,1,.36,1);--interaction-duration:420ms}
#services .offering-card::before,.feature-card::before{display:none}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
 body .button,body button[type=submit],.site-header nav a,.social-tile,.carousel-controls button,.praise-controls button,.book-view-controls button,.book-tabs a,.shop-filters button,#cv .cv-filter{transition:transform 320ms var(--interaction-ease),box-shadow var(--interaction-duration) var(--interaction-ease),background-color 280ms ease,border-color 280ms ease,color 220ms ease}
 #services .offering-card,.feature-card,#triple-ivy .testimonial-story,#speaking .media-panel,.preview-piece a{transition:transform 480ms var(--interaction-ease),box-shadow 480ms var(--interaction-ease),border-color 320ms ease}
 #services .offering-card:hover,.feature-card:hover,#triple-ivy .testimonials-featured>.testimonial-story:not([open]):hover,#speaking .media-panel:hover{transform:translateY(-4px);border-color:var(--color-white);box-shadow:inset 0 1px 0 var(--color-white),inset 0 -1px 0 color-mix(in srgb,var(--color-olive) 7%,transparent),0 20px 38px -18px color-mix(in srgb,var(--color-ink) 20%,transparent)}
 body .button:hover,body button[type=submit]:not(:disabled):hover,.social-tile:hover{transform:translateY(-2px)}
 body .button:active,body button[type=submit]:not(:disabled):active,.social-tile:active{transform:translateY(0) scale(.985);transition-duration:100ms}
 .button .arrow,.text-link .arrow,.product-shop-button>span:last-child,.social-arrow{transition:transform 400ms var(--interaction-ease)}
 .button:hover .arrow,.text-link:hover .arrow,.product-shop-button:hover>span:last-child,.social-tile:hover .social-arrow{transform:translateX(4px)}
 .site-header nav a:hover{transform:translateY(-1px);box-shadow:inset 0 1px 0 var(--color-white),0 5px 12px color-mix(in srgb,var(--color-ink) 5%,transparent)}
 .carousel-controls button:not(:disabled):hover,.praise-controls button:not(:disabled):hover,.book-view-controls button:hover,.book-tabs a:hover,.shop-filters button:hover,#cv .cv-filter:hover{transform:translateY(-2px);background:color-mix(in srgb,var(--color-white) 80%,transparent);box-shadow:0 5px 14px -6px color-mix(in srgb,var(--color-ink) 16%,transparent)}
 .preview-piece img,.product-image-button img,#speaking .media-choice-cover img{transition:transform 700ms var(--interaction-ease)}
 .preview-piece a:hover img,.product-image-button:hover img,#speaking .media-choice:hover .media-choice-cover img{transform:scale(1.025)}
 .preview-piece a:hover{transform:translateY(-3px)}
 #speaking .media-choice{transition:transform 400ms var(--interaction-ease),background-color 300ms ease,box-shadow 400ms var(--interaction-ease),border-color 300ms ease}
 #speaking .media-choice:hover{transform:translateX(3px);box-shadow:0 8px 22px -12px color-mix(in srgb,var(--color-ink) 20%,transparent)}
 #triple-ivy .consulting-disclosures>details>summary,#triple-ivy .testimonials-more>summary,.faq-questions summary,.guide-chapter summary{transition:background-color 300ms ease,color 240ms ease}
 #triple-ivy .consulting-disclosures>details>summary:hover,#triple-ivy .testimonials-more>summary:hover,.faq-questions summary:hover{background:color-mix(in srgb,var(--color-white) 28%,transparent)}
 .disclosure-icon,.guide-plus,.testimonial-toggle>span:last-child{transition:background-color 250ms ease,box-shadow 350ms var(--interaction-ease)}
 summary:hover .disclosure-icon,summary:hover .guide-plus{background:color-mix(in srgb,var(--color-white) 60%,transparent);box-shadow:0 3px 12px color-mix(in srgb,var(--color-ink) 7%,transparent)}
 .footer-policy-nav a,.media-source,.product-shop-button{transition:color 240ms ease,text-decoration-color 240ms ease;text-decoration-color:color-mix(in srgb,currentColor 35%,transparent)}
 .footer-policy-nav a:hover,.media-source:hover,.product-shop-button:hover{color:var(--color-olive);text-decoration-color:currentColor}
}
/* Keyboard interactions keep a visible ring without moving the target. */
a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--color-olive);outline-offset:4px}
@media(hover:none),(pointer:coarse){.offering-card:hover,.feature-card:hover,.social-tile:hover,.preview-piece a:hover img,.product-image-button:hover img,#speaking .media-choice:hover .media-choice-cover img{transform:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*::before,*::after{transition-duration:0s!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.offering-card:hover,.feature-card:hover,.social-tile:hover,.preview-piece a:hover img,.product-image-button:hover img,#speaking .media-choice:hover .media-choice-cover img{transform:none!important}}

/* Six physical faces; the front, spine and back use the supplied book artwork. */
.book-360{min-width:0}
.book-360 .book-stage{perspective:1100px;touch-action:pan-y;cursor:grab;user-select:none;-webkit-user-select:none}
.book-360 .book-stage.is-dragging{cursor:grabbing}
#book .book-model,#book-cover-dialog .book-model{--book-width:clamp(205px,21vw,275px);--book-depth:calc(var(--book-width) * .132);--book-yaw:22deg;--book-pitch:-5deg;width:var(--book-width);height:calc(var(--book-width) * 1.5);aspect-ratio:auto;transform:rotateX(var(--book-pitch)) rotateY(var(--book-yaw));transform-style:preserve-3d;transition:transform 500ms cubic-bezier(.22,1,.36,1);cursor:inherit;outline-offset:16px}
#book .is-dragging .book-model,#book .is-spinning .book-model,#book-cover-dialog .is-dragging .book-model,#book-cover-dialog .is-spinning .book-model{transition:none}
.book-360 .book-face{display:block;position:absolute;inset:auto;box-shadow:none;border:0;border-radius:0;backface-visibility:hidden;-webkit-backface-visibility:hidden;overflow:hidden}
.book-360 .book-face img{width:100%;height:100%;object-fit:fill;max-width:none;pointer-events:none}
.book-360 .book-front,.book-360 .book-back{inset:0;width:100%;height:100%;border-radius:1px}
.book-360 .book-front{transform:translateZ(calc(var(--book-depth) / 2))}
.book-360 .book-back{transform:rotateY(180deg) translateZ(calc(var(--book-depth) / 2));background:var(--color-cream)}
.book-360 .book-front::after,.book-360 .book-back::after{content:"";position:absolute;inset:0;pointer-events:none;box-shadow:inset 1px 0 1px color-mix(in srgb,var(--color-white) 40%,transparent),inset -1px 0 2px color-mix(in srgb,var(--color-ink) 24%,transparent);background:linear-gradient(100deg,color-mix(in srgb,var(--color-white) 9%,transparent),transparent 15%,transparent 85%,color-mix(in srgb,var(--color-ink) 4%,transparent))}
.book-360 .book-spine{top:0;left:0;width:var(--book-depth);height:100%;transform:translateX(-50%) rotateY(-90deg);background:var(--color-ink)}
.book-360 .book-spine::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,color-mix(in srgb,var(--color-ink) 18%,transparent),transparent 30%,color-mix(in srgb,var(--color-white) 8%,transparent) 60%,color-mix(in srgb,var(--color-ink) 15%,transparent))}
.book-360 .book-pages{top:1px;left:100%;right:auto;bottom:auto;width:var(--book-depth);height:calc(100% - 2px);transform:translateX(-50%) rotateY(90deg);background:repeating-linear-gradient(90deg,var(--color-cream) 0px,var(--color-cream) 1px,var(--color-hairline) 1px,var(--color-hairline) 1.5px);border-inline:2px solid var(--color-cream)}
.book-360 .book-top,.book-360 .book-bottom{left:0;width:100%;height:var(--book-depth);background:repeating-linear-gradient(0deg,var(--color-cream) 0px,var(--color-cream) 1px,var(--color-hairline) 1px,var(--color-hairline) 1.5px);border-inline:2px solid var(--color-hairline)}
.book-360 .book-top{top:0;transform:translateY(-50%) rotateX(90deg)}
.book-360 .book-bottom{bottom:0;transform:translateY(50%) rotateX(-90deg)}
.book-360 .book-interaction-note{margin:0 auto 14px;font:400 10px/1.6 var(--font-body)}
.book-360 .book-view-controls{border-top:0;padding-top:0;margin-top:0;gap:6px}
#book .book-360 .book-view-controls button,#book-cover-dialog .book-view-controls button{font:500 10px/1.4 var(--font-body);min-height:40px;padding:10px 13px;white-space:nowrap}
.book-360 .book-view-controls button[aria-pressed=true]{outline:1px solid color-mix(in srgb,var(--color-olive) 40%,transparent);outline-offset:-1px}
.book-360 #book-enlarge{margin-left:0}
#book-cover-dialog{width:min(800px,calc(100% - 32px));padding:26px 30px;border-radius:28px;border-color:var(--glass-edge);background:var(--glass-surface);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);box-shadow:var(--glass-shadow)}
#book-cover-dialog .cover-dialog-heading{margin-bottom:8px}
#book-cover-dialog .cover-dialog-heading .eyebrow{font-size:9px;margin-bottom:7px}
#book-cover-dialog #book-cover-close{border-radius:999px;background:color-mix(in srgb,var(--color-white) 50%,transparent)}
#book-cover-dialog .book-stage{min-height:0;height:clamp(300px,62dvh,620px);padding:26px 35px 38px}
#book-cover-dialog .book-model{--book-width:min(340px,34dvh);width:var(--book-width)}
#book-cover-dialog>p{margin-top:14px;font-size:9px}
@media(max-width:1100px){#book .book-model{--book-width:225px}}
@media(max-width:760px){#book .book-model{--book-width:245px}}
@media(max-width:600px){#book .book-model{--book-width:220px}#book .book-360 .book-view-controls{gap:6px}#book .book-360 .book-view-controls button{padding:9px 11px}#book-cover-dialog{padding:20px 16px;width:calc(100% - 24px)}#book-cover-dialog .book-model{--book-width:min(240px,60vw,32dvh)}#book-cover-dialog .book-stage{height:min(55dvh,460px);padding-inline:12px}#book-cover-dialog h2{font-size:26px}.book-360 .book-interaction-note{font-size:9px}}
@media(max-width:360px){#book .book-model{--book-width:190px}.book-360 .book-view-controls{column-gap:5px}}
@media(prefers-reduced-motion:reduce){#book .book-model,#book-cover-dialog .book-model{transition:none}.book-360 [data-book-spin]{display:none}}
@media(prefers-reduced-transparency:reduce),(prefers-contrast:more){#book-cover-dialog{background:var(--color-white);backdrop-filter:none;-webkit-backdrop-filter:none}}
@media print{.book-360 .book-model{transform:none!important}.book-360 .book-face:not(.book-front){display:none}.book-360 .book-front{transform:none}}
#book-cover-dialog .book-cover-original{display:inline-flex;align-items:center;gap:10px;min-height:38px;padding:8px 14px;border:1px solid var(--glass-edge);border-radius:999px;background:color-mix(in srgb,var(--color-white) 35%,transparent);font:500 10px/1.5 var(--font-body);text-decoration:none}

/* Three logo-derived art directions share one editorial and glass system. */
:root {
  --palette-pigment:var(--brand-ivy);
  --palette-ink:var(--brand-ivy-ink);
  --palette-action:var(--brand-ivy);
  --palette-on-action:var(--brand-paper);
  --color-olive:var(--palette-ink);
  --color-cream:color-mix(in srgb,var(--palette-pigment) 4%,var(--brand-paper));
  --color-hairline:color-mix(in srgb,var(--palette-pigment) 17%,var(--brand-paper));
  --palette-glass:linear-gradient(125deg,color-mix(in srgb,var(--brand-paper) 91%,transparent),color-mix(in srgb,var(--palette-pigment) 6%,var(--brand-paper)));
}
:root[data-palette="cobalt"] {--palette-pigment:var(--brand-cobalt);--palette-ink:var(--brand-cobalt-ink);--palette-action:color-mix(in srgb,var(--brand-cobalt) 85%,var(--brand-neutral-ink));}
:root[data-palette="ember"] {--palette-pigment:var(--brand-ember);--palette-ink:var(--brand-ember-ink);--palette-action:var(--brand-ember);--palette-on-action:var(--brand-neutral-ink);}

body {
  background:radial-gradient(ellipse 64vw 760px at 100% 0,color-mix(in srgb,var(--palette-pigment) 15%,transparent),transparent 80%),radial-gradient(ellipse 85vw 950px at 0 55%,color-mix(in srgb,var(--palette-pigment) 5%,transparent),transparent 76%),var(--color-cream);
  background-repeat:no-repeat;
}
.site-header {border-color:color-mix(in srgb,var(--palette-pigment) 12%,var(--brand-paper));box-shadow:inset 0 1px 0 var(--color-white),0 10px 34px -18px color-mix(in srgb,var(--palette-pigment) 28%,transparent);}
.site-header nav a[aria-current] {color:var(--palette-ink);background:color-mix(in srgb,var(--palette-pigment) 10%,var(--brand-paper));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--palette-pigment) 13%,transparent);}

/* A compact, keyboard-accessible art-direction selector. */
.palette-picker {position:relative;flex:none;margin-left:2px;}
.palette-picker>summary {display:flex;align-items:center;gap:10px;list-style:none;cursor:pointer;min-height:44px;padding:8px 12px;border:1px solid color-mix(in srgb,var(--palette-pigment) 16%,transparent);border-radius:999px;background:color-mix(in srgb,var(--brand-paper) 66%,transparent);font:500 11px/1.4 var(--font-body);color:var(--palette-ink);}
.palette-picker>summary::-webkit-details-marker {display:none;}
.palette-picker[open]>summary {background:var(--brand-paper);box-shadow:0 0 0 3px color-mix(in srgb,var(--palette-pigment) 8%,transparent);}
.palette-trio {display:flex;align-items:center;padding-right:1px;}
.palette-trio i {display:block;width:13px;height:13px;border-radius:50%;border:1.5px solid var(--brand-paper);}
.palette-trio i+i {margin-left:-4px;}
.swatch-ivy {background:var(--brand-ivy);}
.swatch-cobalt {background:var(--brand-cobalt);}
.swatch-ember {background:var(--brand-ember);}
.palette-chevron {width:12px;height:12px;fill:none;stroke:currentColor;stroke-width:1.5;transition:transform 180ms ease;}
.palette-picker[open] .palette-chevron {transform:rotate(180deg);}
.palette-menu {position:absolute;top:calc(100% + 16px);left:0;width:286px;padding:18px 12px 12px;border:1px solid var(--glass-edge);border-radius:22px;background:color-mix(in srgb,var(--brand-paper) 97%,transparent);box-shadow:0 22px 60px -20px color-mix(in srgb,var(--color-ink) 28%,transparent),inset 0 1px 0 var(--color-white);backdrop-filter:blur(28px);-webkit-backdrop-filter:blur(28px);}
.palette-menu-label {padding:0 10px 12px;font:500 10px/1.5 var(--font-body);letter-spacing:.035em;color:var(--palette-ink);}
.palette-options {display:grid;gap:4px;}
.palette-options button {display:flex;align-items:center;gap:12px;width:100%;min-height:66px;padding:12px 10px;text-align:left;border:1px solid transparent;border-radius:13px;background:transparent;color:var(--color-ink);}
.palette-options button:hover {background:color-mix(in srgb,var(--palette-pigment) 5%,var(--brand-paper));}
.palette-options button[aria-pressed=true] {background:color-mix(in srgb,var(--palette-pigment) 9%,var(--brand-paper));border-color:color-mix(in srgb,var(--palette-pigment) 14%,transparent);}
.palette-swatch {width:29px;height:29px;border-radius:50%;flex:none;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--color-ink) 10%,transparent),0 0 0 4px var(--brand-paper);}
.palette-options strong,.palette-options small {display:block;font:500 12px/1.5 var(--font-body);}
.palette-options small {font-size:10px;font-weight:400;margin-top:3px;color:var(--palette-ink);}
.palette-options svg {margin-left:auto;width:18px;height:18px;fill:none;stroke:var(--palette-ink);stroke-width:1.6;opacity:0;}
.palette-options [aria-pressed=true] svg {opacity:1;}
.palette-menu-note {font:400 10px/1.5 var(--font-body);color:var(--palette-ink);margin:12px 10px 2px;padding-top:12px;border-top:1px solid var(--color-hairline);}
.palette-status {position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;}
.no-js .palette-picker {display:none;}

/* The hero becomes an editorial frame: pigment, light, portrait, and fine rules. */
#home .hero-grid {position:relative;background:radial-gradient(ellipse at 100% 2%,color-mix(in srgb,var(--palette-pigment) 14%,transparent),transparent 56%),linear-gradient(120deg,color-mix(in srgb,var(--brand-paper) 95%,transparent),color-mix(in srgb,var(--brand-paper) 70%,transparent));border-color:color-mix(in srgb,var(--palette-pigment) 15%,var(--brand-paper));box-shadow:inset 0 1px 0 var(--color-white),0 24px 65px -36px color-mix(in srgb,var(--palette-pigment) 30%,transparent);}
#home .hero-grid::before {content:'';position:absolute;top:15%;bottom:15%;left:-1px;width:3px;border-radius:3px;background:linear-gradient(transparent,var(--palette-pigment),transparent);pointer-events:none;}
#home .hero-eyebrow {color:var(--palette-ink);}
#home .hero-eyebrow::before {background:var(--palette-pigment);width:30px;}
#home h1 .hero-emphasis {color:var(--palette-ink);}
#home .hero-portrait {background:linear-gradient(150deg,var(--brand-paper),color-mix(in srgb,var(--palette-pigment) 9%,var(--brand-paper)));box-shadow:inset 0 1px 0 var(--color-white),0 12px 36px -24px color-mix(in srgb,var(--palette-pigment) 35%,transparent);}
#home .hero-portrait>img {border-color:color-mix(in srgb,var(--palette-pigment) 15%,transparent);}
#home .hero-portrait figcaption .hero-affiliation {border-color:color-mix(in srgb,var(--palette-pigment) 24%,transparent);}
#home .hero-footer {border-color:color-mix(in srgb,var(--palette-pigment) 20%,transparent);}
#home .hero-footer a span {background:color-mix(in srgb,var(--brand-paper) 35%,transparent);color:var(--palette-ink);border-color:color-mix(in srgb,var(--brand-paper) 75%,transparent);}

/* Give the most important actions weight; secondary controls retain their glass. */
body .button.secondary {border-color:color-mix(in srgb,var(--palette-pigment) 20%,var(--brand-paper))!important;}
body .button:focus-visible,body button:focus-visible,body summary:focus-visible {outline-color:var(--palette-ink);}
#book .book-tabs a[aria-selected=true],#cv .cv-category[aria-pressed=true],body .shop-filter[aria-pressed=true],body .book-view-controls button[aria-pressed=true] {background:color-mix(in srgb,var(--palette-pigment) 12%,var(--brand-paper))!important;color:var(--palette-ink)!important;border-color:color-mix(in srgb,var(--palette-pigment) 24%,var(--brand-paper))!important;}

/* Repeat the same restrained accent language through the reading experience. */
#book .book-grid,#praise,.contact-card,#cv .cv-shell,.commerce-main .shop-closing {border-color:color-mix(in srgb,var(--palette-pigment) 18%,var(--brand-paper));}
#book .book-art {background:radial-gradient(ellipse at center,color-mix(in srgb,var(--palette-pigment) 10%,transparent),transparent 70%);}
#praise .praise-slide blockquote {border-left:2px solid var(--palette-pigment);padding-left:24px;}
#triple-ivy .consulting-image-hero .section-hero-copy,.speaking-image-hero .section-hero-copy {border-color:color-mix(in srgb,var(--color-white) 65%,transparent);box-shadow:inset 0 1px 0 color-mix(in srgb,var(--color-white) 45%,transparent),0 18px 50px -28px color-mix(in srgb,var(--color-ink) 32%,transparent);}
#services .offering-card {border-color:color-mix(in srgb,var(--palette-pigment) 14%,var(--brand-paper));border-top:2px solid color-mix(in srgb,var(--palette-pigment) 65%,var(--brand-paper));background:linear-gradient(145deg,color-mix(in srgb,var(--brand-paper) 92%,transparent),color-mix(in srgb,var(--palette-pigment) 5%,var(--brand-paper)));}
#services .offering-card:hover {border-color:color-mix(in srgb,var(--palette-pigment) 40%,var(--brand-paper));}
#triple-ivy .consultation-fee {border-color:color-mix(in srgb,var(--palette-pigment) 24%,var(--brand-paper));background:linear-gradient(135deg,color-mix(in srgb,var(--palette-pigment) 8%,var(--brand-paper)),color-mix(in srgb,var(--brand-paper) 80%,transparent));}
#triple-ivy .consultation-price {color:var(--palette-ink);}
#triple-ivy .testimonials-featured>.testimonial-story {border-top:2px solid color-mix(in srgb,var(--palette-pigment) 55%,var(--brand-paper));}
#triple-ivy .testimonial-tag {color:var(--palette-ink);}
#speaking .media-choice[aria-pressed=true] {border-color:color-mix(in srgb,var(--palette-pigment) 70%,var(--brand-paper));box-shadow:inset 3px 0 0 var(--palette-pigment);}
#speaking .media-choice[aria-pressed=true] .media-choice-icon {background:var(--palette-action)!important;color:var(--palette-on-action)!important;border-color:transparent!important;}
#cv .cv-explorer-summary .cv-open-control {background:color-mix(in srgb,var(--palette-pigment) 10%,var(--brand-paper));border-color:color-mix(in srgb,var(--palette-pigment) 22%,var(--brand-paper));}
.contact-card {background:radial-gradient(ellipse at 2% 95%,color-mix(in srgb,var(--palette-pigment) 10%,transparent),transparent 60%),var(--palette-glass);}
.contact-card input:focus,.contact-card textarea:focus,.contact-card select:focus {border-color:var(--palette-pigment);outline-color:var(--palette-ink);}
.commerce-main .product-card {border-color:color-mix(in srgb,var(--palette-pigment) 20%,var(--brand-paper));}
.commerce-main .product-card .product-shop-button {border-color:color-mix(in srgb,var(--palette-pigment) 22%,var(--brand-paper))!important;}
.commerce-main .shop-intro h1 em,.shop-preview-heading h2 em {color:var(--palette-ink);}
.footer-shell {border-top:2px solid color-mix(in srgb,var(--palette-pigment) 40%,var(--brand-paper));}

@media(min-width:1101px) and (max-width:1250px){.site-header{gap:10px;padding-inline:14px}.site-header nav a{padding-inline:9px;font-size:10px}.palette-picker>summary{padding-inline:10px;gap:7px}}
@media(max-width:600px){
 .palette-picker{margin:0}
 .palette-picker>summary{width:40px;height:44px;padding:0;justify-content:center;border:0;background:none}
 .palette-trigger-label,.palette-chevron{display:none}
 .palette-menu{position:fixed;top:82px;left:12px;right:12px;width:auto;max-width:360px}
 .palette-trio i{width:12px;height:12px}
 #home .hero-grid::before{top:8%;bottom:8%;width:2px}
 #praise .praise-slide blockquote{padding-left:16px}
}
@media(prefers-reduced-transparency:reduce),(prefers-contrast:more){.palette-menu{background:var(--brand-paper);backdrop-filter:none}.palette-options button[aria-pressed=true]{outline:1px solid var(--palette-ink);outline-offset:-2px}}
@media(prefers-reduced-motion:reduce){.palette-chevron{transition:none}}
@media print{.palette-picker{display:none}body{background:var(--brand-paper)}}

/* Slowly shifting light blends the three brand pigments behind the glass. */
:root[data-palette="blend"]{--palette-pigment:var(--brand-cobalt);--palette-ink:var(--brand-ivy-ink);--palette-action:var(--brand-cobalt-ink)}
.swatch-blend{background:conic-gradient(from 35deg,var(--brand-ivy),var(--brand-cobalt),var(--brand-ember),var(--brand-ivy))}
.palette-atmosphere{display:none;position:fixed;inset:0;z-index:-1;overflow:hidden;pointer-events:none;isolation:isolate;background:var(--brand-paper)}
html[data-palette="blend"] body{isolation:isolate;background:transparent}
html[data-palette="blend"] .palette-atmosphere{display:block}
.palette-atmosphere span{position:absolute;inset:-60%;will-change:transform;mix-blend-mode:multiply;background:radial-gradient(ellipse at 25% 30%,color-mix(in srgb,var(--brand-ivy) 22%,transparent),transparent 56%);animation:ivy-light 24s ease-in-out infinite alternate}
.palette-atmosphere span:nth-child(2){background:radial-gradient(ellipse at 78% 30%,color-mix(in srgb,var(--brand-cobalt) 26%,transparent),transparent 54%);animation:blue-light 29s ease-in-out infinite alternate}
.palette-atmosphere span:nth-child(3){background:radial-gradient(ellipse at 55% 85%,color-mix(in srgb,var(--brand-ember) 24%,transparent),transparent 55%);animation:amber-light 33s ease-in-out infinite alternate}
@keyframes ivy-light{from{transform:translate(-9%,-5%) rotate(-10deg) scale(1)}to{transform:translate(20%,13%) rotate(24deg) scale(1.12)}}
@keyframes blue-light{from{transform:translate(7%,-4%) rotate(8deg)}to{transform:translate(-21%,18%) rotate(-19deg)}}
@keyframes amber-light{from{transform:translate(5%,8%) scale(1.08)}to{transform:translate(-13%,-23%) scale(1.23)}}
html[data-palette="blend"] #home .hero-grid{background:linear-gradient(120deg,color-mix(in srgb,var(--brand-paper) 83%,transparent),color-mix(in srgb,var(--brand-paper) 36%,transparent));backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-color:color-mix(in srgb,var(--brand-paper) 85%,transparent)}
html[data-palette="blend"] #home .hero-grid::before{background:linear-gradient(transparent,var(--brand-ivy),var(--brand-cobalt),var(--brand-ember),transparent)}
html[data-palette="blend"] #home h1 .hero-emphasis{color:var(--brand-cobalt-ink);background:linear-gradient(110deg,var(--brand-ivy-ink) 10%,var(--brand-cobalt-ink) 56%,var(--brand-ember-ink));background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}
html[data-palette="blend"] .footer-shell{border-top-color:var(--brand-ember)}
.palette-motion-toggle{display:none;width:100%;min-height:38px;margin-top:10px;border:1px solid var(--color-hairline);border-radius:10px;background:var(--brand-paper);font:500 10px/1.4 var(--font-body);color:var(--palette-ink)}
html[data-palette="blend"] .palette-motion-toggle{display:block}
.palette-motion-paused .palette-atmosphere span{animation-play-state:paused}
.palette-menu{max-height:calc(100svh - 120px);overflow-y:auto;overscroll-behavior:contain}
@media(prefers-reduced-motion:reduce){.palette-atmosphere span{animation:none;will-change:auto}.palette-motion-toggle{display:none!important}}
@media(prefers-reduced-transparency:reduce),(prefers-contrast:more){html[data-palette="blend"] #home .hero-grid{background:var(--brand-paper);backdrop-filter:none}html[data-palette="blend"] #home h1 .hero-emphasis{background:none;-webkit-text-fill-color:currentColor}}
@media print{.palette-atmosphere{display:none!important}}

/* Airy controls let the shifting color show through without heavy solid fills. */
html body .button,
html body button[type=submit],
html body .product-add,
html body .product-shop-button {
 background:linear-gradient(125deg,color-mix(in srgb,var(--brand-paper) 32%,transparent),color-mix(in srgb,var(--brand-paper) 10%,transparent))!important;
 color:var(--palette-ink)!important;
 border:1px solid color-mix(in srgb,var(--brand-paper) 78%,transparent)!important;
 box-shadow:inset 0 1px 0 color-mix(in srgb,var(--brand-paper) 76%,transparent),0 3px 10px color-mix(in srgb,var(--color-ink) 4%,transparent)!important;
 backdrop-filter:blur(16px) saturate(115%);-webkit-backdrop-filter:blur(16px) saturate(115%);
}
html body .button:hover,
html body button[type=submit]:hover,
html body .product-add:hover,
html body .product-shop-button:hover {
 background:linear-gradient(125deg,color-mix(in srgb,var(--brand-paper) 70%,transparent),color-mix(in srgb,var(--brand-paper) 42%,transparent))!important;
 color:var(--palette-ink)!important;
 box-shadow:inset 0 1px 0 var(--brand-paper),0 4px 14px color-mix(in srgb,var(--color-ink) 6%,transparent)!important;
}
html body .media-library .button {color:var(--brand-paper)!important;background:color-mix(in srgb,var(--brand-paper) 12%,transparent)!important;border-color:color-mix(in srgb,var(--brand-paper) 35%,transparent)!important}
html body .media-library .button:hover {background:color-mix(in srgb,var(--brand-paper) 20%,transparent)!important}
#speaking .media-choice[aria-pressed=true] .media-choice-icon {background:color-mix(in srgb,var(--brand-paper) 16%,transparent)!important;color:var(--brand-paper)!important;border-color:color-mix(in srgb,var(--brand-paper) 42%,transparent)!important}
@media(prefers-reduced-transparency:reduce),(prefers-contrast:more){
 html body .button,html body button[type=submit],html body .product-add,html body .product-shop-button {background:var(--brand-paper)!important;backdrop-filter:none;-webkit-backdrop-filter:none;border-color:var(--palette-ink)!important}
 html body .media-library .button {background:var(--brand-neutral-ink)!important;color:var(--brand-paper)!important}
}

/* A clear glass system reveals the moving color field beneath each section. */
:root{--glass-clear:linear-gradient(125deg,color-mix(in srgb,var(--brand-paper) 36%,transparent),color-mix(in srgb,var(--brand-paper) 12%,transparent))}
html[data-palette="blend"] :is(#home,#book,#triple-ivy,#speaking,#cv,#contact,.shop-preview,.site-footer,.commerce-main){background-color:transparent;background-image:none}
html[data-palette="blend"] #speaking>.section-body{background:transparent}
html[data-palette="blend"] :is(.site-header,#home .hero-grid,#home .hero-portrait,#book .book-grid,#praise,#biography .biography-story,#services .offering-card,.consulting-disclosures>details,.consultation-card,.consulting-faq,.testimonials-featured>.testimonial-story,.testimonials-more,#cv .cv-shell,#contact .contact-card,.shop-preview>.container,.footer-shell,.commerce-main .product-card,.shop-intro,.shop-closing,.shop-toolbar){
 background:var(--glass-clear);
 border-color:color-mix(in srgb,var(--brand-paper) 65%,transparent);
 box-shadow:inset 0 1px 0 color-mix(in srgb,var(--brand-paper) 70%,transparent),0 12px 36px -24px color-mix(in srgb,var(--color-ink) 16%,transparent);
 backdrop-filter:blur(24px) saturate(125%);-webkit-backdrop-filter:blur(24px) saturate(125%);
}
html[data-palette="blend"] .section-image-hero .section-hero-copy{background:linear-gradient(120deg,color-mix(in srgb,var(--brand-paper) 52%,transparent),color-mix(in srgb,var(--brand-paper) 30%,transparent));backdrop-filter:blur(28px);-webkit-backdrop-filter:blur(28px)}
html[data-palette="blend"] #home .hero-portrait{background:color-mix(in srgb,var(--brand-paper) 20%,transparent)}
html[data-palette="blend"] #home .hero-portrait figcaption{background:transparent}
html[data-palette="blend"] #speaking .media-library{background:color-mix(in srgb,var(--brand-neutral-ink) 85%,transparent);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px)}

/* An inset fee panel with one clear price and a measured reading order. */
html #triple-ivy .consultation-card{grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);gap:clamp(32px,5vw,72px);align-items:center}
html #triple-ivy .consultation-fee{padding:30px 32px;border:1px solid color-mix(in srgb,var(--brand-paper) 72%,transparent);border-radius:24px;align-self:center;background:linear-gradient(130deg,color-mix(in srgb,var(--brand-paper) 26%,transparent),color-mix(in srgb,var(--brand-paper) 8%,transparent));box-shadow:inset 0 1px 0 color-mix(in srgb,var(--brand-paper) 55%,transparent);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
html #triple-ivy .consultation-fee>.eyebrow{margin-bottom:16px;letter-spacing:.14em;font-size:9px}
html #triple-ivy .consultation-fee h4{display:flex;flex-direction:column;align-items:flex-start;gap:12px}
html #triple-ivy .consultation-price{font:400 76px/.9 var(--font-display);letter-spacing:-.055em;color:var(--palette-ink)}
html #triple-ivy .consultation-fee-label{font:400 21px/1.25 var(--font-display);max-width:22ch;letter-spacing:-.015em}
html #triple-ivy .consultation-fee .fee-credit{font:500 12px/1.65 var(--font-body);margin:20px 0 16px;padding:0 0 18px;border-bottom:1px solid color-mix(in srgb,var(--palette-ink) 16%,transparent)}
html #triple-ivy .consultation-fee .fee-terms{font:400 11px/1.75 var(--font-body);max-width:44ch;color:var(--color-ink)}
@media(max-width:700px){html #triple-ivy .consultation-card{grid-template-columns:1fr;gap:28px}html #triple-ivy .consultation-fee{padding:26px;width:100%}html #triple-ivy .consultation-price{font-size:68px}}
@media(prefers-reduced-transparency:reduce),(prefers-contrast:more){
 html[data-palette="blend"] :is(.site-header,#home .hero-grid,#home .hero-portrait,#book .book-grid,#praise,#biography .biography-story,#services .offering-card,.consulting-disclosures>details,.consultation-card,.consulting-faq,.testimonials-featured>.testimonial-story,.testimonials-more,#cv .cv-shell,#contact .contact-card,.shop-preview>.container,.footer-shell,.commerce-main .product-card,.shop-intro,.shop-closing,.shop-toolbar,.section-image-hero .section-hero-copy),html #triple-ivy .consultation-fee{background:var(--brand-paper);backdrop-filter:none;-webkit-backdrop-filter:none}
}
#consultation{scroll-margin-top:116px}
@media(max-width:600px){#home h1 .hero-line{display:block;text-wrap:balance}}

/* Photographic chapters dissolve into the same color field instead of hard cuts. */
#triple-ivy.section{border-top:0;}
html[data-palette="blend"] .section-image-hero{
 background:transparent;
 mask-image:linear-gradient(to bottom,transparent,var(--color-ink) 48px,var(--color-ink) calc(100% - 72px),transparent);
 -webkit-mask-image:linear-gradient(to bottom,transparent,var(--color-ink) 48px,var(--color-ink) calc(100% - 72px),transparent);
}
html[data-palette="blend"] #biography .biography-skyline,
html[data-palette="blend"] #biography::after{
 mask-image:linear-gradient(to bottom,transparent,var(--color-ink) 48px,var(--color-ink) calc(100% - 64px),transparent);
 -webkit-mask-image:linear-gradient(to bottom,transparent,var(--color-ink) 48px,var(--color-ink) calc(100% - 64px),transparent);
}
html[data-palette="blend"] #biography{background:transparent}
html[data-palette="blend"] #home{padding-bottom:24px}
html[data-palette="blend"] .full-bleed-section .section-body{padding-top:44px}
@media(max-width:700px){
 html[data-palette="blend"] .section-image-hero{mask-image:none;-webkit-mask-image:none}
 html[data-palette="blend"] .section-image-hero::after{background:none}
 html[data-palette="blend"] .section-hero-art:not(.consulting-soft-focus){mask-image:linear-gradient(to bottom,transparent,var(--color-ink) 24px,var(--color-ink) calc(100% - 44px),transparent);-webkit-mask-image:linear-gradient(to bottom,transparent,var(--color-ink) 24px,var(--color-ink) calc(100% - 44px),transparent)}
 html[data-palette="blend"] .full-bleed-section .section-body{padding-top:20px}
}

/* A larger dimensional signature and comfortably sized navigation. */
html .site-header .wordmark{flex-basis:60px;min-width:60px;perspective:500px}
.header-quill-sculpture{position:relative;display:block;width:48px;height:58px;transform-style:preserve-3d;animation:header-quill-float 10s ease-in-out infinite}
html .site-header .header-quill-sculpture img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;backface-visibility:hidden}
.header-quill-sculpture .brand-quill{filter:drop-shadow(1px 3px 3px color-mix(in srgb,var(--color-ink) 12%,transparent))}
@keyframes header-quill-float{0%,100%{transform:translateY(1px) rotateY(-16deg) rotateZ(-2deg)}50%{transform:translateY(-2px) rotateY(16deg) rotateZ(1deg)}}
html .site-header nav a{font-size:13px;line-height:1.4;letter-spacing:-.01em;min-height:44px;padding:12px 14px}
html .site-header nav ul{gap:2px;padding:3px;background:color-mix(in srgb,var(--brand-paper) 10%,transparent);border-color:color-mix(in srgb,var(--brand-paper) 44%,transparent)}
html .site-header nav a[aria-current]{background:color-mix(in srgb,var(--brand-paper) 28%,transparent);box-shadow:inset 0 1px 0 color-mix(in srgb,var(--brand-paper) 55%,transparent);color:var(--palette-ink)}
html .site-header .nav-contact{font-size:12px;min-height:44px;padding-inline:20px}
html .palette-picker>summary{background:color-mix(in srgb,var(--brand-paper) 22%,transparent)}
html .palette-motion-toggle{display:block}

/* The hero closes with a composed editorial signature and a clear next step. */
html #home .hero-footer{position:relative;min-height:64px;padding:15px 0 17px;margin-top:22px;border-top-color:color-mix(in srgb,var(--brand-paper) 55%,transparent);gap:24px}
html #home .hero-footer>span{font:400 16px/1.45 var(--font-display);letter-spacing:.005em;color:var(--palette-ink)}
html #home .hero-footer>a{font:500 12px/1.4 var(--font-body);gap:16px;min-height:44px;padding:0 0 0 12px;color:var(--palette-ink)}
html #home .hero-footer>a>span{width:38px;height:38px;background:color-mix(in srgb,var(--brand-paper) 14%,transparent);border-color:color-mix(in srgb,var(--brand-paper) 65%,transparent);font-size:15px;transition:transform 250ms ease,background 250ms ease}
html #home .hero-footer>a:hover>span{transform:translateY(2px);background:color-mix(in srgb,var(--brand-paper) 32%,transparent)}
html[data-palette="blend"] #home .hero-grid::before{width:2px;opacity:.45;background-size:100% 250%;animation:accent-flow 18s ease-in-out infinite alternate}
html[data-palette="blend"] #home h1 .hero-emphasis{background-image:linear-gradient(110deg,color-mix(in srgb,var(--brand-ivy-ink) 65%,var(--brand-neutral-ink)),color-mix(in srgb,var(--brand-cobalt-ink) 65%,var(--brand-neutral-ink)),color-mix(in srgb,var(--brand-ember-ink) 65%,var(--brand-neutral-ink)),color-mix(in srgb,var(--brand-ivy-ink) 65%,var(--brand-neutral-ink)));background-size:250% 100%;animation:headline-color-flow 22s ease-in-out infinite alternate}
@keyframes accent-flow{from{background-position:0 0}to{background-position:0 100%}}
@keyframes headline-color-flow{from{background-position:0 50%}to{background-position:100% 50%}}
.palette-atmosphere span{animation-name:ivy-light,color-breath;animation-duration:24s,18s;animation-direction:alternate;animation-timing-function:ease-in-out;animation-iteration-count:infinite}
.palette-atmosphere span:nth-child(2){animation-name:blue-light,color-breath;animation-duration:29s,23s;animation-delay:0s,-8s}
.palette-atmosphere span:nth-child(3){animation-name:amber-light,color-breath;animation-duration:33s,20s;animation-delay:0s,-13s}
@keyframes color-breath{from{opacity:.55}to{opacity:1}}
.palette-motion-paused :is(.header-quill-sculpture,#home .hero-grid::before,#home h1 .hero-emphasis,.palette-atmosphere span){animation-play-state:paused!important}
@media(min-width:1101px) and (max-width:1200px){html .site-header nav a{padding-inline:10px;font-size:12px}}
@media(max-width:1100px){html .site-header nav a{font-size:15px;padding:14px 16px;min-height:48px}}
@media(max-width:600px){html .site-header .wordmark{flex-basis:44px;min-width:44px}.header-quill-sculpture{width:36px;height:46px}html .site-header .nav-contact{font-size:10px;padding-inline:12px}html #home .hero-footer{align-items:flex-start;gap:10px;padding-block:16px}html #home .hero-footer>span{font-size:15px}html #home .hero-footer>a{padding:0;width:100%;justify-content:space-between}}
@media(prefers-reduced-motion:reduce){.header-quill-sculpture,html[data-palette="blend"] #home .hero-grid::before,html[data-palette="blend"] #home h1 .hero-emphasis,.palette-atmosphere span{animation:none!important}html .palette-motion-toggle{display:none!important}}

/* Quiet moving color along the service-card rim. */
html[data-palette="blend"] #services .offering-card{position:relative;border-top:1px solid color-mix(in srgb,var(--brand-paper) 55%,transparent)}
html[data-palette="blend"] #services .offering-card::after{content:"";position:absolute;pointer-events:none;top:0;left:24px;right:24px;height:2px;border-radius:100%;opacity:.55;background:linear-gradient(100deg,transparent,color-mix(in srgb,var(--brand-ivy) 40%,var(--brand-paper)),color-mix(in srgb,var(--brand-cobalt) 40%,var(--brand-paper)),color-mix(in srgb,var(--brand-ember) 40%,var(--brand-paper)),transparent);background-size:240% 100%;animation:headline-color-flow 20s ease-in-out infinite alternate}
html[data-palette="blend"] #services .offering-card:nth-child(2)::after{animation-delay:-5s}
html[data-palette="blend"] #services .offering-card:nth-child(3)::after{animation-delay:-10s}
html[data-palette="blend"] #services .offering-card:nth-child(4)::after{animation-delay:-15s}
/* Two identical groups make a continuous left-to-right ribbon. */
html #home .hero-portrait figcaption .affiliation-banner{display:block;overflow:hidden;min-width:0;padding-block:14px 4px;mask-image:linear-gradient(to right,transparent,var(--color-ink) 16px,var(--color-ink) calc(100% - 16px),transparent);-webkit-mask-image:linear-gradient(to right,transparent,var(--color-ink) 16px,var(--color-ink) calc(100% - 16px),transparent)}
.affiliation-track{display:flex;width:max-content;animation:affiliation-drift 65s linear infinite;will-change:transform}
.affiliation-group{display:flex;align-items:center;flex:none;gap:24px;padding-right:24px}
html #home .hero-portrait figcaption .affiliation-group>span{display:flex;align-items:center;gap:24px;white-space:nowrap;font:400 12px/1.7 var(--font-body);letter-spacing:.01em;color:var(--palette-ink)}
.affiliation-group>span::after{content:"";width:4px;height:4px;flex:none;border-radius:50%;background:currentColor;opacity:.35}
@keyframes affiliation-drift{from{transform:translateX(-50%)}to{transform:translateX(0)}}
.affiliation-banner:is(:hover,:focus-within) .affiliation-track,.palette-motion-paused .affiliation-track{animation-play-state:paused}
.affiliation-banner:focus-visible{outline:2px solid var(--palette-ink);outline-offset:4px;border-radius:5px}
.palette-motion-paused #services .offering-card::after,.palette-motion-paused #home .hero-grid::before{animation-play-state:paused!important}
@media(prefers-reduced-motion:reduce){
 html[data-palette="blend"] #services .offering-card::after,.affiliation-track{animation:none!important;transform:none;will-change:auto}
 html #home .hero-portrait figcaption .affiliation-banner{mask-image:none;-webkit-mask-image:none}
 .affiliation-track{width:auto}.affiliation-group{flex-direction:column;align-items:flex-start;gap:5px;padding:0;min-width:0}
 .affiliation-group[aria-hidden="true"]{display:none}
 html #home .hero-portrait figcaption .affiliation-group>span{white-space:normal;font-size:11px}
 .affiliation-group>span::after{display:none}
}

/* A softly orbiting color edge follows the complete rounded hero. */
@property --hero-edge-angle{syntax:'<angle>';initial-value:0deg;inherits:false}
html[data-palette="blend"] #home .hero-grid::before{inset:-1px;width:auto;height:auto;border-radius:inherit;padding:1.5px;opacity:.65;background:conic-gradient(from var(--hero-edge-angle),color-mix(in srgb,var(--brand-ivy) 45%,var(--brand-paper)),color-mix(in srgb,var(--brand-paper) 65%,transparent),color-mix(in srgb,var(--brand-cobalt) 45%,var(--brand-paper)),color-mix(in srgb,var(--brand-paper) 65%,transparent),color-mix(in srgb,var(--brand-ember) 45%,var(--brand-paper)),color-mix(in srgb,var(--brand-ivy) 45%,var(--brand-paper)));mask:linear-gradient(var(--color-ink) 0 0) content-box,linear-gradient(var(--color-ink) 0 0);-webkit-mask:linear-gradient(var(--color-ink) 0 0) content-box,linear-gradient(var(--color-ink) 0 0);-webkit-mask-composite:xor;mask-composite:exclude;animation:hero-edge-orbit 28s linear infinite}
@keyframes hero-edge-orbit{to{--hero-edge-angle:360deg}}
html #home .hero-portrait figcaption .affiliation-group>span{text-transform:none}

html #home .hero-band,html #home .hero-portrait{min-width:0;max-width:100%}

/* Neutral typography lets the brand colors live in light and fine accents. */
:root[data-palette="blend"]{--palette-ink:var(--brand-neutral-ink)}
html[data-palette="blend"] #home h1 .hero-emphasis{color:var(--brand-neutral-ink);background:none;-webkit-text-fill-color:currentColor;animation:none}
html #speaking .speaking-image-hero .section-hero-copy{border-color:color-mix(in srgb,var(--color-white) 85%,transparent);box-shadow:inset 0 1px 0 color-mix(in srgb,var(--color-white) 70%,transparent),0 18px 50px -28px color-mix(in srgb,var(--color-ink) 32%,transparent)}
html .site-header .wordmark{flex-basis:72px;min-width:72px;justify-content:center}
.header-quill-sculpture{width:64px;height:66px}
html .site-header .wordmark .header-quill-sculpture img{width:100%;height:100%;max-width:none;max-height:none}
@media(max-width:600px){html .site-header .wordmark{flex-basis:48px;min-width:48px}.header-quill-sculpture{width:44px;height:54px}}

/* Keep motion preferences available without the design presentation selector. */
.site-footer>.footer-motion-toggle{display:block;width:auto;min-height:44px;margin:12px auto 0;padding:8px 16px;background:transparent;border:0;color:var(--color-ink);font-size:11px;opacity:.8}

/* Speaking pairs the author's own portrait with the hero's open glass treatment. */
#speaking .speaking-intro{display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);align-items:center;gap:40px;width:calc(100% - 80px);max-width:1360px;padding:24px 24px 24px 48px;border:1px solid color-mix(in srgb,var(--brand-paper) 65%,transparent);border-radius:36px;background:linear-gradient(135deg,color-mix(in srgb,var(--brand-paper) 25%,transparent),color-mix(in srgb,var(--brand-paper) 10%,transparent));box-shadow:inset 0 1px 0 color-mix(in srgb,var(--brand-paper) 70%,transparent),0 12px 36px -24px color-mix(in srgb,var(--color-ink) 16%,transparent);backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px)}
#speaking .speaking-copy{padding:20px 0;min-width:0}
#speaking .speaking-copy .eyebrow{font-size:9px;letter-spacing:.16em;margin-bottom:24px;color:var(--color-ink)}
#speaking .speaking-copy h2{font-size:clamp(36px,3.4vw,50px);line-height:1.08;letter-spacing:-.025em;margin-bottom:24px}
#speaking .speaking-copy .section-hero-lead{color:var(--color-ink);font-weight:400;font-size:14px;line-height:1.85;max-width:46ch;margin:0 0 28px}
#speaking .speaking-copy .button{font-size:11px;gap:24px;border-radius:999px}
#speaking .speaking-portrait{min-width:0;margin:0;padding:8px;border:1px solid color-mix(in srgb,var(--brand-paper) 65%,transparent);border-radius:26px;background:color-mix(in srgb,var(--brand-paper) 18%,transparent)}
#speaking .speaking-portrait img{filter:brightness(1.13) contrast(.94) saturate(.84);display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:contain;border-radius:18px}
@media(max-width:1000px){#speaking .speaking-intro{gap:28px;padding-left:32px}#speaking .speaking-copy h2{font-size:36px}}
@media(max-width:850px){#speaking .speaking-intro{width:calc(100% - 40px)}}
@media(max-width:760px){#speaking .speaking-intro{grid-template-columns:1fr;gap:24px;padding:30px 24px 24px}#speaking .speaking-copy{padding:0}#speaking .speaking-copy .section-hero-lead{max-width:60ch}#speaking .speaking-portrait{padding:6px;border-radius:22px}#speaking .speaking-portrait img{border-radius:16px}}
@media(max-width:600px){#speaking .speaking-intro{width:calc(100% - 28px);border-radius:28px;padding:30px 22px 22px}#speaking .speaking-copy h2{font-size:36px}#speaking .speaking-copy .eyebrow{margin-bottom:20px}#speaking .speaking-copy .section-hero-lead{font-size:13px}#speaking .speaking-copy .button{gap:18px}}
@media(prefers-reduced-transparency:reduce),(prefers-contrast:more){#speaking .speaking-intro{background:var(--brand-paper);backdrop-filter:none;-webkit-backdrop-filter:none}}

/* Client's October 10 review: readable type, uncropped portraits, simpler CV. */
#home .hero-eyebrow{font-size:12px;line-height:1.8;letter-spacing:.06em;overflow-wrap:anywhere}
#home .hero-subline{font-size:18px;line-height:1.8;max-width:46ch}
#home .hero-portrait>img{height:auto;max-height:none;aspect-ratio:1122/1402;object-fit:contain;object-position:center top}
#home .hero-portrait figcaption .hero-affiliation,#home .hero-portrait figcaption .hero-affiliation span{font-size:13px;line-height:1.8;letter-spacing:0;text-transform:none}
.hero-affiliation a{color:inherit;text-decoration:underline;text-decoration-color:color-mix(in srgb,var(--color-olive) 45%,transparent);text-underline-offset:4px}
#home .hero-footer{font-size:14px;line-height:1.6}
#biography{padding:64px 0;background:var(--color-white);color:var(--color-ink)}
#biography::after{display:none}
#biography .biography-grid{display:grid;grid-template-columns:minmax(240px,.75fr) minmax(0,1.25fr);gap:48px;align-items:start}
#biography .biography-client-portrait{margin:0;position:sticky;top:110px}
#biography .biography-client-portrait img{display:block;width:100%;height:auto;border-radius:20px}
#biography .biography-story{padding:0;background:none;border:0;box-shadow:none;backdrop-filter:none;max-width:none;overflow:visible}
#biography .biography-story-content{max-height:none;overflow:visible;padding:0;display:block}
#biography .biography-overview{max-width:none}
#biography #bio-title{font:500 clamp(34px,3.3vw,52px)/1.15 var(--font-display);font-style:italic;color:var(--color-ink);margin:0 0 16px;max-width:none;letter-spacing:-.02em}
#biography .biography-intro,#biography .biography-copy,#biography .biography-ethos p,#biography .biography-attribution{font:500 23px/1.5 var(--font-display);color:var(--color-ink);letter-spacing:0;max-width:none}
#biography .biography-attribution{font-size:21px;margin-bottom:28px}
#biography .biography-ethos h3{font:500 32px/1.2 var(--font-display);color:var(--color-ink)}
#biography .education-path{padding:0;margin:28px 0;max-width:none}
#biography .education-path ol{display:flex;flex-direction:column;gap:0;list-style:none;padding:0}
#biography .education-path li{display:flex;flex-direction:column;align-items:flex-start;gap:4px;width:100%;padding:19px 0;border:0;border-top:1px solid var(--color-hairline)}
#biography .education-path li::before{display:none}
#biography .education-path h4{font:500 29px/1.2 var(--font-display);color:var(--color-ink)}
#biography .education-path p,#biography .education-year{font:500 21px/1.4 var(--font-display);color:var(--color-ink);letter-spacing:0}
#biography .biography-ethos{margin-top:24px;max-width:none}
#triple-ivy .consulting-established{font:600 16px/1.6 var(--font-body);margin:16px 0 24px;color:var(--color-ink)}
#triple-ivy #consulting-title{font-size:clamp(34px,3.4vw,52px);line-height:1.13;max-width:20ch}
#triple-ivy .section-hero-art img{object-position:center;filter:none}
#triple-ivy .consulting-soft-focus{display:none}
#triple-ivy .experience-catalog .catalog-title{font-size:13px;line-height:1.6;letter-spacing:.05em}
#triple-ivy .consultation-card{display:block}
#triple-ivy .consultation-intro{max-width:780px}
#triple-ivy .consultation-intro .fee-terms{font-size:13px;line-height:1.7}
#triple-ivy .service-detail-content p{font-size:16px;line-height:1.85}
#triple-ivy .testimonials-featured{grid-template-columns:repeat(2,minmax(0,1fr))}
#cv .cv-browser{display:block}
#cv .cv-mobile-browse{display:block;max-width:480px;margin:0 0 24px}
#cv .cv-mobile-browse[hidden]{display:none}
#cv .cv-results-panel{width:100%}
.shop-preview.shop-preview-simple{padding:64px 0}
.shop-preview-simple .shop-preview-heading{align-items:center}
.shop-preview-simple h2{max-width:15ch}
.shop-preview-simple p{margin:20px 0;font-size:17px}
.shop-simple-card{display:grid;grid-template-columns:200px 1fr;gap:44px;align-items:center}
.shop-simple-card img{width:100%;height:auto;max-height:310px;object-fit:contain}
.shop-simple-page{padding:80px 0;min-height:65vh}
.shop-simple-page h1{font:400 clamp(44px,6vw,76px)/1.06 var(--font-display)}
@media(max-width:900px){.site-header nav a{padding-inline:8px}#biography .biography-grid{gap:30px}}
@media(max-width:760px){#biography .biography-grid{grid-template-columns:1fr;gap:32px}#biography .biography-client-portrait{position:static;max-width:440px;margin:0 auto}#biography .biography-story{padding:0}#biography{padding:40px 0}#biography .biography-intro,#biography .biography-copy,#biography .biography-ethos p{font-size:22px}#triple-ivy .testimonials-featured{display:grid;grid-template-columns:1fr;overflow:visible}#triple-ivy .testimonials-featured>.testimonial-story{width:100%;min-width:0}#triple-ivy .testimonials-featured>.testimonial-story>summary{min-height:0}.testimonial-scroll-hint{display:none}.shop-simple-card{grid-template-columns:120px minmax(0,1fr);gap:24px}.shop-preview-simple h2{font-size:36px}}
@media(max-width:600px){#home .hero-subline{font-size:17px}#home .hero-eyebrow{font-size:11px}#home .hero-portrait figcaption .hero-affiliation,#home .hero-portrait figcaption .hero-affiliation span{font-size:12px}#home .hero-footer{font-size:13px}#triple-ivy .section-image-hero .section-hero-copy{padding:26px}#triple-ivy .consulting-established{font-size:14px}.shop-simple-card{grid-template-columns:1fr}.shop-simple-card>img{max-width:160px;margin:0 auto}.shop-simple-page{padding:48px 0}}

#cv #cv-results-count{display:none}
#home .hero-portrait figcaption .hero-affiliation{display:flex;flex-direction:column;align-items:flex-start}
#home .hero-portrait figcaption .hero-affiliation>span{display:block}
#triple-ivy .consultation-intro>p:not(.eyebrow){max-width:66ch}
html .site-header .wordmark .header-quill-sculpture{display:block}

/* October 16 family biography: editorial layout, original client photograph. */
html[data-palette] #biography{padding:56px 0 72px;scroll-margin-top:100px}
html[data-palette] #biography .biography-grid{display:grid;grid-template-columns:minmax(0,1fr);width:calc(100% - 80px);max-width:1200px;padding:48px;gap:0;border:1px solid color-mix(in srgb,var(--brand-paper) 80%,transparent);border-radius:24px;background:color-mix(in srgb,var(--brand-paper) 69%,transparent);box-shadow:0 20px 60px -48px color-mix(in srgb,var(--color-ink) 30%,transparent)}
#biography .biography-section-heading{display:flex;align-items:center;gap:28px;margin-bottom:36px;min-width:0}
#biography .biography-section-heading .eyebrow{flex:none;margin:0;font:500 11px/1.5 var(--font-body);letter-spacing:.14em;color:var(--color-olive)}
#biography .biography-heading-rule{height:1px;flex:1;background:color-mix(in srgb,var(--color-ink) 15%,transparent)}
#biography .biography-main{display:grid;grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);align-items:start;gap:clamp(32px,4.5vw,64px)}
#biography .biography-client-portrait{position:static;order:initial;min-width:0;width:100%;max-width:none;margin:0;overflow:hidden;border-radius:12px;background:var(--brand-paper)}
#biography .biography-client-portrait img{display:block;width:100%;height:auto;max-height:none;aspect-ratio:3/4;object-fit:contain;border-radius:12px;filter:none}
html[data-palette] #biography .biography-story{order:initial;min-width:0;padding:0;margin:0;background:none;border:0;border-radius:0;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}
#biography .biography-story-content{display:block;padding:0;overflow:visible}
#biography #bio-title{font:500 clamp(32px,3.25vw,42px)/1.1 var(--font-display);font-style:italic;letter-spacing:-.025em;text-wrap:pretty;margin:0 0 18px;max-width:26ch;color:var(--color-ink)}
#biography .biography-attribution{font:500 16px/1.5 var(--font-display);letter-spacing:0;margin:0;padding:0;color:var(--color-olive)}
#biography .biography-narrative{margin-top:30px}
#biography .biography-intro{font:500 22px/1.4 var(--font-display);letter-spacing:-.01em;color:var(--color-ink);max-width:48ch;text-wrap:pretty;margin:0}
#biography .biography-copy,#biography .biography-ethos p{font:500 19px/1.5 var(--font-display);letter-spacing:0;color:var(--color-ink);max-width:54ch;text-wrap:pretty;margin:0}
#biography .biography-copy{margin-top:18px}
#biography .biography-ethos{border:0;border-top:1px solid color-mix(in srgb,var(--color-ink) 14%,transparent);padding:24px 0 0;margin:26px 0 0;max-width:none}
#biography .biography-ethos h3{font:500 27px/1.2 var(--font-display);letter-spacing:-.015em;margin:0 0 12px}
#biography .education-path{order:initial;width:100%;margin:40px 0 0;padding:28px 0 0;border:0;border-top:1px solid color-mix(in srgb,var(--color-ink) 17%,transparent);max-width:none}
#biography .education-path ol{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin:0;padding:0;list-style:none}
#biography .education-path li{display:grid;grid-template-columns:1fr auto;align-content:start;align-items:baseline;gap:8px 12px;min-width:0;width:auto;margin:0;padding:0 28px;border:0;border-left:1px solid color-mix(in srgb,var(--color-ink) 13%,transparent);background:none}
#biography .education-path li:first-child{padding:0 28px 0 0;border:0}
#biography .education-path li:last-child{padding:0 0 0 28px;border:0;border-left:1px solid color-mix(in srgb,var(--color-ink) 13%,transparent)}
#biography .education-path li::before{display:none}
#biography .education-path h4{grid-column:1;grid-row:1;font:500 29px/1.15 var(--font-display);letter-spacing:-.02em;margin:0;color:var(--color-ink)}
#biography .education-year{grid-column:2;grid-row:1;font:400 11px/1.5 var(--font-body);letter-spacing:.03em;margin:0;color:var(--color-olive)}
#biography .education-qualification{grid-column:1/-1;grid-row:2;margin:0;padding:0}
#biography .education-path p{font:500 16px/1.45 var(--font-display);letter-spacing:0;margin:0;color:var(--color-ink)}
#biography .biography-socials{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:28px;margin:28px 0 0;padding-top:18px;border-top:1px solid color-mix(in srgb,var(--color-ink) 13%,transparent)}
#biography .social-tile{flex:0 1 auto;display:flex;min-width:0;max-width:none;min-height:44px;gap:14px;padding:6px 0;border:0;border-radius:0;background:none;box-shadow:none;transform:none;text-decoration:none}
#biography .social-tile-copy strong{font:500 12px/1.5 var(--font-body)}
#biography .social-tile-copy>span{font:400 10px/1.5 var(--font-body);color:var(--color-olive)}
#biography .social-arrow{margin-left:0;font-size:18px;transition:transform .2s ease}
#biography .social-tile:hover .social-arrow{transform:translate(2px,-2px)}
#biography .social-tile:focus-visible{outline:2px solid var(--color-olive);outline-offset:5px;border-radius:3px}
@media(max-width:1050px){html[data-palette] #biography .biography-grid{width:calc(100% - 48px);padding:32px}#biography .biography-main{gap:32px}#biography #bio-title{font-size:34px}#biography .biography-intro{font-size:21px}#biography .education-path li{padding-inline:20px}#biography .education-path li:first-child{padding-right:20px}#biography .education-path li:last-child{padding-left:20px}#biography .education-path h4{font-size:26px}}
@media(min-width:761px) and (max-width:900px){#biography .biography-main{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:28px}#biography .biography-client-portrait{align-self:center}#biography .education-path li{grid-template-columns:1fr}#biography .education-year{grid-column:1;grid-row:3}}
@media(max-width:760px){html[data-palette] #biography{padding:32px 0 44px;scroll-margin-top:82px}html[data-palette] #biography .biography-grid{width:calc(100% - 32px);padding:24px;border-radius:20px;grid-template-columns:minmax(0,1fr);gap:0}#biography .biography-section-heading{margin-bottom:24px;gap:20px}#biography .biography-section-heading .eyebrow{font-size:10px}#biography .biography-main{grid-template-columns:minmax(0,1fr);gap:32px}#biography .biography-client-portrait{order:initial;max-width:440px;margin:0 auto}#biography #bio-title{font-size:clamp(31px,7.7vw,40px);line-height:1.13;margin-bottom:16px;max-width:28ch}#biography .biography-attribution{font-size:16px;margin:0}#biography .biography-narrative{margin-top:26px}#biography .biography-intro{font-size:22px;line-height:1.4}#biography .biography-copy,#biography .biography-ethos p{font-size:20px;line-height:1.5}#biography .biography-ethos{margin-top:26px;padding-top:24px}#biography .biography-ethos h3{font-size:28px}#biography .education-path{order:initial;margin-top:32px;padding-top:8px}#biography .education-path ol{grid-template-columns:1fr}#biography .education-path li,#biography .education-path li:first-child,#biography .education-path li:last-child{grid-template-columns:1fr auto;padding:20px 0;border:0;border-bottom:1px solid color-mix(in srgb,var(--color-ink) 13%,transparent);gap:7px 12px}#biography .education-path li:last-child{border-bottom:0;padding-bottom:0}#biography .education-path h4{font-size:29px}#biography .education-year{grid-column:2;grid-row:1;font-size:12px}#biography .education-path p{font-size:18px}#biography .biography-socials{justify-content:space-between;gap:20px;margin-top:26px;padding-top:16px}#biography .social-tile{flex:0 1 auto}}
@media(max-width:380px){html[data-palette] #biography .biography-grid{width:calc(100% - 24px);padding:20px}#biography #bio-title{font-size:31px}#biography .biography-intro{font-size:21px}#biography .biography-copy,#biography .biography-ethos p{font-size:19px}#biography .biography-socials{gap:16px}#biography .social-tile{gap:8px}}
@media(prefers-reduced-motion:reduce){#biography .social-arrow{transition:none}}
@media(prefers-contrast:more){html[data-palette] #biography .biography-grid{background:var(--brand-paper);border-color:var(--color-ink)}}

/* October 16: client-supplied portrait for Speaking & Media. */
#speaking .speaking-portrait{width:100%;max-width:430px;justify-self:center}
#speaking .speaking-portrait img{filter:none;aspect-ratio:4/5;object-fit:cover;object-position:center top}
#speaking .speaking-photo-crop{display:block;overflow:hidden;border-radius:18px}
#speaking .speaking-photo-crop img{transform:scale(1.07);transform-origin:center top;border-radius:0}
@media(max-width:760px){#speaking .speaking-photo-crop{border-radius:16px}}

/* Client fulfillment: graduation collage and stacked schools at every size. */
#biography .biography-profile{display:block;min-width:0}
#biography .biography-graduation-collage{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;align-items:start}
#biography .biography-graduation-collage figure{margin:0;min-width:0;overflow:hidden;border-radius:9px;background:var(--brand-paper)}
#biography .biography-graduation-collage img{display:block;width:100%;height:auto;aspect-ratio:3/4;object-fit:contain;border-radius:9px;filter:none}
#biography .biography-graduation-collage .graduation-group{grid-column:1/-1}
#biography .biography-graduation-collage .graduation-group img{aspect-ratio:16/10;object-fit:cover;object-position:center 22%}
#biography .education-path{margin:28px 0 0;padding:0;border-top:1px solid color-mix(in srgb,var(--color-ink) 17%,transparent)}
#biography .education-path ol{display:flex;flex-direction:column}
#biography .education-path li,#biography .education-path li:first-child,#biography .education-path li:last-child{display:grid;grid-template-columns:1fr auto;gap:6px 12px;padding:18px 0;border:0;border-bottom:1px solid color-mix(in srgb,var(--color-ink) 13%,transparent)}
#biography .education-path li:last-child{border-bottom:0;padding-bottom:0}
#biography .education-path h4{font-size:28px}
#biography .education-year{grid-column:2;grid-row:1;font-size:12px}
#biography .education-path p{font-size:18px}
#biography .biography-socials{margin-top:30px}
.shop-preview-simple .shop-simple-card,.shop-simple-page .shop-simple-card{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:clamp(32px,5vw,72px);align-items:center}
.shop-client-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;min-width:0}
.shop-client-gallery figure{min-width:0;margin:0;padding:12px 12px 16px;background:var(--brand-paper);border:1px solid color-mix(in srgb,var(--color-ink) 9%,transparent);border-radius:16px;overflow:hidden}
.shop-simple-card .shop-client-gallery img{display:block;width:100%;height:auto;aspect-ratio:3/4;max-width:none;max-height:none;object-fit:contain;background:white;border-radius:8px;clip-path:inset(2% 2%)}
.shop-client-gallery figcaption{padding-top:12px;text-align:center;font:500 12px/1.5 var(--font-body);color:var(--color-ink)}
.shop-simple-copy h1,.shop-simple-copy h2{margin:0;max-width:12ch;font:400 clamp(38px,4.5vw,64px)/1.06 var(--font-display);letter-spacing:-.025em}
.shop-simple-copy h1 em,.shop-simple-copy h2 em{font-style:italic}
.shop-simple-copy>.eyebrow{font-size:11px;margin:0 0 20px}
.shop-simple-page{padding:100px 0 72px}
@media(max-width:760px){#biography .biography-profile{display:contents}#biography .biography-main{display:flex;flex-direction:column;gap:30px}#biography .biography-graduation-collage{order:0;width:100%;max-width:460px;align-self:center;gap:10px}#biography .biography-story{order:1!important}#biography .education-path{order:2;margin:0;width:100%}#biography .biography-graduation-collage .biography-client-portrait{max-width:none}#biography .education-path li,#biography .education-path li:first-child,#biography .education-path li:last-child{padding-block:20px}#biography .education-path li:last-child{padding-bottom:0}.shop-preview-simple .shop-simple-card,.shop-simple-page .shop-simple-card{grid-template-columns:minmax(0,1fr);gap:32px}.shop-simple-copy{grid-row:1}.shop-client-gallery{max-width:540px;width:100%;margin:0 auto;gap:12px}.shop-simple-page{padding:56px 0}.shop-client-gallery figure{padding:8px 8px 12px;border-radius:12px}.shop-client-gallery figcaption{font-size:11px}.shop-simple-copy h1,.shop-simple-copy h2{font-size:clamp(38px,10vw,56px);max-width:13ch}}
/* Pair family history and education beneath the collage and introduction. */
#biography .biography-main{grid-template-areas:"photos story" "ethos schools";row-gap:32px}
#biography .biography-graduation-collage{grid-area:photos}
#biography .biography-story{grid-area:story}
#biography .biography-ethos{grid-area:ethos;margin:0;padding-top:24px}
#biography .education-path{grid-area:schools;margin:0}
@media(max-width:760px){#biography .biography-main{display:grid;grid-template-areas:"photos" "story" "ethos" "schools";grid-template-columns:minmax(0,1fr);gap:30px}#biography .biography-graduation-collage,#biography .biography-story,#biography .biography-ethos,#biography .education-path{order:initial!important}#biography .biography-graduation-collage{justify-self:center}}

/* Direct shirt inquiries; ordering details are confirmed personally by Tikia. */
.shirt-inquiry-section{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(32px,5vw,72px);margin-top:72px;padding-top:56px;border-top:1px solid color-mix(in srgb,var(--color-ink) 16%,transparent);scroll-margin-top:120px}
.shirt-inquiry-intro h2{font:400 clamp(38px,4vw,56px)/1.1 var(--font-display);letter-spacing:-.02em;margin:18px 0 22px}
.shirt-inquiry-intro>p:not(.eyebrow){font:400 17px/1.7 var(--font-body);max-width:40ch;margin:16px 0}
.shirt-inquiry-intro .shirt-order-note{font-size:13px!important;color:var(--color-olive)}
.shirt-inquiry-section .inquiry-panel{padding:32px;background:color-mix(in srgb,var(--brand-paper) 65%,transparent);border:1px solid color-mix(in srgb,var(--brand-paper) 80%,transparent);border-radius:24px;min-width:0}
.shirt-inquiry-section .form-row{align-items:start}
.shirt-inquiry-section input,.shirt-inquiry-section select,.shirt-inquiry-section textarea{min-width:0;width:100%;font-size:16px}
.shirt-field-note{font:400 11px/1.5 var(--font-body);margin:8px 0 0;color:var(--color-olive)}
.shirt-optional{font-weight:400}
#shirt-inquiry-form .button{margin-top:20px;min-height:48px}
#shirt-inquiry-status{margin-top:16px;line-height:1.6}
#shirt-email-fallback{margin-top:14px;min-height:44px}
@media(max-width:760px){.shirt-inquiry-section{grid-template-columns:minmax(0,1fr);gap:24px;margin-top:40px;padding-top:32px;scroll-margin-top:96px}.shirt-inquiry-section .inquiry-panel{padding:24px;border-radius:20px}.shirt-inquiry-intro>p:not(.eyebrow){max-width:none}.shirt-inquiry-section .form-row{grid-template-columns:minmax(0,1fr);gap:20px}#shirt-submit{width:100%;justify-content:space-between}}
@media(max-width:380px){.shirt-inquiry-section .inquiry-panel{padding:20px}}
#shirt-inquiry-form>select{margin-bottom:24px}

/* Center the family-history copy beside the stacked education list. */
@media(min-width:761px){#biography .biography-ethos{align-self:stretch;display:flex;flex-direction:column;justify-content:center;padding-block:24px}}

/* Typography audit: client-requested larger type, consistent biography serif,
   and legible supporting text. Keep the approved families and dark ink. */
html[data-palette] #home .hero-actions .button{font-size:14px;line-height:1.5}
html[data-palette] #home .hero-eyebrow{font-size:12px;overflow-wrap:anywhere}
html[data-palette] #home .hero-affiliation,
html[data-palette] #home .hero-affiliation :is(span,a){font-size:14px;font-weight:400;line-height:1.7}
html[data-palette] #home .portrait-roles{font-size:13px}
html[data-palette] #home .hero-footer>a{font-size:14px}
html[data-palette] #biography .biography-section-heading .eyebrow{font:600 16px/1.5 var(--font-display);letter-spacing:.08em}
html[data-palette] #biography .education-year{font:500 17px/1.5 var(--font-display);letter-spacing:0}
html[data-palette] #biography .biography-attribution{font-size:18px}
html[data-palette] #biography .social-tile-copy strong{font:600 18px/1.4 var(--font-display)}
html[data-palette] #biography .social-tile-copy>span{font:500 16px/1.5 var(--font-display)}
html[data-palette] :is(#book,#speaking,#cv,#triple-ivy,#shop,#contact) .eyebrow{font-size:12px;line-height:1.6}
html[data-palette] #book :is(.book-introduction,.book-subtitle){font-size:16px;line-height:1.7}
html[data-palette] #book .book-introduction strong{font-size:16px}
html[data-palette] #book :is(.book-publisher,.book-edition,#book-hint,.book-view-controls button,.book-controls button,#book-enlarge,.book-facts dt,.book-facts dd,#praise-status,.praise-source){font-size:12px;line-height:1.6}
html[data-palette] #book :is([role=tab],.book-purchase .button){font-size:14px;line-height:1.5}
html[data-palette] #speaking .section-hero-lead{font-size:16px;line-height:1.75}
html[data-palette] #speaking .button{font-size:14px}
html[data-palette] #cv :is(.cv-explorer-heading>p,.cv-record-primary){font-size:16px;line-height:1.65}
html[data-palette] #cv :is(.cv-record-detail,.cv-search label,.cv-close-label,.button){font-size:14px;line-height:1.6}
html[data-palette] #cv :is(.cv-record-year,.cv-group-heading){font-size:12px;line-height:1.6}
html[data-palette] #triple-ivy :is(.section-hero-lead,.service-detail-content>p){font-size:16px;line-height:1.7}
html[data-palette] #triple-ivy :is(.brand-descriptor,.remote-badge,.consulting-card-footer>p,.disclosure-caption,.catalog-number,.section-kicker,.testimonial-category,.testimonial-count,.archive-number){font-size:12px;line-height:1.6}
html[data-palette] #triple-ivy :is(.button,.catalog-title,.archive-person-context,.archive-caption,.testimonial-card figcaption,.testimonial-toggle,.testimonial-person span,.faq-intro>p){font-size:14px;line-height:1.6}
html[data-palette] #triple-ivy .consultation-intro .fee-terms{font-size:13px;line-height:1.7}
html[data-palette] #contact .contact-copy>p:not(.eyebrow){font-size:16px;line-height:1.7}
html[data-palette] #contact .contact-email{font-size:16px;line-height:1.5}
html[data-palette] :is(#contact,#shirt-inquiry) label{font-size:14px;line-height:1.5}
html[data-palette] :is(#contact-status,#shirt-inquiry-status,.shirt-field-note,.contact-independence){font-size:12px;line-height:1.7}
html[data-palette] .shop-client-gallery figcaption{font-size:13px;line-height:1.5}
html[data-palette] .site-header .nav-contact{font-size:13px;line-height:1.5}
html[data-palette] .site-footer :is(.footer-descriptor,.footer-bottom,.footer-links a,.footer-motion-toggle){font-size:12px;line-height:1.7}
html[data-palette] .site-footer .footer-descriptor{letter-spacing:.04em}
html[data-palette] .site-footer .footer-links{flex-wrap:wrap}
html[data-palette] .site-footer .footer-bottom{flex-wrap:wrap}
html[data-palette] #book :is(.book-story>summary,.book-specs dt,.book-specs dd,.praise-slide figcaption span){font-size:12px;line-height:1.6}
html[data-palette] #speaking :is(.video-caption,#media-meta,.media-choice-top,.media-choice-host,.media-choice-time,.media-selection-heading>span){font-size:12px;line-height:1.6}
html[data-palette] #speaking #media-source{font-size:14px;line-height:1.6}
html[data-palette] #speaking #media-description{font-size:16px;line-height:1.7}
html[data-palette] #cv :is(.cv-search-field label,.cv-mobile-browse label){font-size:14px;line-height:1.5}
html[data-palette] #cv .cv-record-group>h3{font-size:12px;line-height:1.6}
html[data-palette] #triple-ivy .section-hero-note p{font-size:12px;line-height:1.6}
html[data-palette] #triple-ivy :is(.section-hero-copy .button,.button.text-button){font-size:14px;line-height:1.5}
html[data-palette] .site-footer .footer-policy-nav a{font-size:12px;line-height:1.7}
html[data-palette] #book .book-synopsis,
html[data-palette] #triple-ivy :is(.offering-card>p,.consultation-intro>p:not(.eyebrow):not(.fee-terms)),
html[data-palette] .policy-content section p{font-size:16px;line-height:1.75}
html[data-palette] #triple-ivy .offering-card .button.text-button{font-size:14px;line-height:1.5}
html[data-palette] #book-cover-dialog .book-view-controls button{font-size:12px;line-height:1.6}
html[data-palette] #instructors-guide>p,
html[data-palette] #instructors-guide .guide-chapter ol{font-size:16px;line-height:1.75}
html[data-palette] #instructors-guide :is(.guide-download,.guide-chapter summary){font-size:14px;line-height:1.6}
html[data-palette] #instructors-guide :is(.guide-file-note,.guide-chapter-number){font-size:12px;line-height:1.6}
html[data-palette] #triple-ivy .testimonials-more>summary{font-size:14px;line-height:1.6}
html[data-palette] .shop-simple-copy>.eyebrow{font-size:12px;line-height:1.6}
@media(min-width:761px){html[data-palette] .site-footer .footer-return{font-size:12px;line-height:1.7}}

/* Balance the biography introduction against the graduation photographs. */
html[data-palette] #biography :is(.biography-intro,.biography-copy){font:500 20px/1.5 var(--font-display);letter-spacing:0;max-width:none}
@media(min-width:761px){html[data-palette] #biography .biography-story{align-self:stretch;display:flex;flex-direction:column;justify-content:center}}

/* Editorial structure for the biography and portrait credentials. */
html[data-palette] #biography .biography-narrative{display:grid;gap:22px;margin-top:28px;padding-top:24px;border-top:1px solid color-mix(in srgb,var(--color-ink) 15%,transparent)}
html[data-palette] #biography :is(.biography-intro,.biography-copy){margin:0;max-width:48ch;text-wrap:pretty}
html[data-palette] #biography .biography-copy{padding-top:22px;border-top:1px solid color-mix(in srgb,var(--color-ink) 10%,transparent)}
html[data-palette] #home .hero-portrait figcaption{display:block;padding:24px 20px 22px}
html[data-palette] #home .hero-portrait figcaption .portrait-name{font:600 clamp(25px,2.25vw,31px)/1.15 var(--font-display);letter-spacing:-.015em;margin:0;text-wrap:balance}
html[data-palette] #home .hero-portrait figcaption .portrait-roles{font:400 13px/1.6 var(--font-body);letter-spacing:.015em;margin:10px 0 0;gap:0 8px}
html[data-palette] #home .hero-portrait figcaption .hero-affiliation{display:block;margin:20px 0 0;padding:0;border-top:1px solid color-mix(in srgb,var(--color-ink) 16%,transparent)}
html[data-palette] #home .hero-affiliation .affiliation-row{display:block;width:100%;margin:0;padding:12px 0;border-bottom:1px solid color-mix(in srgb,var(--color-ink) 10%,transparent)}
html[data-palette] #home .hero-affiliation .affiliation-row:last-child{border-bottom:0;padding-bottom:0}
html[data-palette] #home .hero-affiliation .affiliation-row:not(:has(a)),
html[data-palette] #home .hero-affiliation .affiliation-row>a{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:14px}
html[data-palette] #home .hero-affiliation :is(.affiliation-label,.affiliation-year){font:400 14px/1.6 var(--font-body);letter-spacing:0;text-transform:none;margin:0;color:var(--color-ink)}
html[data-palette] #home .hero-affiliation .affiliation-year{white-space:nowrap;font-variant-numeric:tabular-nums}
html[data-palette] #home .hero-affiliation a{text-decoration:none}
html[data-palette] #home .hero-affiliation a .affiliation-label{text-decoration:underline;text-decoration-color:color-mix(in srgb,var(--color-ink) 23%,transparent);text-underline-offset:4px;text-decoration-thickness:1px}
html[data-palette] #home .hero-affiliation a:hover .affiliation-label{text-decoration-color:currentColor}
@media(max-width:760px){html[data-palette] #biography .biography-narrative{margin-top:24px;padding-top:22px;gap:20px}html[data-palette] #biography .biography-copy{padding-top:20px}html[data-palette] #home .hero-portrait figcaption{padding:22px 12px 20px}html[data-palette] #home .hero-affiliation .affiliation-row:not(:has(a)),html[data-palette] #home .hero-affiliation .affiliation-row>a{gap:10px}}


/* Shop review: show status spacing only for actual submission feedback. */
#shirt-inquiry-status:empty{margin:0;padding:0}
.shirt-inquiry-section .form-row + .form-row{margin-top:24px}

/* Final typography authority. The existing presentation sheets contain many
   section-specific font shorthands. Important declarations here keep one
   accessible scale from being reduced by those legacy rules. All sizes use
   rem units so browser text-size preferences remain effective. */
:root{
 --reading-body:1.375rem;
 --reading-label:1.25rem;
 --reading-serif:1.375rem;
 --reading-section:2.5rem;
 --reading-subheading:1.75rem;
 --reading-card:1.5rem;
}
body{font-family:var(--font-body);font-size:var(--reading-body);line-height:1.7}
body :is(p,li,dd,dt){font-family:var(--font-body)!important;font-size:var(--reading-body)!important;line-height:1.7!important;font-weight:400!important;letter-spacing:normal!important}
body :is(a,button,input,select,textarea,label,summary,figcaption,small,time,[role="tab"],.eyebrow){font-family:var(--font-body)!important;font-size:var(--reading-label)!important;line-height:1.5!important;letter-spacing:normal!important}
body :is(label,summary,button,[role="tab"],.button){font-weight:500!important}
body :is(input,select,textarea){font-size:var(--reading-body)!important;line-height:1.6!important}
/* Inline text follows its parent; no tiny nested labels or enlarged fragments. */
body :is(span,strong,b,em,time){font-family:inherit!important;font-size:inherit!important;line-height:inherit!important;letter-spacing:inherit!important}
body :is(strong,b){font-weight:600!important}
body :is(p,li,dd,dt,figcaption,summary,label) :is(a,span,em,time,small){font-family:inherit!important;font-size:inherit!important;line-height:inherit!important}
body :is(h1,h2,h3,h4){font-family:var(--font-display)!important;font-weight:500!important;line-height:1.15!important;letter-spacing:-.015em!important;text-wrap:balance}
body h1{font-size:clamp(3rem,4.8vw,4rem)!important}
body h2{font-size:var(--reading-section)!important}
body h3{font-size:var(--reading-subheading)!important}
body h4{font-size:var(--reading-card)!important}
body :is(h1,h2,h3,h4) :is(span,em,a){font-family:inherit!important;font-size:inherit!important;line-height:inherit!important;font-weight:inherit!important}
body :is(.eyebrow,.section-kicker,.contact-pill,.cv-record-group>h3){font-family:var(--font-body)!important;font-size:var(--reading-label)!important;font-weight:500!important;line-height:1.5!important;letter-spacing:.045em!important}
body :is(.hero-subline,.section-hero-lead,.book-subtitle,.book-introduction,.book-synopsis,.consulting-established,.offering-card>p,.contact-copy>p:not(.eyebrow)){font-size:var(--reading-body)!important;line-height:1.7!important}
body :is(.book-specs dt,.book-specs dd,.book-edition,.book-format,.guide-file-note,.guide-chapter-number,.cv-record-year,.cv-record-detail,.archive-person-context,.archive-caption,.testimonial-category,.testimonial-count,.archive-number,.remote-badge,.brand-descriptor,.footer-descriptor,.footer-bottom,.shirt-field-note,.shirt-order-note,.contact-independence,.form-note,.fee-terms,#contact-status,#shirt-inquiry-status,#book-hint,#praise-status,.media-meta,.media-choice-top,.media-choice-host,.media-choice-time,.video-caption,.media-selection-heading>span){font-family:var(--font-body)!important;font-size:var(--reading-label)!important;font-weight:400!important;line-height:1.6!important;letter-spacing:normal!important}
body :is(.testimonial-excerpt,.testimonial-full blockquote p,.praise-slide blockquote p){font-family:var(--font-body)!important;font-size:var(--reading-body)!important;font-weight:400!important;line-height:1.7!important;letter-spacing:normal!important}
body :is(.archive-person-name,.footer-name){font-family:var(--font-display)!important;font-size:var(--reading-card)!important;font-weight:500!important;line-height:1.25!important}
body .testimonial-person{font-size:var(--reading-label)!important;line-height:1.6!important}
body .site-footer .footer-descriptor{display:block;margin-top:8px}
body :is(.footer-policy-nav,.footer-bottom){gap:12px 24px}
body .footer-return{font-size:var(--reading-label)!important;white-space:normal}
body :is(.hero-actions,.book-view-controls,.media-actions){flex-wrap:wrap}
body #book .book-view-controls{flex-wrap:wrap}
body .button{white-space:normal;min-height:48px;height:auto}
body :is(.book-view-controls button,.footer-policy-nav a){min-height:44px}
body .site-header nav a{font-size:var(--reading-label)!important}
body .site-header nav ul{gap:clamp(8px,1.2vw,18px)}
/* Shared editorial eyebrow formatting for the hero and biography. */
body #home .hero-eyebrow,body #biography .biography-section-heading .eyebrow{font-family:var(--font-display)!important;font-size:var(--reading-serif)!important;font-weight:500!important;line-height:1.5!important;letter-spacing:normal!important;text-transform:none;overflow-wrap:normal;text-wrap:balance}
/* Biography uses the client's requested serif consistently, including dates. */
body #biography :is(p,li,span,strong,a){font-family:var(--font-display)!important}
body #biography :is(.biography-intro,.biography-copy,.biography-ethos p,.education-path p){font-size:var(--reading-serif)!important;font-weight:500!important;line-height:1.5!important;letter-spacing:normal!important}
body #biography :is(.biography-attribution,.education-year,.social-tile-copy>span){font-size:1.25rem!important;font-weight:500!important;line-height:1.5!important}
body #biography .social-tile-copy strong{font-size:var(--reading-serif)!important;font-weight:600!important}
body #biography #bio-title{font-size:var(--reading-section)!important;line-height:1.15!important}
body #biography .biography-narrative{gap:24px}
/* Equal-sized name and degree, and equal emphasis across every affiliation. */
body #home .hero-portrait figcaption .portrait-name{font-family:var(--font-display)!important;font-size:1.75rem!important;font-weight:600!important;line-height:1.2!important}
body #home .hero-portrait figcaption .portrait-roles{font-family:var(--font-body)!important;font-size:var(--reading-label)!important;font-weight:400!important;line-height:1.6!important}
body #home .hero-affiliation :is(.affiliation-row,.affiliation-label,.affiliation-year,a){font-family:var(--font-body)!important;font-size:var(--reading-label)!important;font-weight:400!important;line-height:1.6!important;letter-spacing:normal!important}
body #home .hero-footer>span{font-family:var(--font-body)!important;font-size:var(--reading-body)!important;font-weight:400!important;line-height:1.5!important}
/* Consistent consulting card; retain the client's explicit bold statement. */
body #triple-ivy .brand-title{font-family:var(--font-body)!important;font-size:var(--reading-label)!important;font-weight:600!important;letter-spacing:.1em!important;line-height:1.4!important}
body #triple-ivy .consulting-established strong{font-weight:600!important}
body #triple-ivy .consulting-card-footer .section-hero-motto{font-family:var(--font-body)!important;font-size:var(--reading-label)!important;line-height:1.6!important;font-weight:500!important}
body #triple-ivy .consulting-card-footer .section-hero-note p{font-size:var(--reading-label)!important;line-height:1.6!important}
body #triple-ivy .consultation-intro .fee-terms{font-size:var(--reading-label)!important;line-height:1.6!important}
body #triple-ivy .consulting-image-hero .section-hero-copy{width:520px}
body #triple-ivy #consulting-title{font-size:var(--reading-section)!important;max-width:none}
body .shop-client-gallery figcaption{font-size:var(--reading-label)!important}
body .shirt-inquiry-intro .shirt-order-note{font-size:var(--reading-label)!important}
@media(max-width:760px){
 :root{--reading-section:2.125rem;--reading-subheading:1.625rem}
 body #triple-ivy .consulting-image-hero .section-hero-copy{width:100%}
 body .footer-top{flex-wrap:wrap}
 body .footer-top>.footer-return{margin-left:0}
 body .book-view-controls{gap:8px}
 body #biography .biography-section-heading{gap:12px;flex-wrap:wrap}
 body #biography .biography-heading-rule{min-width:20px}
}
@media(max-width:380px){
 body #home .hero-affiliation .affiliation-row:not(:has(a)),body #home .hero-affiliation .affiliation-row>a{grid-template-columns:minmax(0,1fr);gap:4px}
 body #biography .biography-socials{flex-direction:column;align-items:flex-start;gap:20px}
}
/* Let navigation reflow when visitors enlarge text instead of clipping links. */
body .site-header{height:auto;min-height:74px}
body .site-header nav{min-width:0}
body .site-header nav ul{flex-wrap:wrap}
@media(max-width:760px){body .site-header{min-height:66px}}
html[data-palette] body .site-header{height:auto}
@media(min-width:851px){html[data-palette] body .site-header nav{flex:1 1 0%;min-width:0}html[data-palette] body .site-header nav ul{flex-wrap:wrap}}
/* The consulting hero uses the shared Garamond family with its compact scale. */
html[data-palette] body #triple-ivy #consulting-title{font-family:var(--font-body)!important;font-size:2rem!important;font-weight:400!important;line-height:1.25!important;letter-spacing:-.025em!important;text-wrap:balance}
html[data-palette] body #triple-ivy .section-hero-copy>.section-hero-note p{font-family:var(--font-body)!important;font-size:var(--reading-label)!important;line-height:1.6!important;font-weight:400!important}
@media(max-width:760px){html[data-palette] body #triple-ivy #consulting-title{font-size:1.875rem!important;line-height:1.25!important}}
/* Preserve readable text at enlarged browser sizes: labels may wrap and
   columns must be allowed to shrink below a long word's intrinsic width. */
body :is(p,h1,h2,h3,h4,li,.portrait-name,.button){overflow-wrap:anywhere}
body .button>span:first-child{min-width:0;overflow-wrap:anywhere}
@media(max-width:760px){
 html[data-palette] body #home .hero-footer>a{display:grid;grid-template-columns:minmax(0,1fr) auto;white-space:normal;overflow-wrap:anywhere}
 html[data-palette] #biography .biography-section-heading>.eyebrow{min-width:0;max-width:100%;flex-wrap:wrap}
 html[data-palette] #biography .education-path li{grid-template-columns:minmax(0,1fr) auto}
 html[data-palette] #biography .education-path h4{white-space:normal;overflow-wrap:anywhere}
 html[data-palette] #book .book-tabs{display:flex;flex-wrap:wrap;gap:10px}
 html[data-palette] #book .book-tabs>a{min-width:0;max-width:100%;overflow-wrap:anywhere}
 html[data-palette] #book :is(.praise-heading,.praise-controls){flex-wrap:wrap;min-width:0;max-width:100%;gap:12px}
 html[data-palette] #book .praise-heading>.eyebrow{min-width:0;max-width:100%}
 html[data-palette] #book #praise-status{white-space:normal;min-width:0;max-width:100%;overflow-wrap:anywhere}
 html[data-palette] #speaking .speaking-copy>.button{display:grid;grid-template-columns:minmax(0,1fr) auto;max-width:100%}
 html[data-palette] #speaking .media-choice{min-width:0;grid-template-columns:60px minmax(0,1fr)}
 html[data-palette] #speaking .media-choice :is(span,strong){min-width:0;white-space:normal;overflow-wrap:anywhere}
 html[data-palette] #speaking .video-frame{min-height:12rem}
 html[data-palette] #speaking .video-frame .video-caption{inset:auto 16px 16px;white-space:normal;overflow-wrap:anywhere;max-width:calc(100% - 32px);text-align:left}
 html[data-palette] #speaking .video-frame .play-disc{top:20px;bottom:auto;left:20px;transform:none}
 html[data-palette] #cv .cv-summary-download{white-space:normal;min-width:0;max-width:100%;width:auto;display:grid;grid-template-columns:minmax(0,1fr) auto;overflow-wrap:anywhere}
 html[data-palette] #contact .contact-email{white-space:normal;overflow-wrap:anywhere;max-width:100%;width:fit-content;display:block}
}
@media(max-width:400px){
 html[data-palette] #cv>.cv-shell{grid-template-columns:minmax(0,1fr)}
 html[data-palette] #contact .contact-copy{padding-right:0}
 html[data-palette] #contact .contact-logo-stage{position:relative;inset:auto;width:100%;height:240px;max-width:220px;margin:24px auto 0}
}

/* Editorial labels use natural casing throughout the site. */
html[data-palette] body :is(.eyebrow,.section-kicker,.brand-title){text-transform:none!important;letter-spacing:normal!important}
html[data-palette] body #triple-ivy .consulting-disclosures .disclosure-title{font-weight:700!important}

/* Testimonial subjects share the service-card title scale. */
html[data-palette] body #triple-ivy .testimonials-featured .testimonial-category{font-family:var(--font-display)!important;font-size:var(--reading-subheading)!important;font-weight:500!important;line-height:1.15!important;letter-spacing:-.015em!important}

/* Quiet, balanced profile links at the close of the biography. */
html[data-palette] body #biography .biography-socials{display:grid;grid-template-columns:repeat(2,minmax(0,300px));justify-content:end;align-items:stretch;gap:16px;margin-top:28px;padding-top:24px}
html[data-palette] body #biography .social-tile{display:grid;grid-template-columns:minmax(0,1fr) 36px;align-items:center;gap:20px;min-height:100px;padding:20px 22px;border:1px solid color-mix(in srgb,var(--color-white) 70%,transparent);border-radius:18px;background:color-mix(in srgb,var(--brand-paper) 32%,transparent);box-shadow:inset 0 1px 0 color-mix(in srgb,var(--color-white) 65%,transparent);text-decoration:none}
html[data-palette] body #biography .social-tile-copy{gap:5px}
html[data-palette] body #biography .social-tile-copy strong{text-decoration:underline;text-decoration-thickness:1px;text-decoration-color:color-mix(in srgb,var(--color-ink) 35%,transparent);text-underline-offset:5px}
html[data-palette] body #biography .social-tile-copy>span{font-weight:400!important}
html[data-palette] body #biography .social-arrow{display:grid;place-items:center;width:36px;height:36px;border:1px solid color-mix(in srgb,var(--color-ink) 13%,transparent);border-radius:50%;background:color-mix(in srgb,var(--color-white) 25%,transparent);font-size:22px!important;line-height:1!important;transform:none}
@media(hover:hover){html[data-palette] body #biography .social-tile:hover{background:color-mix(in srgb,var(--brand-paper) 64%,transparent);border-color:var(--color-white)}html[data-palette] body #biography .social-tile:hover strong{text-decoration-color:currentColor}}
@media(max-width:650px){html[data-palette] body #biography .biography-socials{grid-template-columns:minmax(0,1fr);gap:12px}html[data-palette] body #biography .social-tile{padding:18px;gap:14px}}

/* Keep the desktop navigation pill fitted to its links. */
@media(min-width:1101px){html[data-palette] body .site-header nav{flex:0 1 auto;width:auto;margin-left:auto}html[data-palette] body .site-header nav ul{justify-content:center}}

/* Menus reflow within the viewport when visitors enlarge text. */
:root{--site-header-bottom:100px}
@media(max-width:1100px){
 html[data-palette] body .site-header nav{max-height:calc(100dvh - var(--site-header-bottom,100px) - 20px);overflow-y:auto;background:linear-gradient(135deg,var(--brand-paper),color-mix(in srgb,var(--brand-paper) 96%,var(--color-ink)))}
 html[data-palette] body .site-header nav ul{grid-template-columns:repeat(2,minmax(0,1fr))}
 html[data-palette] body .site-header nav li{min-width:0}
 html[data-palette] body .site-header nav a{white-space:normal;overflow-wrap:anywhere;border:0;border-radius:12px}
}
@media(max-width:600px){html[data-palette] body .site-header nav ul{grid-template-columns:minmax(0,1fr)}}

/* Recording cards keep their thumbnails inside the grid track and reflow
   before the metadata column becomes cramped. */
html[data-palette] #speaking .media-selection{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,24rem),1fr))}
html[data-palette] #speaking .media-choice{min-width:0}
html[data-palette] #speaking .media-choice-cover{width:100%;max-width:100%;min-width:0}
html[data-palette] #speaking .media-choice :is(.media-choice-top,strong,.media-choice-host,.media-choice-time){min-width:0;white-space:normal;overflow-wrap:anywhere}
html[data-palette] #speaking .media-selection{container-type:inline-size;container-name:recording-list}
@container recording-list (max-width:22rem){
 html[data-palette] #speaking .media-library .media-choice{grid-template-columns:minmax(0,1fr);grid-template-rows:auto;padding:16px;row-gap:6px}
 html[data-palette] #speaking .media-choice-cover{grid-column:1;grid-row:auto;width:88px;max-width:calc(100% - 48px);margin-bottom:8px;justify-self:start}
 html[data-palette] #speaking .media-choice :is(.media-choice-top,strong,.media-choice-host,.media-choice-time){grid-column:1}
 html[data-palette] #speaking .media-library .media-choice-icon{top:18px;right:16px;transform:none}
}
/* Book tabs also wrap when text is enlarged at tablet widths. */
html[data-palette] body #book .book-tabs{display:flex;flex-wrap:wrap}
html[data-palette] body #book .book-tabs>a{min-width:0;white-space:normal;overflow-wrap:anywhere}

/* Expanded content needs the same room to reflow as the closed cards. */
html[data-palette] #book .book-specs{grid-template-columns:repeat(auto-fit,minmax(min(100%,12rem),1fr))}
html[data-palette] #book .book-specs>div{display:block;min-width:0}
html[data-palette] #book .book-specs :is(dt,dd){white-space:normal;overflow-wrap:anywhere}
html[data-palette] #book .book-specs dd{margin-top:8px}
html[data-palette] #book .book-story>summary{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px}
html[data-palette] #book .book-story>summary>span:first-child{min-width:0;overflow-wrap:anywhere}
html[data-palette] #book .book-story>summary>span:last-child{width:1.5em;height:1.5em;line-height:1!important;margin-inline:.35em}
html[data-palette] #book .book-view-controls button{min-width:0;max-width:100%;white-space:normal;overflow-wrap:anywhere}
html[data-palette] #book .book-edition{min-width:0;flex-wrap:wrap;gap:8px;overflow-wrap:anywhere}
html[data-palette] #book .praise-slide figcaption>span{min-width:0;max-width:100%;overflow-wrap:anywhere}
html[data-palette] #book .praise-controls button{width:max(44px,1.75em);height:max(44px,1.75em);padding:0;flex-shrink:0}
html[data-palette] #book .guide-chapters{container:guide-chapters / inline-size}
html[data-palette] #book .guide-chapter>summary{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:8px 12px}
html[data-palette] #book .guide-chapter>summary>span{min-width:0;overflow-wrap:anywhere}
html[data-palette] #book .guide-plus{display:grid;place-items:center;width:1.5em;height:1.5em;line-height:1!important;margin-inline:.35em}
@container guide-chapters (max-width:20rem){
 html[data-palette] #book .guide-chapter>summary{grid-template-columns:minmax(0,1fr) auto}
 html[data-palette] #book .guide-chapter-number{grid-column:1;grid-row:1}
 html[data-palette] #book .guide-plus{grid-column:2;grid-row:1}
 html[data-palette] #book .guide-chapter>summary>span:nth-child(2){grid-column:1/-1;grid-row:2}
}
html[data-palette] #speaking .media-selection-heading{flex-wrap:wrap;gap:8px 16px}
html[data-palette] #speaking .media-selection-heading>*{min-width:0;max-width:100%;overflow-wrap:anywhere}
html[data-palette] #triple-ivy .consulting-brand{flex-wrap:wrap}
html[data-palette] #triple-ivy .brand-type{flex:1 1 10rem;min-width:0;overflow-wrap:anywhere}
html[data-palette] #triple-ivy .service-inquiry{display:inline-grid;grid-template-columns:minmax(0,1fr) auto;max-width:100%;gap:12px;padding-inline:16px}
html[data-palette] #triple-ivy .testimonials-archive{container:client-stories / inline-size}
html[data-palette] #triple-ivy .archive-story-heading{min-width:0;grid-template-columns:1.5em minmax(0,1fr)}
html[data-palette] #triple-ivy .archive-story-heading>span{min-width:0;overflow-wrap:anywhere}
@container client-stories (max-width:42rem){
 html[data-palette] #triple-ivy .testimonials-archive .archive-story{grid-template-columns:minmax(0,1fr);gap:20px}
}
html[data-palette] .shop-client-gallery{grid-template-columns:repeat(auto-fit,minmax(min(100%,8rem),1fr))}
html[data-palette] .shop-client-gallery figcaption{overflow-wrap:anywhere}
html[data-palette] .shop-simple-copy>.text-link{max-width:100%;overflow-wrap:anywhere}

/* Fit CV actions to the available reading width, including enlarged text. */
html[data-palette] #cv .cv-shell{container:cv-card / inline-size}
html[data-palette] #cv .cv-summary-download{--cv-stacked:0}
html[data-palette] #cv :is(.cv-record-year,.cv-source-link){white-space:normal;overflow-wrap:anywhere}
@container cv-card (max-width:44rem){
 html[data-palette] #cv .cv-explorer-summary{align-items:stretch;flex-direction:column;gap:20px;padding:26px 24px calc(26px + var(--cv-download-height) + 16px)}
 html[data-palette] #cv .cv-summary-actions{width:100%;padding-right:0;justify-content:flex-start;margin-left:0}
 html[data-palette] #cv .cv-open-control{width:100%;min-width:0;flex:1;white-space:normal}
 html[data-palette] #cv .cv-summary-download{--cv-stacked:1;left:25px;right:25px;width:auto;max-width:none;top:var(--cv-download-top)}
}

/* The introduction shares the portrait's height, with a slim credential
   ribbon spanning the foot of the composition. */
html[data-palette] #home{padding:16px 0 32px}
html[data-palette] #home .hero-grid{
 display:grid;grid-template-columns:minmax(0,1.24fr) minmax(0,.96fr);
 grid-template-areas:"intro portrait" "credentials credentials";
 grid-template-rows:auto auto;align-items:stretch;gap:20px 40px;
 width:calc(100% - 80px);max-width:1360px;margin:0 auto;padding:32px 32px 20px;
 min-height:0;height:auto;border:1px solid color-mix(in srgb,var(--color-white) 84%,transparent);border-radius:28px;
 background:linear-gradient(135deg,color-mix(in srgb,var(--brand-paper) 70%,transparent),color-mix(in srgb,var(--brand-paper) 40%,transparent));
 box-shadow:inset 0 1px 0 var(--color-white),0 18px 48px -32px color-mix(in srgb,var(--color-ink) 26%,transparent);
 backdrop-filter:blur(24px) saturate(115%);-webkit-backdrop-filter:blur(24px) saturate(115%);
}
html[data-palette] #home .hero-grid::before,html[data-palette] #home .hero-grid::after{display:none}
html[data-palette] #home .hero-copy{grid-area:intro;width:100%;max-width:none;min-width:0;margin:0;padding:4px 0 0;align-self:center;align-items:flex-start}
html[data-palette] #home .hero-eyebrow{margin:0 0 20px;gap:12px;max-width:none;color:var(--color-ink)}
html[data-palette] #home .hero-eyebrow::before{width:24px;background:var(--color-ink);opacity:.5}
html[data-palette] #home h1{font-size:clamp(3rem,4.4vw,4rem)!important;line-height:1.06!important;max-width:none;margin:0}
html[data-palette] #home h1 .hero-emphasis{background:none;color:var(--color-ink);-webkit-text-fill-color:currentColor;animation:none;font-style:italic}
html[data-palette] #home .hero-subline{margin:22px 0 0;max-width:51ch;text-wrap:pretty}
html[data-palette] #home .hero-actions{display:flex;flex-direction:row;align-items:stretch;gap:12px;margin:24px 0 0;flex-wrap:wrap;width:auto}
html[data-palette] #home .hero-actions .button{padding:13px 20px;gap:20px;min-height:52px;border-radius:14px;box-shadow:inset 0 1px 0 color-mix(in srgb,var(--color-white) 65%,transparent),0 4px 14px -10px color-mix(in srgb,var(--color-ink) 30%,transparent)}
html[data-palette] #home .hero-actions .button.secondary{background:color-mix(in srgb,var(--brand-paper) 45%,transparent)!important;color:var(--color-ink)!important;border-color:color-mix(in srgb,var(--color-ink) 20%,transparent)!important}
html[data-palette] #home .hero-band{grid-area:portrait;min-width:0;width:100%;max-width:none;margin:0;padding:0;background:none;border:0;box-shadow:none;align-self:stretch}
html[data-palette] #home .hero-band::after{display:none}
html[data-palette] #home .hero-portrait{position:relative;width:100%;height:100%;min-height:440px;max-width:none;margin:0;padding:0;border:0;border-radius:20px;background:var(--brand-paper);box-shadow:none;overflow:hidden;backdrop-filter:none;-webkit-backdrop-filter:none}
html[data-palette] #home .hero-portrait>img{position:absolute;inset:0;width:100%;height:100%;max-height:none;aspect-ratio:auto;object-fit:cover;object-position:center 22%;border:0;border-radius:0}
html[data-palette] #home .hero-portrait figcaption{position:absolute;inset:auto 16px 16px;margin:0;padding:18px 20px;background:color-mix(in srgb,var(--brand-paper) 84%,transparent);border:1px solid color-mix(in srgb,var(--color-white) 85%,transparent);border-radius:14px;box-shadow:inset 0 1px 0 color-mix(in srgb,var(--color-white) 75%,transparent),0 8px 22px -16px color-mix(in srgb,var(--color-ink) 25%,transparent);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
html[data-palette] #home .hero-portrait figcaption .portrait-name{margin:0}
html[data-palette] #home .hero-portrait figcaption .portrait-roles{margin-top:6px}
html[data-palette] #home .hero-footer{grid-area:footer;display:block;width:100%;min-width:0;min-height:0;margin:20px 0 0;padding:18px 0 0;border:0;border-top:1px solid color-mix(in srgb,var(--color-ink) 15%,transparent);text-align:left}
html[data-palette] #home .hero-footer>span{display:block;max-width:none;margin-inline:0;text-wrap:wrap}
@media(min-width:761px){
 html[data-palette] #home .hero-band{margin-top:16px}
}
@media(min-width:1001px){
 html[data-palette] #home .hero-grid{min-height:min(1000px,calc(100svh - var(--nav-height-desktop) - 40px));grid-template-rows:minmax(0,1fr) auto}
 html[data-palette] #home .hero-copy{display:flex;flex-direction:column;align-self:stretch;justify-content:space-between;gap:28px;padding:40px 0 28px}
 html[data-palette] #home .hero-eyebrow{margin:0}
 html[data-palette] #home .hero-subline{margin:0}
 html[data-palette] #home .hero-footer{margin:0;padding-top:22px}
 html[data-palette] #home .hero-actions{margin:0}
}
@media(min-width:1001px) and (max-height:800px){
 html[data-palette] #home{padding-top:10px}
 html[data-palette] #home .hero-grid{padding:24px 28px 16px;gap:18px 32px}
 html[data-palette] #home h1{font-size:3rem!important}
 html[data-palette] #home .hero-copy{padding:0;gap:16px}
 html[data-palette] #home .hero-portrait{min-height:400px}
}
@media(max-width:1000px){
 html[data-palette] #home .hero-grid{width:calc(100% - 48px);padding:26px 24px 20px;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);grid-template-areas:"intro portrait" "credentials credentials";gap:24px}
 html[data-palette] #home h1{font-size:3rem!important}
 html[data-palette] #home h1 .line-mask{display:contents}
 html[data-palette] #home h1 .hero-line{display:inline}
 html[data-palette] #home .hero-portrait{min-height:460px}
 html[data-palette] #home .hero-portrait figcaption{inset:auto 12px 12px;padding:16px 14px}
}
@media(max-width:760px){
 html[data-palette] #home{padding:14px 0 24px}
 html[data-palette] #home .hero-grid{width:calc(100% - 28px);padding:26px 22px 20px;grid-template-columns:minmax(0,1fr);grid-template-areas:"eyebrow" "title" "portrait" "description" "footer" "actions" "credentials";gap:24px;border-radius:24px}
 html[data-palette] #home .hero-copy{display:contents}
 html[data-palette] #home .hero-footer{margin:0;padding-top:20px}
 html[data-palette] #home .hero-eyebrow{grid-area:eyebrow;gap:10px;margin:0}
 html[data-palette] #home h1{grid-area:title;font-size:2.625rem!important}
 html[data-palette] #home .hero-subline{grid-area:description;margin:0}
 html[data-palette] #home .hero-actions{grid-area:actions;width:100%;display:grid;grid-template-columns:minmax(0,1fr);gap:12px;margin:0}
 html[data-palette] #home .hero-actions .button{justify-content:space-between;width:100%}
 html[data-palette] #home .hero-portrait{min-height:0;height:auto;overflow:hidden;border:1px solid color-mix(in srgb,var(--color-white) 75%,transparent);background:color-mix(in srgb,var(--brand-paper) 45%,transparent)}
 html[data-palette] #home .hero-portrait>img{position:static;height:auto;aspect-ratio:4/3;object-position:center 22%}
 html[data-palette] #home .hero-portrait figcaption{position:static;margin:0;padding:20px 18px;border:0;border-radius:0;background:none;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}
}
@media(max-width:380px){html[data-palette] #home .hero-grid{padding-inline:18px}html[data-palette] #home h1{font-size:2.5rem!important}}
@media(prefers-reduced-transparency:reduce),(prefers-contrast:more){html[data-palette] #home .hero-grid,html[data-palette] #home .hero-portrait figcaption{background:var(--brand-paper);backdrop-filter:none;-webkit-backdrop-filter:none}}

/* One continuous ribbon, with the original four links available to assistive
   technology. Keyboard focus and reduced motion reveal a static, wrapping list. */
html[data-palette] #home .hero-credentials{
 grid-area:credentials;display:grid;grid-template-columns:minmax(0,1fr);gap:12px;align-items:center;min-width:0;width:100%;margin:0;padding:12px;
 border:1px solid color-mix(in srgb,var(--color-white) 82%,transparent);border-radius:18px;
 background:linear-gradient(125deg,color-mix(in srgb,var(--color-white) 64%,transparent),color-mix(in srgb,var(--brand-paper) 24%,transparent)),linear-gradient(180deg,color-mix(in srgb,var(--color-white) 20%,transparent),color-mix(in srgb,var(--color-ink) 3%,transparent));
 box-shadow:inset 0 1px 0 var(--color-white),inset 0 -1px 0 color-mix(in srgb,var(--color-white) 35%,transparent),0 0 0 1px color-mix(in srgb,var(--color-ink) 5%,transparent),0 10px 22px -15px color-mix(in srgb,var(--color-ink) 36%,transparent),0 2px 5px -2px color-mix(in srgb,var(--color-ink) 12%,transparent);
 backdrop-filter:blur(18px) saturate(120%);-webkit-backdrop-filter:blur(18px) saturate(120%);
}
html[data-palette] #home .hero-credentials.is-running{grid-template-columns:minmax(0,1fr) 44px}
html[data-palette] #home .affiliations-viewport{min-width:0;width:100%;overflow:hidden}
html[data-palette] #home .affiliations-track{--affiliations-distance:0px;--affiliations-duration:60s;width:100%;min-width:0}
html[data-palette] #home .hero-credentials :is(.hero-affiliation,.affiliations-repeat){display:flex;flex-wrap:wrap;align-items:center;gap:12px 28px;min-width:0;width:100%;max-width:none;margin:0;padding:0;border:0}
html[data-palette] #home .hero-credentials .affiliations-repeat{display:none}
html[data-palette] #home .hero-credentials :is(.affiliation-row,.affiliation-label,.affiliation-year,a){font-family:var(--font-body)!important;font-size:var(--reading-label)!important;font-weight:400!important;line-height:1.6!important;letter-spacing:normal!important}
html[data-palette] #home .hero-credentials .affiliation-row,
html[data-palette] #home .hero-credentials .affiliation-row:nth-child(even){display:block;width:auto;min-width:0;max-width:100%;margin:0;padding:0;border:0}
html[data-palette] #home .hero-credentials .affiliation-row>a{display:inline;min-width:0;width:auto;height:auto;margin:0;padding:0;text-decoration:none}
html[data-palette] #home .hero-credentials .affiliation-label{display:inline;white-space:normal;overflow-wrap:anywhere;text-wrap:initial}
html[data-palette] #home .hero-credentials .affiliation-year{display:inline;white-space:nowrap;margin:0;padding:0;border:0;background:none;border-radius:0;font-variant-numeric:tabular-nums}
html[data-palette] #home .hero-credentials a .affiliation-label{text-decoration:underline;text-decoration-color:color-mix(in srgb,var(--color-ink) 24%,transparent);text-decoration-thickness:1px;text-underline-offset:4px}
html[data-palette] #home .hero-credentials a:hover .affiliation-label{text-decoration-color:currentColor}
html[data-palette] #home .hero-credentials.is-running .affiliations-viewport{mask-image:linear-gradient(90deg,transparent,var(--color-ink) 16px,var(--color-ink) calc(100% - 16px),transparent)}
html[data-palette] #home .hero-credentials.is-running .affiliations-track{display:flex;width:max-content;animation:affiliations-scroll var(--affiliations-duration,60s) linear infinite;will-change:transform}
html[data-palette] #home .hero-credentials.is-running :is(.hero-affiliation,.affiliations-repeat){display:flex;flex:none;flex-wrap:nowrap;gap:0;width:max-content}
html[data-palette] #home .hero-credentials.is-running .affiliation-row{display:flex;align-items:center;flex:none;max-width:none;padding-right:32px;white-space:nowrap}
html[data-palette] #home .hero-credentials.is-running .affiliation-row::after{content:"";display:block;flex:none;width:4px;height:4px;margin-left:32px;border-radius:50%;background:color-mix(in srgb,var(--color-ink) 40%,transparent)}
html[data-palette] #home .hero-credentials.is-running :is(.affiliation-row>a,.affiliation-label){display:inline;white-space:nowrap}
html[data-palette] #home .hero-credentials.is-running .affiliation-row:not(:has(a)){display:block}
html[data-palette] #home .hero-credentials.is-running .affiliation-row:not(:has(a))::after{display:inline-block;vertical-align:middle}
html[data-palette] #home .hero-credentials.is-paused .affiliations-track{animation-play-state:paused}
html[data-palette] #home .affiliations-toggle{display:grid;place-items:center;width:44px;height:44px;min-height:44px;padding:0;border:1px solid color-mix(in srgb,var(--color-white) 86%,transparent);border-radius:50%;background:linear-gradient(145deg,color-mix(in srgb,var(--color-white) 86%,transparent),color-mix(in srgb,var(--brand-paper) 38%,transparent));color:var(--color-ink);box-shadow:inset 0 1px 0 var(--color-white),0 0 0 1px color-mix(in srgb,var(--color-ink) 8%,transparent),0 3px 8px -4px color-mix(in srgb,var(--color-ink) 25%,transparent);cursor:pointer}
html[data-palette] #home .affiliations-toggle:hover{background:color-mix(in srgb,var(--brand-paper) 80%,transparent)}
html[data-palette] #home .affiliations-toggle svg{width:18px;height:18px}
html[data-palette] #home .affiliations-play-icon{display:none}
html[data-palette] #home .is-paused .affiliations-play-icon{display:block}
html[data-palette] #home .is-paused .affiliations-pause-icon{display:none}
@keyframes affiliations-scroll{from{transform:translateX(16px)}to{transform:translateX(calc(16px - var(--affiliations-distance,0px)))}}
@media(hover:hover) and (pointer:fine){html[data-palette] #home .affiliations-viewport:hover .affiliations-track{animation-play-state:paused}}
html[data-palette] #home .hero-credentials.is-running:has(.affiliations-viewport a:focus-visible){grid-template-columns:minmax(0,1fr)}
html[data-palette] #home .hero-credentials.is-running .affiliations-viewport:has(a:focus-visible){mask-image:none;overflow:visible}
html[data-palette] #home .hero-credentials.is-running .affiliations-viewport:has(a:focus-visible) .affiliations-track{width:100%;animation:none;transform:none;will-change:auto}
html[data-palette] #home .hero-credentials.is-running .affiliations-viewport:has(a:focus-visible) .hero-affiliation{width:100%;flex-wrap:wrap;gap:12px 28px}
html[data-palette] #home .hero-credentials.is-running .affiliations-viewport:has(a:focus-visible) .affiliation-row{display:block;max-width:100%;padding:0;white-space:normal}
html[data-palette] #home .hero-credentials.is-running .affiliations-viewport:has(a:focus-visible) :is(.affiliation-row>a,.affiliation-label){white-space:normal}
html[data-palette] #home .hero-credentials.is-running .affiliations-viewport:has(a:focus-visible) :is(.affiliations-repeat,.affiliation-row::after),html[data-palette] #home .hero-credentials:has(.affiliations-viewport a:focus-visible) .affiliations-toggle{display:none}
@media(max-width:760px){
 html[data-palette] #home .hero-credentials{padding:10px 8px;border-radius:16px}
 html[data-palette] #home .hero-credentials.is-running{gap:8px}
 html[data-palette] #home .hero-credentials:not(.is-running) .hero-affiliation:not(.affiliations-repeat){display:grid;grid-template-columns:minmax(0,1fr);gap:14px}
}
@media(prefers-reduced-motion:reduce){
 html[data-palette] #home .hero-credentials .affiliations-track{animation:none!important;transform:none!important;will-change:auto}
}
@media(prefers-reduced-transparency:reduce),(prefers-contrast:more){
 html[data-palette] #home .hero-credentials{background:var(--brand-paper);border-color:color-mix(in srgb,var(--color-ink) 25%,var(--brand-paper));backdrop-filter:none;-webkit-backdrop-filter:none}
}

/* Keep the portrait caption snug to its longest line, with equal side padding. */
html[data-palette] body #home .hero-portrait figcaption{right:auto;width:fit-content;max-width:calc(100% - 32px)}
@media(min-width:761px) and (max-width:1000px){html[data-palette] body #home .hero-portrait figcaption{max-width:calc(100% - 24px)}}
@media(max-width:760px){html[data-palette] body #home .hero-portrait figcaption{max-width:100%}}

/* Consulting and closing sections share one quiet glass surface and type scale.
   Content follows the client's copy; grids reflow instead of shrinking text. */
html[data-palette] #triple-ivy,
html[data-palette] .site-footer{
 --panel-edge:color-mix(in srgb,var(--color-white) 85%,transparent);
 --panel-rule:color-mix(in srgb,var(--color-ink) 15%,transparent);
 --panel-fill:linear-gradient(135deg,color-mix(in srgb,var(--brand-paper) 68%,transparent),color-mix(in srgb,var(--brand-paper) 40%,transparent));
 --panel-shadow:inset 0 1px 0 var(--color-white),0 18px 48px -34px color-mix(in srgb,var(--color-ink) 30%,transparent);
}
html[data-palette] #triple-ivy .consulting-image-hero{padding-block:64px;min-height:0}
html[data-palette] #triple-ivy .consulting-image-hero>.container{min-height:0}
/* The store supplies the gap after testimonials; avoid stacking section padding. */
html[data-palette] #triple-ivy>.section-body{padding-bottom:0}
html[data-palette] #triple-ivy .consulting-image-hero .section-hero-copy{
 width:600px;max-width:100%;padding:36px;border:1px solid var(--panel-edge);border-radius:28px;
 background:linear-gradient(135deg,color-mix(in srgb,var(--brand-paper) 60%,transparent),color-mix(in srgb,var(--brand-paper) 34%,transparent));
 box-shadow:var(--panel-shadow);backdrop-filter:blur(24px) saturate(115%);-webkit-backdrop-filter:blur(24px) saturate(115%);
 color:var(--color-ink);overflow:hidden;isolation:isolate;
}
html[data-palette] #triple-ivy .section-hero-copy::before{display:none}
html[data-palette] #triple-ivy :is(p,h2,h3,li,summary),html[data-palette] .site-footer :is(a,span){overflow-wrap:anywhere}
html[data-palette] #triple-ivy .consulting-card-top{display:block;margin:0 0 28px;padding:0 0 24px;border-bottom:1px solid var(--panel-rule)}
html[data-palette] #triple-ivy .consulting-brand{gap:16px;align-items:center}
html[data-palette] #triple-ivy .brand-quill{width:64px;height:76px;flex:none;object-fit:contain}
html[data-palette] #triple-ivy .brand-type{padding:0;gap:5px;min-width:0}
html[data-palette] #triple-ivy .brand-descriptor{max-width:none;margin:0}
html[data-palette] #triple-ivy .consulting-introduction{margin:0}
html[data-palette] body #triple-ivy #consulting-title{margin:0;max-width:26ch;text-wrap:pretty}
html[data-palette] #triple-ivy .section-hero-lead{margin:20px 0 0;max-width:40ch}
html[data-palette] #triple-ivy .consulting-card-footer{margin:28px 0 0;padding:24px 0;border:0;border-block:1px solid var(--panel-rule);border-radius:0;background:none;box-shadow:none}
html[data-palette] #triple-ivy .consulting-established{margin:0;padding:0;border:0;text-wrap:pretty}
html[data-palette] #triple-ivy .consulting-card-footer .section-hero-motto{display:flex;flex-wrap:wrap;gap:8px 0;margin:14px 0 0;padding:0;border:0;text-align:left}
html[data-palette] #triple-ivy .section-hero-motto span{padding:0 20px;border:0;border-left:1px solid var(--panel-rule);text-align:left}
html[data-palette] #triple-ivy .section-hero-motto span:first-child{padding-left:0;border:0}
html[data-palette] #triple-ivy .consulting-action{display:flex;flex-wrap:wrap;align-items:center;gap:18px 24px;margin-top:24px}
html[data-palette] #triple-ivy .consulting-action .button{display:flex;justify-content:space-between;gap:32px;min-height:54px;margin:0;padding:14px 20px;border-radius:14px}
html[data-palette] #triple-ivy .consulting-action .remote-badge{position:static;display:inline-flex;align-items:center;gap:8px;margin:0;padding:0;max-width:100%;background:none;border:0;box-shadow:none;color:var(--color-ink)}
html[data-palette] #triple-ivy .consulting-action .remote-badge::before{width:6px;height:6px;flex:none;background:var(--color-olive)}
html[data-palette] #triple-ivy .section-hero-copy>.section-hero-note{display:block;margin:20px 0 0;padding:0;border:0}
html[data-palette] #triple-ivy .section-hero-copy>.section-hero-note p{max-width:none;margin:0;text-align:left;text-wrap:pretty}

/* Two generous columns keep the service descriptions readable. Shared tracks
   align each pair without artificial blank space within the text. */
html[data-palette] #triple-ivy>.section-body{padding-top:48px}
html[data-palette] #services.offering-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(6,auto);gap:0 24px;align-items:stretch}
html[data-palette] #services.offering-grid>.offering-card{
 display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:subgrid;grid-row:span 6;gap:0;align-items:start;text-align:left;min-width:0;
 padding:30px 32px;border:1px solid var(--panel-edge);border-radius:24px;background:var(--panel-fill);box-shadow:var(--panel-shadow);
 backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);overflow:visible;
}
html[data-palette] #services.offering-grid>.offering-card:nth-child(n+3){margin-top:24px}
html[data-palette] #services .offering-heading{display:flex;align-items:baseline;gap:16px;margin:0 0 22px;padding:0 0 20px;border-bottom:1px solid var(--panel-rule);width:100%;min-width:0}
html[data-palette] #services .number-circle{display:block;flex:none;width:auto;height:auto;padding:0;margin:0;border:0;border-radius:0;background:none;box-shadow:none;transform:none;font:500 var(--reading-label)/1.5 var(--font-body);font-variant-numeric:tabular-nums;color:var(--color-ink)}
html[data-palette] #services .offering-heading h3{margin:0;min-height:0;text-align:left;text-wrap:pretty}
html[data-palette] #services.offering-grid>.offering-card>p{margin:0 0 22px;min-height:0;max-width:none;text-align:left;text-wrap:pretty;align-self:start}
html[data-palette] #services.offering-grid>.offering-card>.checked-list{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:subgrid;grid-row:span 3;align-self:stretch;width:100%;margin:0 0 24px;padding:0;min-width:0}
html[data-palette] #services .checked-list li{display:grid;grid-template-columns:1em minmax(0,1fr);gap:12px;align-items:start;justify-content:start;text-align:left;padding:12px 0;border-color:var(--panel-rule)}
html[data-palette] #services.offering-grid>.offering-card>a.button.text-button{display:flex;align-self:stretch;justify-content:space-between;gap:16px;min-height:52px;margin:0;padding:13px 18px;text-align:left;border-radius:14px;background:color-mix(in srgb,var(--brand-paper) 48%,transparent);border:1px solid color-mix(in srgb,var(--color-ink) 18%,transparent);box-shadow:inset 0 1px 0 var(--panel-edge)}
html[data-palette] #services .offering-card::before,html[data-palette] #services .offering-card::after{display:none}
html[data-palette] #triple-ivy :is(.offering-heading h3,.button>span:first-child){min-width:0;overflow-wrap:anywhere}
html[data-palette] #triple-ivy :is(.consulting-action .button,.consultation-intro>.button,#services.offering-grid>.offering-card>a.button.text-button){display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;overflow-wrap:anywhere}
html[data-palette] #triple-ivy .consulting-disclosures{gap:16px;margin-top:24px}
html[data-palette] #triple-ivy .consulting-disclosures>details{border-radius:20px;border:1px solid var(--panel-edge);background:var(--panel-fill);box-shadow:var(--panel-shadow)}
html[data-palette] #triple-ivy .consulting-disclosures>details>summary{padding:24px 32px;gap:24px}
html[data-palette] #triple-ivy .disclosure-caption{margin-top:6px}

/* A clear starting point: invitation and action alongside the optional review. */
html[data-palette] #triple-ivy #consultation{display:block;margin:48px 0 0;padding:36px;border:1px solid var(--panel-edge);border-radius:28px;background:var(--panel-fill);box-shadow:var(--panel-shadow)}
html[data-palette] #triple-ivy .consultation-intro{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);grid-template-areas:"label options" "title options" "action options";gap:18px 48px;align-items:start;max-width:none;width:100%}
html[data-palette] #triple-ivy .consultation-intro>.eyebrow{grid-area:label;margin:0}
html[data-palette] #triple-ivy .consultation-intro>h3{grid-area:title;margin:0;max-width:22ch;text-wrap:pretty}
html[data-palette] #triple-ivy .consultation-intro>.button{grid-area:action;justify-self:start;justify-content:space-between;gap:28px;margin:6px 0 0;min-height:52px;padding:13px 18px;border-radius:14px;border:1px solid color-mix(in srgb,var(--color-ink) 20%,transparent);background:color-mix(in srgb,var(--brand-paper) 56%,transparent);box-shadow:inset 0 1px 0 var(--panel-edge)}
html[data-palette] #triple-ivy .consultation-options{grid-area:options;align-self:stretch;padding-left:40px;border-left:1px solid var(--panel-rule)}
html[data-palette] #triple-ivy .consultation-options>p{margin:0;max-width:52ch;text-wrap:pretty}
html[data-palette] #triple-ivy .consultation-options>.fee-terms{margin-top:22px;padding-top:18px;border-top:1px solid var(--panel-rule)}
html[data-palette] #triple-ivy .consulting-faq{margin-top:32px;padding:32px 36px;gap:40px;border-radius:28px;border:1px solid var(--panel-edge);background:var(--panel-fill);box-shadow:var(--panel-shadow)}
html[data-palette] #triple-ivy .faq-intro{padding:0;align-self:center}
html[data-palette] #triple-ivy .faq-intro>.eyebrow{margin:0 0 14px}
html[data-palette] #triple-ivy .faq-intro>h3{margin:0 0 14px}
html[data-palette] #triple-ivy .faq-intro>p:last-child{margin:0;max-width:27ch}
html[data-palette] #triple-ivy .faq-questions,
html[data-palette] #triple-ivy .faq-questions .service-detail{border-color:var(--panel-rule)}
html[data-palette] #triple-ivy .faq-questions summary{padding-block:20px;min-height:68px;gap:24px}

/* Compact quotation cards, with authors kept next to their words. */
html[data-palette] #triple-ivy .testimonials-section{margin-top:56px;padding-top:40px;border-top:1px solid var(--panel-rule)}
html[data-palette] #triple-ivy .testimonials-section>.section-header{margin:0 0 28px;padding:0}
html[data-palette] #triple-ivy .testimonials-section .section-title{margin:12px 0 0}
html[data-palette] #triple-ivy .testimonials-featured{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:24px;overflow:visible}
html[data-palette] #triple-ivy .testimonials-featured>.testimonial-story{padding:30px 32px;border:1px solid var(--panel-edge);border-radius:24px;background:var(--panel-fill);box-shadow:var(--panel-shadow)}
html[data-palette] #triple-ivy .testimonials-featured>.testimonial-story>summary{display:grid;grid-template-columns:minmax(0,1fr);gap:20px;min-height:0;height:auto;padding:0}
html[data-palette] #triple-ivy .testimonials-featured :is(.testimonial-category,.testimonial-excerpt,.testimonial-person){margin:0;min-height:0;max-width:none}
html[data-palette] #triple-ivy .testimonials-featured .testimonial-category{text-transform:none!important;padding-bottom:14px;border-bottom:1px solid var(--panel-rule)}
html[data-palette] #triple-ivy .testimonials-featured .testimonial-excerpt{padding:0;font-style:normal!important;text-wrap:pretty}
html[data-palette] #triple-ivy .testimonials-featured .testimonial-person{display:grid;gap:4px}
html[data-palette] #triple-ivy .testimonials-featured .testimonial-person>span{max-width:none}
html[data-palette] #triple-ivy .testimonials-featured .testimonial-toggle{margin:0;padding-top:14px;min-height:48px;border-color:var(--panel-rule);gap:16px}
html[data-palette] #triple-ivy .testimonials-featured .testimonial-toggle>span:last-child{width:36px;height:36px;flex:none;border:1px solid var(--panel-rule);box-shadow:none;background:color-mix(in srgb,var(--brand-paper) 46%,transparent)}
html[data-palette] #triple-ivy .testimonials-featured .testimonial-full{margin:0;padding:24px 0 0;border:0;background:none;box-shadow:none}
html[data-palette] #triple-ivy .testimonials-featured>.testimonial-story>summary:focus-visible{outline:2px solid var(--color-ink);outline-offset:8px;border-radius:6px}
html[data-palette] #triple-ivy .testimonials-more{margin-top:24px;border:1px solid var(--panel-edge);border-radius:20px;background:var(--panel-fill);box-shadow:var(--panel-shadow);overflow:hidden}
html[data-palette] #triple-ivy .testimonials-more>summary{padding:24px 32px}

/* The status region stays available for real validation and delivery feedback. */
html[data-palette] #contact-status:empty{display:none}
html[data-palette] #contact-status:not(:empty){margin-top:16px;padding:16px 18px;border:1px solid color-mix(in srgb,var(--color-ink) 20%,transparent);border-radius:12px;background:color-mix(in srgb,var(--brand-paper) 64%,transparent)}

/* A calm, structured finish instead of one crowded line of links. */
html[data-palette] .site-footer{padding-top:8px}
html[data-palette] .site-footer .footer-shell{padding:32px 36px 24px;border:1px solid var(--panel-edge);border-radius:28px;background:var(--panel-fill);box-shadow:var(--panel-shadow)}
html[data-palette] .site-footer .footer-top{display:flex;flex-wrap:wrap;align-items:center;gap:24px;padding:0 0 28px}
html[data-palette] .site-footer .footer-top>*{order:0;grid-area:auto;min-width:0}
html[data-palette] .site-footer .footer-brand{flex:1 1 auto;align-items:center;gap:16px;min-width:0;max-width:100%;min-height:0;margin:0}
html[data-palette] .site-footer .footer-brand>span{display:block;min-width:0;width:max-content;max-width:100%}
html[data-palette] .site-footer .footer-brand img{width:64px;height:80px;flex:none;object-fit:contain;mix-blend-mode:normal}
html[data-palette] .site-footer .footer-descriptor{margin-top:8px;max-width:none;color:var(--color-ink)}
html[data-palette] .site-footer .footer-policy-nav{display:flex;flex-wrap:wrap;gap:4px 24px;margin:0;min-width:0}
html[data-palette] .site-footer .footer-policy-nav a{display:flex;align-items:center;min-height:44px;color:var(--color-ink);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px}
html[data-palette] .site-footer .footer-policy-nav a:hover{text-decoration:underline}
html[data-palette] .site-footer .footer-return{display:flex;align-items:center;gap:12px;min-height:44px;margin:0;padding:0;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px;color:var(--color-ink)}
html[data-palette] .site-footer .footer-return>span{width:36px;height:36px;flex:none;border:1px solid var(--panel-rule);box-shadow:none;background:color-mix(in srgb,var(--brand-paper) 44%,transparent)}
html[data-palette] .site-footer .footer-bottom{display:grid;grid-template-columns:minmax(0,1fr);gap:8px;margin:0;padding:22px 0 0;border-top:1px solid var(--panel-rule);color:var(--color-ink)}

@media(max-width:1000px){
 html[data-palette] #triple-ivy .consulting-image-hero .section-hero-copy{width:570px}
 html[data-palette] #services.offering-grid>.offering-card{padding:26px}
 html[data-palette] #triple-ivy .consultation-intro{gap:18px 28px}
 html[data-palette] #triple-ivy .consultation-options{padding-left:28px}
 html[data-palette] .site-footer .footer-top{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px}
 html[data-palette] .site-footer .footer-brand{grid-column:1 / -1}
 html[data-palette] .site-footer .footer-return{grid-column:2;justify-self:start}
}
@media(max-width:760px){
 html[data-palette] #triple-ivy .consulting-image-hero{padding-block:32px}
 html[data-palette] #triple-ivy .consulting-image-hero .section-hero-copy{width:100%;padding:28px 24px;border-radius:24px}
 html[data-palette] #triple-ivy .consulting-card-top{margin-bottom:24px;padding-bottom:22px}
 html[data-palette] #triple-ivy .consulting-card-footer{margin-top:24px;padding-block:22px}
 html[data-palette] #triple-ivy .consulting-action{gap:16px}
 html[data-palette] #triple-ivy .consulting-action .button{width:100%}
 html[data-palette] #triple-ivy .section-hero-motto span{padding-inline:14px}
 html[data-palette] #triple-ivy>.section-body{padding-top:28px}
 html[data-palette] #services.offering-grid{grid-template-columns:minmax(0,1fr);grid-template-rows:none;gap:20px}
 html[data-palette] #services.offering-grid>.offering-card{grid-row:auto;grid-template-rows:auto;padding:24px;margin:0}
 html[data-palette] #services.offering-grid>.offering-card:nth-child(n+3){margin:0}
 html[data-palette] #services.offering-grid>.offering-card>.checked-list{grid-row:auto;grid-template-rows:auto}
 html[data-palette] #services .offering-heading{gap:14px}
 html[data-palette] #triple-ivy .consulting-disclosures>details>summary{padding:22px 24px}
 html[data-palette] #triple-ivy #consultation{margin-top:32px;padding:28px 24px;border-radius:24px}
 html[data-palette] #triple-ivy .consultation-intro{grid-template-columns:minmax(0,1fr);grid-template-areas:"label" "title" "options" "action";gap:20px}
 html[data-palette] #triple-ivy .consultation-intro>h3{max-width:none}
 html[data-palette] #triple-ivy .consultation-options{padding:20px 0 0;border-left:0;border-top:1px solid var(--panel-rule)}
 html[data-palette] #triple-ivy .consultation-options>.fee-terms{border:0;padding:0;margin-top:18px}
 html[data-palette] #triple-ivy .consultation-intro>.button{justify-self:stretch;margin:0}
 html[data-palette] #triple-ivy .consulting-faq{padding:28px 24px;gap:24px;border-radius:24px;grid-template-columns:minmax(0,1fr)}
 html[data-palette] #triple-ivy .testimonials-section{margin-top:36px;padding-top:32px}
 html[data-palette] #triple-ivy .testimonials-featured{grid-template-columns:minmax(0,1fr);gap:20px}
 html[data-palette] #triple-ivy .testimonials-featured>.testimonial-story{padding:24px}
 html[data-palette] #triple-ivy .testimonials-featured>.testimonial-story>summary{gap:18px}
 html[data-palette] #triple-ivy .testimonials-more>summary{padding:22px 24px}
 html[data-palette] .site-footer .footer-shell{padding:28px 24px 24px;border-radius:24px}
 html[data-palette] .site-footer .footer-top{grid-template-columns:minmax(0,1fr);gap:24px;padding-bottom:24px}
 html[data-palette] .site-footer .footer-brand{gap:14px}
 html[data-palette] .site-footer .footer-return{grid-column:auto}
 html[data-palette] .site-footer .footer-policy-nav{padding-top:20px;border-top:1px solid var(--panel-rule);gap:8px 20px}
}
@media(max-width:380px){
 html[data-palette] #triple-ivy .consulting-image-hero .section-hero-copy{padding-inline:20px}
 html[data-palette] #triple-ivy .section-hero-motto span{padding-inline:10px}
 html[data-palette] #services.offering-grid>.offering-card{padding-inline:20px}
 html[data-palette] .site-footer .footer-policy-nav{display:grid;grid-template-columns:minmax(0,1fr)}
}
@media(prefers-reduced-transparency:reduce),(prefers-contrast:more){
 html[data-palette] #triple-ivy :is(.section-hero-copy,.offering-card,.consultation-card,.consulting-faq,.testimonial-story,.testimonials-more,.consulting-disclosures>details),html[data-palette] .site-footer .footer-shell{background:var(--brand-paper)!important;backdrop-filter:none;-webkit-backdrop-filter:none;border-color:var(--panel-rule)}
}
@supports not (backdrop-filter:blur(1px)){
 html[data-palette] #triple-ivy .consulting-image-hero .section-hero-copy{background:var(--brand-paper)}
}

/* Align the closing panels and give each transition one shared gap. */
html[data-palette] :is(#shop,#contact,.site-footer){--closing-section-gap:clamp(40px,4.12vw,64px)}
html[data-palette] #shop{padding-block:var(--closing-section-gap)}
html[data-palette] #contact{padding-top:0;padding-bottom:var(--closing-section-gap)}
html[data-palette] #contact .contact-card{max-width:none;margin-inline:auto}
html[data-palette] .site-footer{padding-top:0}

/* Give phone readers and form fields the full card width. */
@media(max-width:600px){
 html[data-palette] #contact .contact-copy{grid-template-columns:minmax(0,1fr)}
 html[data-palette] #contact .contact-copy>p,html[data-palette] #contact .contact-copy>h2,html[data-palette] #contact .contact-copy>.contact-email{grid-column:1}
 html[data-palette] #contact .contact-logo-stage{grid-column:1;grid-row:5;position:relative;inset:auto;justify-self:center;width:140px;max-width:100%;height:176px;margin:28px 0 0}
 html[data-palette] #contact .contact-logo-sculpture{width:110px}
 html[data-palette] #contact .contact-logo-motion{bottom:0;right:-26px}
 html[data-palette] #contact .form-row{grid-template-columns:minmax(0,1fr);gap:0}
}

/* Lead with the invitation; supporting copy stays at the body text size. */
html[data-palette] #contact .contact-copy h2{margin-top:0}
@media(max-width:600px){html[data-palette] #contact .contact-logo-stage{grid-row:4}}

/* October 26 client notes, prepared for local review November 3. */
html[data-palette] body{--brand-paper:var(--client-paper);--color-cream:var(--client-paper)}
#biography .biography-graduation-collage{align-items:center}
#biography .biography-graduation-collage .graduation-group{grid-column:auto}
#biography .biography-graduation-collage .graduation-group img,
#biography .biography-graduation-collage .graduation-phd img{aspect-ratio:auto;object-fit:contain;object-position:center;transform:none}
#biography .biography-graduation-collage .graduation-gold img{aspect-ratio:auto}
html[data-palette] #speaking .speaking-portrait{max-width:640px}
html[data-palette] #speaking .speaking-photo-crop img{aspect-ratio:4/3;object-fit:contain;transform:none;filter:none}
html[data-palette] #triple-ivy .consulting-card-footer .section-hero-motto{text-align:left;width:100%;justify-content:flex-start}
.consulting-faq .payment-methods{margin-top:0;padding:0 0 24px;border:0}
.payment-methods>header{max-width:740px;margin-bottom:28px}
.payment-methods p{font-size:var(--reading-body);line-height:1.6}
.payment-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:24px}
.payment-card{width:100%;max-width:420px;justify-self:center;min-width:0;padding:28px 24px;background:color-mix(in srgb,var(--color-white) 65%,transparent);border:1px solid var(--color-hairline);border-radius:18px;text-align:center}
.payment-card h4{font:500 24px/1.3 var(--font-body);margin:0 0 8px}
.payment-card p{margin:0 0 20px;overflow-wrap:anywhere}
.payment-card>a:first-of-type{display:flex;align-items:center;justify-content:center;height:280px;background:white;border-radius:8px;overflow:hidden}
.payment-card img{display:block;width:100%;height:100%;object-fit:contain;max-width:280px}
.payment-download{display:inline-block;margin-top:18px;text-underline-offset:4px;font-size:var(--reading-label)}
@media(max-width:760px){.payment-grid{grid-template-columns:1fr}.payment-card{max-width:420px;width:100%;justify-self:center}}

/* Small icon-only social links in the shared header. */
html[data-palette] .site-header .header-socials{display:flex;align-items:center;gap:2px;flex:none}
html[data-palette] .header-socials a{display:flex;align-items:center;justify-content:center;width:36px;height:44px;color:var(--color-ink);border-radius:10px;text-decoration:none}
html[data-palette] .header-socials svg{display:block;width:19px;height:19px;flex:none}
html[data-palette] .header-socials a:hover{background:color-mix(in srgb,var(--brand-paper) 50%,transparent)}
@media(max-width:600px){html[data-palette] body .site-header{gap:4px}html[data-palette] .header-socials a{width:30px}html[data-palette] .header-socials svg{width:18px;height:18px}}

/* November 3 review: let the book title and introduction use the full column. */
html[data-palette] #book #book-title{max-width:none;text-wrap:normal}
html[data-palette] #book .book-introduction strong{max-width:none;text-wrap:normal}

/* Shared section geometry and frosted glass surfaces for the local review. */
html[data-palette] body {
  --section-max: 1280px;
  --section-gutter: 40px;
  --card-radius: 28px;
  --card-glass: linear-gradient(135deg,
    color-mix(in srgb, var(--color-white) 28%, transparent),
    color-mix(in srgb, var(--brand-paper) 10%, transparent));
  --card-edge: color-mix(in srgb, var(--color-white) 76%, transparent);
  --card-shadow: inset 0 1px 0 color-mix(in srgb, var(--color-white) 88%, transparent),
    inset 0 -1px 0 color-mix(in srgb, var(--color-white) 22%, transparent),
    0 18px 44px -28px color-mix(in srgb, var(--color-ink) 24%, transparent);
  --card-blur: blur(18px) saturate(125%);
}

html[data-palette] body :is(main .container, .site-footer .container,
  #home .hero-grid, #biography .biography-grid, #speaking .speaking-intro,
  #cv .cv-shell, #contact .contact-card, .site-header) {
  width: calc(100% - var(--section-gutter) * 2);
  max-width: var(--section-max);
  margin-inline: auto;
}
html[data-palette] body .site-header { left: 0; right: 0; }
html[data-palette] body #book { border-top: 0; }

/* Keep the book's segmented control snug around its two labels. */
html[data-palette] body #book .book-tabs {
  width: fit-content;
  max-width: 100%;
  justify-self: start;
  align-self: start;
}

/* Form fields share the cards' translucent material. */
html[data-palette] body :is(#contact .inquiry-panel, .shirt-inquiry-section)
  :is(input:not([type=hidden]):not([type=checkbox]):not([type=radio]), select, textarea) {
  background: var(--card-glass);
  color: var(--color-ink);
  border: 1px solid var(--card-edge);
  box-shadow: inset 0 1px 0 color-mix(in srgb, var(--color-white) 60%, transparent),
    inset 0 1px 5px color-mix(in srgb, var(--color-ink) 4%, transparent);
  backdrop-filter: var(--card-blur);
  -webkit-backdrop-filter: var(--card-blur);
}
html[data-palette] body :is(#contact .inquiry-panel, .shirt-inquiry-section)
  :is(input, select, textarea):focus-visible {
  outline: 2px solid var(--color-ink);
  outline-offset: 3px;
}
html[data-palette] body :is(#contact .inquiry-panel, .shirt-inquiry-section) option {
  background: var(--brand-paper);
  color: var(--color-ink);
}

html[data-palette] body :is(.site-header, #home .hero-grid,
  #biography .biography-grid, #book .book-grid, #praise,
  #speaking .speaking-intro, #speaking .media-library, #cv .cv-shell,
  #triple-ivy .section-hero-copy, #services.offering-grid > .offering-card,
  .consulting-disclosures > details, #triple-ivy #consultation,
  .consulting-faq, .testimonials-featured > .testimonial-story, .testimonials-more,
  .shop-preview > .container, #contact .contact-card, .site-footer .footer-shell,
  .shop-simple-page .shop-simple-card, .commerce-main .product-card,
  .shop-intro, .shop-closing, .shop-toolbar, .payment-card, .policy-preview) {
  background: var(--card-glass);
  border: 1px solid var(--card-edge);
  border-radius: var(--card-radius);
  box-shadow: var(--card-shadow);
  backdrop-filter: var(--card-blur);
  -webkit-backdrop-filter: var(--card-blur);
}

/* Inset surfaces use the same material, with smaller corners. */
html[data-palette] body :is(#home .hero-portrait figcaption,
  #home .hero-credentials, #speaking .media-viewer, #speaking .media-choice,
  .shop-client-gallery figure,
  .consulting-disclosures .service-catalog > .service-detail) {
  background: var(--card-glass);
  border: 1px solid var(--card-edge);
  border-radius: 16px;
  box-shadow: var(--card-shadow);
  backdrop-filter: var(--card-blur);
  -webkit-backdrop-filter: var(--card-blur);
}

/* Smoked glass gives the recordings their own cinematic setting. */
html[data-palette] #speaking .media-library {
  --card-glass: linear-gradient(135deg, rgba(25, 29, 30, .82), rgba(13, 17, 20, .72));
  --card-edge: rgba(255, 255, 255, .22);
  --card-shadow: inset 0 1px 0 rgba(255, 255, 255, .18),
    0 24px 56px -28px rgba(0, 0, 0, .48);
  --card-blur: blur(24px) saturate(115%);
}
html[data-palette] #speaking .media-library :is(.media-viewer, .media-choice) {
  --card-glass: linear-gradient(135deg, rgba(255, 255, 255, .09), rgba(255, 255, 255, .025));
  --card-shadow: inset 0 1px 0 rgba(255, 255, 255, .12), 0 8px 24px -18px rgba(0, 0, 0, .4);
}
html[data-palette] #speaking .media-library,
html[data-palette] #speaking .media-library :is(h3, h4, p, a, button, span, strong) {
  color: var(--color-white);
}
html[data-palette] #speaking .media-library #media-description {
  color: var(--color-white);
}
html[data-palette] #speaking .media-choice[aria-pressed=true] {
  border-color: rgba(255, 255, 255, .6);
  box-shadow: inset 3px 0 0 var(--color-white), var(--card-shadow);
}
html[data-palette] #speaking .media-library :focus-visible {
  outline: 2px solid var(--color-white);
  outline-offset: 4px;
}

@media (max-width: 1050px) {
  html[data-palette] body { --section-gutter: 24px; }
}

/* Keep navigation readable while scrolling over the dark recording library. */
html[data-palette] body .site-header {
  --card-glass: linear-gradient(125deg,
    color-mix(in srgb, var(--color-white) 74%, transparent),
    color-mix(in srgb, var(--color-white) 66%, transparent));
}
@media (max-width: 760px) {
  html[data-palette] body { --section-gutter: 16px; --card-radius: 24px; }
}
@media (max-width: 380px) {
  html[data-palette] body { --section-gutter: 12px; }
}
@media (prefers-reduced-transparency: reduce), (prefers-contrast: more) {
  html[data-palette] body {
    --card-glass: var(--brand-paper);
    --card-blur: none;
    --card-edge: color-mix(in srgb, var(--color-ink) 35%, var(--brand-paper));
  }
}
@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {
  html[data-palette] body { --card-glass: var(--brand-paper); }
}
@media (prefers-reduced-transparency: reduce), (prefers-contrast: more) {
  html[data-palette] #speaking .media-library,
  html[data-palette] #speaking .media-library :is(.media-viewer, .media-choice) {
    --card-glass: var(--color-cinema-fallback);
    --card-blur: none;
  }
}
@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {
  html[data-palette] #speaking .media-library { --card-glass: var(--color-cinema-fallback); }
}

@media (prefers-reduced-transparency: reduce), (prefers-contrast: more) {
  html[data-palette] body .site-header { --card-glass: var(--brand-paper); }
}

/* Expanded disclosures retain their enclosing glass instead of opaque fills. */
html[data-palette] body #triple-ivy .consulting-disclosures .service-catalog .service-detail > summary,
html[data-palette] body :is(.service-detail-content, .book-story-content,
  .testimonial-full, .testimonials-archive, .guide-chapter > ol) {
  background: transparent;
}
html[data-palette] body #triple-ivy .consulting-disclosures .service-catalog .service-detail > summary:hover {
  background: color-mix(in srgb, var(--color-white) 12%, transparent);
}

/* A slightly stronger tint keeps the compact portrait caption readable. */
html[data-palette] body #home .hero-portrait figcaption {
  --card-glass: linear-gradient(135deg,
    color-mix(in srgb, var(--color-white) 40%, transparent),
    color-mix(in srgb, var(--brand-paper) 24%, transparent));
  --card-blur: blur(8px) saturate(125%);
}
@media (prefers-reduced-transparency: reduce), (prefers-contrast: more) {
  html[data-palette] body #home .hero-portrait figcaption { --card-glass: var(--brand-paper); --card-blur: none; }
}

/* Actions share the translucency of the affiliations glass banner. */
html[data-palette] body {
  --control-glass: linear-gradient(135deg,
    color-mix(in srgb, var(--color-white) 28%, transparent),
    color-mix(in srgb, var(--brand-paper) 10%, transparent));
  --control-edge: color-mix(in srgb, var(--color-white) 76%, transparent);
  --control-shadow: inset 0 1px 0 var(--color-white),
    0 8px 20px -16px var(--color-ink);
}
:is(html[data-palette] body :is(.button, button:not(#video-load, .media-choice), #cv .cv-open-control, #speaking .media-choice-icon, #speaking .play-disc), html[data-palette] body :is(#home, #book, #speaking, #cv, #triple-ivy, #contact, #shop, .site-header, .site-footer, .commerce-main, dialog) :is(.button, button:not(#video-load, .media-choice), .cv-open-control, .media-choice-icon, .play-disc)) {
  background: var(--control-glass) !important;
  color: var(--color-ink) !important;
  border: 1px solid var(--control-edge) !important;
  border-radius: 999px !important;
  box-shadow: var(--control-shadow) !important;
  backdrop-filter: blur(18px) saturate(125%) !important;
  -webkit-backdrop-filter: blur(18px) saturate(125%) !important;
  text-shadow: none;
}
:is(html[data-palette] body :is(.button, button:not(#video-load, .media-choice), #cv .cv-open-control, #speaking .media-choice-icon, #speaking .play-disc), html[data-palette] body :is(#home, #book, #speaking, #cv, #triple-ivy, #contact, #shop, .site-header, .site-footer, .commerce-main, dialog) :is(.button, button:not(#video-load, .media-choice), .cv-open-control, .media-choice-icon, .play-disc)) :is(span, strong, svg) { color: inherit !important; }
/* Recording selectors retain the cinematic glass material. */
html[data-palette] body #speaking button.media-choice:not(#video-load) { border-radius: 18px !important; }
:is(html[data-palette] body :is(.button, button:not(#video-load, .media-choice), #cv .cv-open-control, #speaking .media-choice-icon, #speaking .play-disc), html[data-palette] body :is(#home, #book, #speaking, #cv, #triple-ivy, #contact, #shop, .site-header, .site-footer, .commerce-main, dialog) :is(.button, button:not(#video-load, .media-choice), .cv-open-control, .media-choice-icon, .play-disc)):hover {
  background: linear-gradient(135deg, color-mix(in srgb, var(--color-white) 38%, transparent), color-mix(in srgb, var(--brand-paper) 18%, transparent)) !important;
  color: var(--color-ink) !important;
}
:is(html[data-palette] body :is(.button, button:not(#video-load, .media-choice), #cv .cv-open-control, #speaking .media-choice-icon, #speaking .play-disc), html[data-palette] body :is(#home, #book, #speaking, #cv, #triple-ivy, #contact, #shop, .site-header, .site-footer, .commerce-main, dialog) :is(.button, button:not(#video-load, .media-choice), .cv-open-control, .media-choice-icon, .play-disc)):is(:active, [aria-pressed=true], [aria-selected=true]) {
  background: var(--control-glass) !important;
  box-shadow: inset 0 1px 0 var(--color-white), inset 0 0 0 1px color-mix(in srgb, var(--color-ink) 18%, transparent) !important;
}
:is(html[data-palette] body :is(.button, button:not(#video-load, .media-choice), #cv .cv-open-control, #speaking .media-choice-icon, #speaking .play-disc), html[data-palette] body :is(#home, #book, #speaking, #cv, #triple-ivy, #contact, #shop, .site-header, .site-footer, .commerce-main, dialog) :is(.button, button:not(#video-load, .media-choice), .cv-open-control, .media-choice-icon, .play-disc)):focus-visible { outline: 2px solid var(--color-ink); outline-offset: 3px; }
@media (prefers-reduced-transparency: reduce), (prefers-contrast: more) {
:is(html[data-palette] body :is(.button, button:not(#video-load, .media-choice), #cv .cv-open-control, #speaking .media-choice-icon, #speaking .play-disc), html[data-palette] body :is(#home, #book, #speaking, #cv, #triple-ivy, #contact, #shop, .site-header, .site-footer, .commerce-main, dialog) :is(.button, button:not(#video-load, .media-choice), .cv-open-control, .media-choice-icon, .play-disc)) { background: var(--brand-paper) !important; backdrop-filter: none !important; -webkit-backdrop-filter: none !important; }
}

/* Preserve readable light labels over the cinematic recording background. */
html[data-palette] body #speaking .media-library :is(.button, button:not(#video-load, .media-choice), .media-choice-icon, .play-disc) { color: var(--color-white) !important; }
@media (prefers-reduced-transparency: reduce), (prefers-contrast: more) {
  html[data-palette] body #speaking .media-library :is(.button, button:not(#video-load, .media-choice), .media-choice-icon, .play-disc) { color: var(--color-ink) !important; }
}

/* Mobile navigation uses a single baseline and consistent touch targets. */
@media (max-width: 1100px) {
  html[data-palette] body .site-header {
    height: 64px;
    padding: 9px 10px;
    gap: 4px;
    justify-content: flex-start;
    border-radius: 22px;
  }
  html[data-palette] body .site-header .wordmark {
    flex: 0 0 44px;
    min-width: 44px;
    min-height: 44px;
    height: 44px;
    align-self: center;
    align-items: center;
    padding: 0;
  }
  html[data-palette] body .site-header .header-quill-sculpture {
    width: 36px;
    height: 44px;
    margin: 0;
    animation: none;
    transform: none;
  }
  html[data-palette] body .site-header .nav-contact {
    margin-left: auto;
    min-height: 44px;
    height: 44px;
    padding: 0 16px;
    font-size: 18px;
    line-height: 1;
    flex-shrink: 0;
  }
  html[data-palette] body .site-header .header-socials { gap: 0; }
  html[data-palette] body .site-header .header-socials a {
    width: 44px;
    height: 44px;
    border-radius: 50%;
  }
  html[data-palette] body .site-header .header-socials svg { width: 18px; height: 18px; }
  html[data-palette] body .site-header #menu-toggle {
    flex: 0 0 44px;
    width: 44px;
    min-width: 44px;
    height: 44px;
    min-height: 44px;
    padding: 0;
    gap: 0;
  }
  html[data-palette] body .site-header .menu-icon {
    flex: none;
    width: 18px;
    height: 14px;
    border: 0;
  }
  html[data-palette] body .site-header .menu-icon::before,
  html[data-palette] body .site-header .menu-icon::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: 3px;
    height: 1.5px;
    border: 0;
    border-radius: 2px;
    background: currentColor;
    transform: none;
  }
  html[data-palette] body .site-header .menu-icon::after { top: 9px; }
  html[data-palette] body .site-header #menu-toggle[aria-expanded=true] .menu-icon::before { top: 6px; transform: rotate(45deg); }
  html[data-palette] body .site-header #menu-toggle[aria-expanded=true] .menu-icon::after { top: 6px; transform: rotate(-45deg); }
  html[data-palette] body .site-header nav { top: calc(100% + 8px); padding: 10px; border-radius: 20px; }
  html[data-palette] body .site-header nav a { min-height: 48px; padding: 12px 16px; font-size: 20px; line-height: 1.2; }
}
@media (max-width: 760px) {
  /* The photo and caption form one continuous card, with only outer corners. */
  html[data-palette] body #home .hero-portrait { border-radius: 20px; }
  html[data-palette] body #home .hero-portrait figcaption {
    display: block;
    position: static;
    width: 100%;
    max-width: 100%;
    margin: 0;
    padding: 18px 20px 20px;
    border: 0;
    border-top: 1px solid var(--card-edge);
    border-radius: 0;
    box-shadow: none;
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
    font-size: clamp(22px, 5.5vw, 28px);
    line-height: 1.2;
  }
  html[data-palette] body #home .hero-portrait figcaption .portrait-name { font-size: inherit !important; line-height: inherit !important; }
  html[data-palette] body #home .hero-portrait figcaption .portrait-roles { margin-top: 8px; font-size: 17px !important; line-height: 1.5 !important; }
}
@media (max-width: 380px) {
  html[data-palette] body .site-header .nav-contact { padding-inline: 10px; font-size: 17px; }
}
