/* Shared team, certification, and responsive hero presentation. */
.hero-copy .hero-intro{margin-bottom:14px}.hero-supporting{max-width:680px;margin:0 0 32px;color:var(--muted,var(--ink2,#667085));font-size:.98rem;line-height:1.55}.hero-supporting+.hero-actions{margin-top:0}
.team-section{background:var(--paper,var(--white,#fff))}.team-heading{align-items:end}.team-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:clamp(18px,3vw,30px)}.team-card{min-width:0;overflow:hidden;background:var(--white,#fff);border:1px solid var(--line,rgba(16,24,40,.14));border-radius:var(--radius,26px);box-shadow:var(--shadow-sm,var(--shadow,0 12px 34px rgba(16,24,40,.1)))}.member-portrait{aspect-ratio:16/9;display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;overflow:hidden;color:#fff;background:linear-gradient(145deg,var(--ink,#101828),var(--blue-dark,var(--orange,#1749b4)))}.member-portrait:before,.member-portrait:after{content:"";position:absolute;border:1px solid rgba(255,255,255,.28);border-radius:50%}.member-portrait:before{width:48%;aspect-ratio:1;top:-34%;right:-5%}.member-portrait:after{width:34%;aspect-ratio:1;bottom:-28%;left:8%}.member-portrait-carter{background:linear-gradient(145deg,#153c5b,#247c78)}.member-portrait>span{position:relative;z-index:1;font-size:clamp(3.4rem,8vw,6.6rem);font-weight:800;letter-spacing:-.09em;line-height:1}.member-portrait>small{position:relative;z-index:1;margin-top:9px;font-size:.64rem;font-weight:800;letter-spacing:.2em;text-transform:uppercase}.member-content{padding:clamp(24px,4vw,42px)}.member-role{margin:0 0 12px;color:var(--blue,var(--orange,var(--coral,#2563eb)));font-size:.7rem;font-weight:850;letter-spacing:.1em;line-height:1.4;text-transform:uppercase}.member-content h3{margin:0 0 20px;font-size:clamp(2rem,4vw,3.3rem)}.member-content>p:not(.member-role){margin-bottom:26px;color:var(--muted,var(--ink2,#667085))}
.certifications-section{background:var(--cloud,var(--cream,var(--blue-light,#f5f5f7)));border-block:1px solid var(--line,rgba(16,24,40,.14))}.certifications-shell{display:grid;grid-template-columns:minmax(0,1fr);gap:42px;align-items:start}.certifications-copy{position:static}.certifications-copy h2{margin:0 0 25px;font-size:clamp(2.6rem,5vw,4.8rem)}.certifications-copy>p:not(.eyebrow){max-width:480px;margin-bottom:25px;color:var(--muted,var(--ink2,#667085))}.certification-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:12px}.certification-card{display:flex;min-width:0;align-items:center;gap:15px;padding:16px;background:var(--white,#fff);border:1px solid var(--line,rgba(16,24,40,.14));border-radius:18px}.certification-mark{display:flex;flex:0 0 58px;width:58px;height:58px;align-items:center;justify-content:center;color:#fff;background:var(--ink,#101828);border:4px solid #fff;border-radius:50%;box-shadow:0 0 0 1px var(--line,rgba(16,24,40,.14));font-size:.76rem;font-weight:850;letter-spacing:-.03em}.certification-card:nth-child(3n+2) .certification-mark{background:var(--blue-dark,var(--orange,#1749b4))}.certification-card:nth-child(3n) .certification-mark{background:#247c78}.certification-mark>small{margin-left:2px;font-size:.48rem;letter-spacing:0}.certification-card p{min-width:0;margin:0;line-height:1.3}.certification-card strong,.certification-card p>small{display:block}.certification-card strong{font-size:.78rem;letter-spacing:-.012em}.certification-card p>small{margin-top:5px;color:var(--muted,var(--ink2,#667085));font-size:.62rem}
@media(max-width:639px){.hero h1{max-width:100%;font-size:clamp(2rem,9.5vw,3.55rem);line-height:1}.hero-intro{font-size:1rem}.hero-supporting{font-size:.92rem}.section-heading h2,.product-copy h2,.team-heading h2,.certifications-copy h2,.contact-shell h2{font-size:clamp(2.2rem,10vw,3.25rem)}.manifesto-section blockquote{font-size:clamp(2.15rem,10vw,3.4rem)}}
@media(min-width:640px){.team-grid,.certification-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:640px) and (max-width:960px){.hero h1{font-size:clamp(3.2rem,6.5vw,4.7rem)}}
@media(min-width:960px){.member-role{min-height:2.8em}.member-content>p:not(.member-role){min-height:5.1em}.certifications-shell{grid-template-columns:minmax(260px,.72fr) minmax(0,1.28fr);gap:clamp(46px,8vw,100px)}.certifications-copy{position:sticky;top:116px}}

/* Mobile-first experience baseline, informed by Apple's hierarchy and legibility guidance. */
html{scroll-padding-top:88px}
.button,.menu a{min-height:44px}.text-link{min-height:44px;align-items:center}:where(.button,.menu a,.text-link):focus-visible{outline:3px solid var(--blue,var(--orange,var(--coral,#2563eb)));outline-offset:4px}
.team-heading{display:block;align-items:initial;margin-bottom:clamp(40px,8vw,72px)}.team-heading>div{max-width:56rem}.team-heading h2{max-width:16ch;margin:0;font-size:clamp(2.35rem,10vw,3.4rem);line-height:1.02;letter-spacing:-.04em;text-wrap:balance;overflow-wrap:normal}.team-heading>p{max-width:42rem;margin:clamp(18px,4vw,28px) 0 0;color:var(--muted,var(--ink2,#667085));font-size:clamp(1rem,2.5vw,1.125rem);line-height:1.6}
.hero{min-height:0;padding:68px 0 0}.hero .hero-grid{min-height:0;grid-template-columns:minmax(0,1fr);gap:0;align-items:start;padding:54px 0 64px}.hero .hero-copy{max-width:1040px;min-width:0}.hero h1{max-width:13ch;margin:18px 0 24px;font-size:clamp(2.4rem,9.5vw,3.55rem);line-height:.98;text-wrap:balance;overflow-wrap:normal}.hero .hero-intro{max-width:760px;margin:0 0 14px;font-size:1rem;line-height:1.55}.hero-supporting{max-width:720px;margin:0 0 26px;font-size:.94rem;line-height:1.55}.hero-actions{display:flex;align-items:stretch;flex-direction:column;gap:10px;margin-top:0}.hero-actions .button{width:100%}
@media(min-width:480px){.hero-actions{align-items:center;flex-direction:row}.hero-actions .button{width:auto}}
@media(min-width:640px){html{scroll-padding-top:96px}.team-heading h2{font-size:clamp(3rem,6vw,4.5rem)}.hero{padding-top:76px}.hero .hero-grid{padding:68px 0 76px}.hero h1{font-size:clamp(3.4rem,7vw,5.1rem)}.hero .hero-intro{font-size:1.08rem}.hero-supporting{font-size:1rem}}
@media(min-width:960px){.team-heading h2{font-size:clamp(3.75rem,5vw,4.75rem)}.hero .hero-grid{padding:72px 0 84px}.hero h1{font-size:clamp(4.1rem,5.2vw,5.8rem)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Media Library and HTTPS credential icons share the same stable mark frame. */
.certification-mark {
	position: relative;
	overflow: hidden;
}

.certification-mark__fallback {
	display: flex;
	width: 100%;
	height: 100%;
	align-items: center;
	justify-content: center;
	padding: 4px;
	line-height: 1;
	text-align: center;
}

.certification-mark.has-icon img {
	position: absolute;
	inset: 0;
	z-index: 1;
	display: block;
	width: 100%;
	height: 100%;
	padding: 3px;
	background: #ffffff;
	border-radius: inherit;
	object-fit: contain;
}

.certification-mark.has-icon.is-broken img {
	display: none;
}

.certification-card strong a {
	display: inline-flex;
	min-height: 44px;
	align-items: center;
	text-decoration: underline;
	text-decoration-thickness: 1.5px;
	text-underline-offset: 4px;
}
